NetworkManager / Client / create_connect_attachment

create_connect_attachment

NetworkManager.Client.create_connect_attachment(**kwargs)

Creates a core network Connect attachment from a specified core network attachment.

A core network Connect attachment is a GRE-based tunnel attachment that you can use to establish a connection between a core network and an appliance. A core network Connect attachment uses an existing VPC attachment as the underlying transport mechanism.

See also: AWS API Documentation

Request Syntax

response = client.create_connect_attachment(
    CoreNetworkId='string',
    EdgeLocation='string',
    TransportAttachmentId='string',
    RoutingPolicyLabel='string',
    NatGatewaySupport='ENABLE'|'DISABLE',
    NatGatewayRules=[
        {
            'RuleNumber': 123,
            'MatchSourceCidr': 'string',
            'NatCidr': 'string'
        },
    ],
    Options={
        'Protocol': 'GRE'|'NO_ENCAP'
    },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    ClientToken='string'
)
Parameters:
  • CoreNetworkId (string) –

    [REQUIRED]

    The ID of a core network where you want to create the attachment.

  • EdgeLocation (string) –

    [REQUIRED]

    The Region where the edge is located.

  • TransportAttachmentId (string) –

    [REQUIRED]

    The ID of the attachment between the two connections.

  • RoutingPolicyLabel (string) – The routing policy label to apply to the Connect attachment for traffic routing decisions.

  • NatGatewaySupport (string) – Specifies whether to enable NAT gateway support on the Connect attachment. NAT is supported only on Connect attachments that use the GRE tunnel protocol. Tunnel-less Connect attachments aren’t supported. To enable NAT gateway support, you must also specify at least one NAT rule. If you don’t specify a value, NAT gateway support is disabled. Only the core network owner can configure NAT on an attachment.

  • NatGatewayRules (list) –

    The NAT rules for the Connect attachment, up to 50 rules.

    • (dict) –

      Describes a NAT rule to configure on an attachment. Source addresses in the source CIDR block of traffic from the attachment are translated to the same host addresses in the NAT CIDR block. Traffic to an address in the NAT CIDR block is translated back to the matching address in the source CIDR block.

      • RuleNumber (integer) – [REQUIRED]

        The rule number, from 1 to 32766. Each rule number must be unique for the attachment.

      • MatchSourceCidr (string) – [REQUIRED]

        The IPv4 CIDR block to match against the source address of traffic from the attachment. The CIDR block can’t overlap with the multicast range (224.0.0.0/4).

      • NatCidr (string) – [REQUIRED]

        The IPv4 CIDR block to translate matching source addresses to. The prefix length must be the same as the prefix length of MatchSourceCidr. The CIDR block must be within a private (RFC 1918) or shared address space (RFC 6598) range. The CIDR blocks of the NAT rules of an attachment can’t overlap with each other.

  • Options (dict) –

    [REQUIRED]

    Options for creating an attachment.

    • Protocol (string) –

      The protocol used for the attachment connection.

  • Tags (list) –

    The list of key-value tags associated with the request.

    • (dict) –

      Describes a tag.

      • Key (string) –

        The tag key.

        Constraints: Maximum length of 128 characters.

      • Value (string) –

        The tag value.

        Constraints: Maximum length of 256 characters.

  • ClientToken (string) –

    The client token associated with the request.

    This field is autopopulated if not provided.

Return type:

dict

Returns:

Response Syntax

{
    'ConnectAttachment': {
        'Attachment': {
            'CoreNetworkId': 'string',
            'CoreNetworkArn': 'string',
            'AttachmentId': 'string',
            'OwnerAccountId': 'string',
            'AttachmentType': 'CONNECT'|'SITE_TO_SITE_VPN'|'VPC'|'DIRECT_CONNECT_GATEWAY'|'TRANSIT_GATEWAY_ROUTE_TABLE',
            'State': 'REJECTED'|'PENDING_ATTACHMENT_ACCEPTANCE'|'CREATING'|'FAILED'|'AVAILABLE'|'UPDATING'|'PENDING_NETWORK_UPDATE'|'PENDING_TAG_ACCEPTANCE'|'DELETING',
            'EdgeLocation': 'string',
            'EdgeLocations': [
                'string',
            ],
            'ResourceArn': 'string',
            'AttachmentPolicyRuleNumber': 123,
            'SegmentName': 'string',
            'NetworkFunctionGroupName': 'string',
            'NatGatewaySupport': 'ENABLED'|'ENABLING'|'DISABLED'|'DISABLING'|'PENDING_ATTACHMENT_ACCEPTANCE',
            'NatSystemRouteSupport': True|False,
            'Tags': [
                {
                    'Key': 'string',
                    'Value': 'string'
                },
            ],
            'ProposedSegmentChange': {
                'Tags': [
                    {
                        'Key': 'string',
                        'Value': 'string'
                    },
                ],
                'AttachmentPolicyRuleNumber': 123,
                'SegmentName': 'string'
            },
            'ProposedNetworkFunctionGroupChange': {
                'Tags': [
                    {
                        'Key': 'string',
                        'Value': 'string'
                    },
                ],
                'AttachmentPolicyRuleNumber': 123,
                'NetworkFunctionGroupName': 'string'
            },
            'CreatedAt': datetime(2015, 1, 1),
            'UpdatedAt': datetime(2015, 1, 1),
            'LastModificationErrors': [
                {
                    'Code': 'VPC_NOT_FOUND'|'SUBNET_NOT_FOUND'|'SUBNET_DUPLICATED_IN_AVAILABILITY_ZONE'|'SUBNET_NO_FREE_ADDRESSES'|'SUBNET_UNSUPPORTED_AVAILABILITY_ZONE'|'SUBNET_NO_IPV6_CIDRS'|'SECURITY_GROUP_REFERENCING_UNSUPPORTED_AVAILABILITY_ZONE'|'VPN_CONNECTION_NOT_FOUND'|'MAXIMUM_NO_ENCAP_LIMIT_EXCEEDED'|'DIRECT_CONNECT_GATEWAY_NOT_FOUND'|'DIRECT_CONNECT_GATEWAY_EXISTING_ATTACHMENTS'|'DIRECT_CONNECT_GATEWAY_NO_PRIVATE_VIF'|'VPN_EXISTING_ASSOCIATIONS'|'VPN_STATIC_ROUTES_NAT_UNSUPPORTED'|'VPC_UNSUPPORTED_FEATURES'|'DIRECT_CONNECT_GATEWAY_TOPOLOGY_RESTRICTIONS'|'CREATION_FAILED'|'UPDATE_FAILED'|'DELETION_FAILED',
                    'Message': 'string',
                    'ResourceArn': 'string',
                    'RequestId': 'string'
                },
            ]
        },
        'TransportAttachmentId': 'string',
        'Options': {
            'Protocol': 'GRE'|'NO_ENCAP'
        }
    }
}

