EC2 / Client / unassign_private_nat_gateway_address

unassign_private_nat_gateway_address#

EC2.Client.unassign_private_nat_gateway_address(**kwargs)#

Unassigns secondary private IPv4 addresses from a private NAT gateway. You cannot unassign your primary private IP. For more information, see Edit secondary IP address associations in the Amazon VPC User Guide.

While unassigning is in progress, you cannot assign/unassign additional IP addresses while the connections are being drained. You are, however, allowed to delete the NAT gateway.

A private IP address will only be released at the end of MaxDrainDurationSeconds. The private IP addresses stay associated and support the existing connections, but do not support any new connections (new connections are distributed across the remaining assigned private IP address). After the existing connections drain out, the private IP addresses are released.

See also: AWS API Documentation

Request Syntax

response = client.unassign_private_nat_gateway_address(
    NatGatewayId='string',
    PrivateIpAddresses=[
        'string',
    ],
    MaxDrainDurationSeconds=123,
    DryRun=True|False
)
Parameters:
  • NatGatewayId (string) –

    [REQUIRED]

    The ID of the NAT gateway.

  • PrivateIpAddresses (list) –

    [REQUIRED]

    The private IPv4 addresses you want to unassign.

    • (string) –

  • MaxDrainDurationSeconds (integer) – The maximum amount of time to wait (in seconds) before forcibly releasing the IP addresses if connections are still in progress. Default value is 350 seconds.

  • DryRun (boolean) – Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

Return type:

dict

Returns:

Response Syntax

{
    'NatGatewayId': 'string',
    'NatGatewayAddresses': [
        {
            'AllocationId': 'string',
            'NetworkInterfaceId': 'string',
            'PrivateIp': 'string',
            'PublicIp': 'string',
            'AssociationId': 'string',
            'IsPrimary': True|False,
            'FailureMessage': 'string',
            'Status': 'assigning'|'unassigning'|'associating'|'disassociating'|'succeeded'|'failed'
        },
    ]
}

Response Structure

  • (dict) –

    • NatGatewayId (string) –

      The ID of the NAT gateway.

    • NatGatewayAddresses (list) –

      Information about the NAT gateway IP addresses.

      • (dict) –

        Describes the IP addresses and network interface associated with a NAT gateway.

        • AllocationId (string) –

          [Public NAT gateway only] The allocation ID of the Elastic IP address that’s associated with the NAT gateway.

        • NetworkInterfaceId (string) –

          The ID of the network interface associated with the NAT gateway.

        • PrivateIp (string) –

          The private IP address associated with the NAT gateway.

        • PublicIp (string) –

          [Public NAT gateway only] The Elastic IP address associated with the NAT gateway.

        • AssociationId (string) –

          [Public NAT gateway only] The association ID of the Elastic IP address that’s associated with the NAT gateway.

        • IsPrimary (boolean) –

          Defines if the IP address is the primary address.

        • FailureMessage (string) –

          The address failure message.

        • Status (string) –

          The address status.