# RegionalNatGatewayProviderProps

Properties for a Regional NAT Gateway Provider.

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

Extends: RegionalNatGatewayProviderProps
Used as props by: RegionalNatGatewayProvider

- Source: [`aws-ec2/lib/nat.ts`](https://github.com/aws/aws-cdk/blob/v2.274.0/packages/aws-cdk-lib/aws-ec2/lib/nat.ts#L228)
- Type last changed: v2.272.0 · 30 Sep 2026

## Example

```ts
const eip = new ec2.CfnEIP(this, 'NatEip');

new ec2.Vpc(this, 'Vpc1', {
  natGatewayProvider: ec2.NatProvider.regionalGateway({
    eip,
  }),
});

new ec2.Vpc(this, 'Vpc2', {
  natGatewayProvider: ec2.NatProvider.regionalGateway({
    allocationId: eip.attrAllocationId,
  }),
});
```

## Properties

- `allocationId`: string — The allocation ID of the Elastic IP address to use for this NAT gateway.

  **Default:** A new EIP is automatically allocated

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

- `availabilityZoneAddresses`: [AvailabilityZoneAddress](/cdk/api/v2/docs/aws-cdk-lib.aws_ec2.AvailabilityZoneAddress.html)[] — Specifies which Availability Zones you want the NAT gateway to support and the Elastic IP addresses to use in each AZ.

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

  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.

- `eip`: [IEIPRef](/cdk/api/v2/docs/aws-cdk-lib.interfaces.aws_ec2.IEIPRef.html) — Reference to an existing EIP to use for this NAT gateway.

  **Default:** A new EIP is automatically allocated

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

- `maxDrainDuration`: [Duration](/cdk/api/v2/docs/aws-cdk-lib.Duration.html) = Duration.seconds(350) — Maximum amount of time to wait before forcibly releasing IP addresses if connections are still in progress.