Response Structure

  • (dict) –

    • ConnectAttachment (dict) –

      The response to a Connect attachment request.

      • Attachment (dict) –

        The attachment details.

        • CoreNetworkId (string) –

          The ID of a core network.

        • CoreNetworkArn (string) –

          The ARN of a core network.

        • AttachmentId (string) –

          The ID of the attachment.

        • OwnerAccountId (string) –

          The ID of the attachment account owner.

        • AttachmentType (string) –

          The type of attachment.

        • State (string) –

          The state of the attachment.

        • EdgeLocation (string) –

          The Region where the edge is located. This is returned for all attachment types except a Direct Connect gateway attachment, which instead returns EdgeLocations.

        • EdgeLocations (list) –

          The edge locations that the Direct Connect gateway is associated with. This is returned only for Direct Connect gateway attachments. All other attachment types retrun EdgeLocation.

          • (string) –

        • ResourceArn (string) –

          The attachment resource ARN.

        • AttachmentPolicyRuleNumber (integer) –

          The policy rule number associated with the attachment.

        • SegmentName (string) –

          The name of the segment attachment.

        • NetworkFunctionGroupName (string) –

          The name of the network function group.

        • NatGatewaySupport (string) –

          The state of NAT gateway support on the attachment. This is returned only to the core network owner for attachment types that support NAT.

        • NatSystemRouteSupport (boolean) –

          Indicates whether the core network installs system routes for the NAT CIDR blocks of the attachment’s NAT rules. This is returned only to the core network owner for attachment types that support NAT.

        • Tags (list) –

          The tags associated with the attachment.

          • (dict) –

            Describes a tag.

            • Key (string) –

              The tag key.

              Constraints: Maximum length of 128 characters.

            • Value (string) –

              The tag value.

              Constraints: Maximum length of 256 characters.

        • ProposedSegmentChange (dict) –

          The attachment to move from one segment to another.

          • Tags (list) –

            The list of key-value tags that changed for the segment.

            • (dict) –

              Describes a tag.

              • Key (string) –

                The tag key.

                Constraints: Maximum length of 128 characters.

              • Value (string) –

                The tag value.

                Constraints: Maximum length of 256 characters.

          • AttachmentPolicyRuleNumber (integer) –

            The rule number in the policy document that applies to this change.

          • SegmentName (string) –

            The name of the segment to change.

        • ProposedNetworkFunctionGroupChange (dict) –

          Describes a proposed change to a network function group associated with the attachment.

          • Tags (list) –

            The list of proposed changes to the key-value tags associated with the network function group.

            • (dict) –

              Describes a tag.

              • Key (string) –

                The tag key.

                Constraints: Maximum length of 128 characters.

              • Value (string) –

                The tag value.

                Constraints: Maximum length of 256 characters.

          • AttachmentPolicyRuleNumber (integer) –

            The proposed new attachment policy rule number for the network function group.

          • NetworkFunctionGroupName (string) –

            The proposed name change for the network function group name.

        • CreatedAt (datetime) –

          The timestamp when the attachment was created.

        • UpdatedAt (datetime) –

          The timestamp when the attachment was last updated.

        • LastModificationErrors (list) –

          Describes the error associated with the attachment request.

          • (dict) –

            Describes the error associated with an attachment request.

            • Code (string) –

              The error code for the attachment request.

            • Message (string) –

              The message associated with the error code.

            • ResourceArn (string) –

              The ARN of the requested attachment resource.

            • RequestId (string) –

              The ID of the attachment request.

      • TransportAttachmentId (string) –

        The ID of the transport attachment.

      • Options (dict) –

        Options for connecting an attachment.

        • Protocol (string) –

          The protocol used for the attachment connection.

Exceptions