Skip to content
v2.273.0

Experimental

@aws-cdk/aws-ec2-alpha is an experimental (alpha) package: its API may change in any release, without a major version bump.

NatGatewayOptions Struct ​

Options to define a NAT gateway.

Example ​

ts
const stack = new Stack();
const myVpc = new VpcV2(this, 'Vpc');
const routeTable = new RouteTable(this, 'RouteTable', {
  vpc: myVpc,
});
const subnet = new SubnetV2(this, 'Subnet', {
  vpc: myVpc,
  availabilityZone: 'eu-west-2a',
  ipv4CidrBlock: new IpCidr('10.0.0.0/24'),
  subnetType: SubnetType.PUBLIC });

myVpc.addInternetGateway();
myVpc.addNatGateway({
  subnet: subnet,
  connectivityType: NatConnectivityType.PUBLIC,
});

Properties ​

allocationIdstringallocation_idstrallocationIdStringAllocationIdstringAllocationId*string= attr.allocationID of a new Elast…#
AllocationID of Elastic IP address that's associated with the NAT gateway.

This property is required for a public NAT gateway and cannot be specified with a private NAT gateway.

default

Default: attr.allocationID of a new Elastic IP created by default //TODO: ADD L2 for elastic ip

connectivityTypeNatConnectivityTypeconnectivity_typeNatConnectivityTypeconnectivityTypeNatConnectivityTypeConnectivityTypeNatConnectivityTypeConnectivityTypeNatConnectivityType= NatConnectivityType.Public#
Indicates whether the NAT gateway supports public or private connectivity.
maxDrainDurationDurationmax_drain_durationDurationmaxDrainDurationDurationMaxDrainDurationDurationMaxDrainDurationDuration= Duration.seconds(350)#
The maximum amount of time to wait before forcibly releasing the IP addresses if connections are still in progress.
natGatewayNamestringnat_gateway_namestrnatGatewayNameStringNatGatewayNamestringNatGatewayName*string= NATGW provisioned without any na…#
The resource name of the NAT gateway.
default

Default: NATGW provisioned without any name

privateIpAddressstringprivate_ip_addressstrprivateIpAddressStringPrivateIpAddressstringPrivateIpAddress*string= If you don't provide an address,…#
The private IPv4 address to assign to the NAT gateway.
default

Default: If you don't provide an address, a private IPv4 address will be automatically assigned.

secondaryAllocationIdsstring[]secondary_allocation_idstyping.List[str]secondaryAllocationIdsList<String>SecondaryAllocationIdsstring[]SecondaryAllocationIds*[]*string= no secondary allocation IDs atta…#
Secondary EIP allocation IDs.
default

Default: no secondary allocation IDs attached to NATGW

secondaryPrivateIpAddressCountnumbersecondary_private_ip_address_countint | floatsecondaryPrivateIpAddressCountNumberSecondaryPrivateIpAddressCountdoubleSecondaryPrivateIpAddressCount*float64= no secondary allocation IDs asso…#
The number of secondary private IPv4 addresses you want to assign to the NAT gateway.

SecondaryPrivateIpAddressCount and SecondaryPrivateIpAddresses cannot be set at the same time.

default

Default: no secondary allocation IDs associated with NATGW

secondaryPrivateIpAddressesstring[]secondary_private_ip_addressestyping.List[str]secondaryPrivateIpAddressesList<String>SecondaryPrivateIpAddressesstring[]SecondaryPrivateIpAddresses*[]*string= no secondary private IpAddresses…#
Secondary private IPv4 addresses.

SecondaryPrivateIpAddressCount and SecondaryPrivateIpAddresses cannot be set at the same time.

default

Default: no secondary private IpAddresses associated with NATGW

subnetISubnetV2subnetISubnetV2subnetISubnetV2SubnetISubnetV2SubnetISubnetV2required#
The subnet in which the NAT gateway is located.