Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 4.0

Introduction:

Currently on the private gateway there is no way to configure the Source NAT.

With this feature we can enable the source NAT service  on the VPC private gateway.

Use Case:

Users might want to deploy multiple VPCs (with the same super CIDR) and/or guest Tier CIDR. So, there could be a possibility that multiple guest VM (from different VPCs) having the same IP need to reach a enterprise DC via the Private GW.

In these cases, NAT service is needed on the private GW.

Bug Reference: CLOUDSTACK-1828

Design:

Source NAT on private gateway can be enabled while adding private gateway. To enable source nat user can pass  sourcenatsupported=true

parameter to the createPrivateGateway API.  sourcenatsupported is not passed then source nat is not set on the private gateway.

It is an optional argument to API.

If  Source After enabling source NAT on private gateway interface is enabled then guest , VMs in VPC reaches to enterprise network via private gateway ip address by NATing.Source NAT private gateway can

be disabled. On disable the the guest VM traffic will not be NATed.On deletion of private gateway deletes source NAT rules specific to private gateway get deleted.

APIs:

Existing API changes:

API Name

New parameter Parameters

Value Response

enableSourceNatOnPrivateGw

privategatewayid

True/False

createPrivateGateway

sourcenatsupported(optional)

true/false

disableSourceNatOnPrivateGw

privategatewayid

True/False

DB Changes:

Table: vpc_gateway private_ip_addres

new column:   type           default value

Sourcesource_nat     nat       boolean       0

Back end script changes:

When * * user enables source NAT on the private gateway the below iptables rules get configured on the VR.

...

iptables -t NAT -A POSTROUTING -o eth3  -j SNAT --to-source 10.147.52.108

UI Changes:

The current private gateway configuration page needs a check box 'Set Source NAT' to enable/disable source NAT on private gateway

Supported hypervisors:

Xenserver

KVM

VmWare

Upgrade Changes:

No upgrade changes are needed.

To get source nat on existing private gateways, user need to delete and create with source NAT set.