Interface RegionalNatGatewayProviderProps

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
RegionalNatGatewayProviderProps.Jsii$Proxy

@Generated(value="jsii-pacmak/1.140.0 (build 79fd58c)", date="2026-09-30T11:04:50.584Z") @Stability(Stable) public interface RegionalNatGatewayProviderProps extends software.amazon.jsii.JsiiSerializable
Properties for a Regional NAT Gateway Provider.

Regional NAT Gateways provide automatic multi-AZ redundancy with a single gateway that scales across availability zones.

Example:

 CfnEIP eip = new CfnEIP(this, "NatEip");
 Vpc.Builder.create(this, "Vpc1")
         .natGatewayProvider(NatProvider.regionalGateway(RegionalNatGatewayProviderProps.builder()
                 .eip(eip)
                 .build()))
         .build();
 Vpc.Builder.create(this, "Vpc2")
         .natGatewayProvider(NatProvider.regionalGateway(RegionalNatGatewayProviderProps.builder()
                 .allocationId(eip.getAttrAllocationId())
                 .build()))
         .build();
 
  • Method Details

    • getAllocationId

      @Stability(Stable) @Nullable default String getAllocationId()
      The allocation ID of the Elastic IP address to use for this NAT gateway.

      Cannot be specified together with eip. Ignored when availabilityZoneAddresses is specified.

      Default: - A new EIP is automatically allocated

    • getAvailabilityZoneAddresses

      @Stability(Stable) @Nullable default List<AvailabilityZoneAddress> getAvailabilityZoneAddresses()
      Specifies which Availability Zones you want the NAT gateway to support and the Elastic IP addresses to use in each AZ.

      When specified, allocationId and eip are ignored. This enables manual mode for Regional NAT Gateway where you control EIP allocation per AZ.

      In manual mode the gateway only serves the listed Availability Zones and does not expand to other zones automatically, so every Availability Zone that contains a private subnet routed through this gateway must be listed. When the zone names are known at synthesis time, a private subnet in an unlisted zone is rejected with an error. Entries that use availabilityZoneId or unresolved tokens cannot be checked and are assumed to be correct.

      Default: - Automatic mode: AWS manages AZ coverage and EIP allocation

    • getEip

      @Stability(Stable) @Nullable default IEIPRef getEip()
      Reference to an existing EIP to use for this NAT gateway.

      Cannot be specified together with allocationId. Ignored when availabilityZoneAddresses is specified.

      Default: - A new EIP is automatically allocated

    • getMaxDrainDuration

      @Stability(Stable) @Nullable default Duration getMaxDrainDuration()
      Maximum amount of time to wait before forcibly releasing IP addresses if connections are still in progress.

      Default: Duration.seconds(350)

    • builder

      @Stability(Stable) static RegionalNatGatewayProviderProps.Builder builder()
      Returns:
      a RegionalNatGatewayProviderProps.Builder of RegionalNatGatewayProviderProps