Select your cookie preferences

We use cookies and similar tools to enhance your experience, provide our services, deliver relevant advertising, and make improvements. Approved third parties also use these tools to help us deliver advertising and provide certain site features.

start_route_analysis

start_route_analysis(**kwargs)

Starts analyzing the routing path between the specified source and destination. For more information, see Route Analyzer.

See also: AWS API Documentation

Request Syntax

response = client.start_route_analysis(
    GlobalNetworkId='string',
    Source={
        'TransitGatewayAttachmentArn': 'string',
        'IpAddress': 'string'
    },
    Destination={
        'TransitGatewayAttachmentArn': 'string',
        'IpAddress': 'string'
    },
    IncludeReturnPath=True|False,
    UseMiddleboxes=True|False
)
Parameters
  • GlobalNetworkId (string) --

    [REQUIRED]

    The ID of the global network.

  • Source (dict) --

    [REQUIRED]

    The source from which traffic originates.

    • TransitGatewayAttachmentArn (string) --

      The ARN of the transit gateway attachment.

    • IpAddress (string) --

      The IP address.

  • Destination (dict) --

    [REQUIRED]

    The destination.

    • TransitGatewayAttachmentArn (string) --

      The ARN of the transit gateway attachment.

    • IpAddress (string) --

      The IP address.

  • IncludeReturnPath (boolean) -- Indicates whether to analyze the return path. The default is false .
  • UseMiddleboxes (boolean) -- Indicates whether to include the location of middlebox appliances in the route analysis. The default is false .
Return type

dict

Returns

Response Syntax

{
    'RouteAnalysis': {
        'GlobalNetworkId': 'string',
        'OwnerAccountId': 'string',
        'RouteAnalysisId': 'string',
        'StartTimestamp': datetime(2015, 1, 1),
        'Status': 'RUNNING'|'COMPLETED'|'FAILED',
        'Source': {
            'TransitGatewayAttachmentArn': 'string',
            'TransitGatewayArn': 'string',
            'IpAddress': 'string'
        },
        'Destination': {
            'TransitGatewayAttachmentArn': 'string',
            'TransitGatewayArn': 'string',
            'IpAddress': 'string'
        },
        'IncludeReturnPath': True|False,
        'UseMiddleboxes': True|False,
        'ForwardPath': {
            'CompletionStatus': {
                'ResultCode': 'CONNECTED'|'NOT_CONNECTED',
                'ReasonCode': 'TRANSIT_GATEWAY_ATTACHMENT_NOT_FOUND'|'TRANSIT_GATEWAY_ATTACHMENT_NOT_IN_TRANSIT_GATEWAY'|'CYCLIC_PATH_DETECTED'|'TRANSIT_GATEWAY_ATTACHMENT_STABLE_ROUTE_TABLE_NOT_FOUND'|'ROUTE_NOT_FOUND'|'BLACKHOLE_ROUTE_FOR_DESTINATION_FOUND'|'INACTIVE_ROUTE_FOR_DESTINATION_FOUND'|'TRANSIT_GATEWAY_ATTACHMENT_ATTACH_ARN_NO_MATCH'|'MAX_HOPS_EXCEEDED'|'POSSIBLE_MIDDLEBOX'|'NO_DESTINATION_ARN_PROVIDED',
                'ReasonContext': {
                    'string': 'string'
                }
            },
            'Path': [
                {
                    'Sequence': 123,
                    'Resource': {
                        'RegisteredGatewayArn': 'string',
                        'ResourceArn': 'string',
                        'ResourceType': 'string',
                        'Definition': 'string',
                        'NameTag': 'string',
                        'IsMiddlebox': True|False
                    },
                    'DestinationCidrBlock': 'string'
                },
            ]
        },
        'ReturnPath': {
            'CompletionStatus': {
                'ResultCode': 'CONNECTED'|'NOT_CONNECTED',
                'ReasonCode': 'TRANSIT_GATEWAY_ATTACHMENT_NOT_FOUND'|'TRANSIT_GATEWAY_ATTACHMENT_NOT_IN_TRANSIT_GATEWAY'|'CYCLIC_PATH_DETECTED'|'TRANSIT_GATEWAY_ATTACHMENT_STABLE_ROUTE_TABLE_NOT_FOUND'|'ROUTE_NOT_FOUND'|'BLACKHOLE_ROUTE_FOR_DESTINATION_FOUND'|'INACTIVE_ROUTE_FOR_DESTINATION_FOUND'|'TRANSIT_GATEWAY_ATTACHMENT_ATTACH_ARN_NO_MATCH'|'MAX_HOPS_EXCEEDED'|'POSSIBLE_MIDDLEBOX'|'NO_DESTINATION_ARN_PROVIDED',
                'ReasonContext': {
                    'string': 'string'
                }
            },
            'Path': [
                {
                    'Sequence': 123,
                    'Resource': {
                        'RegisteredGatewayArn': 'string',
                        'ResourceArn': 'string',
                        'ResourceType': 'string',
                        'Definition': 'string',
                        'NameTag': 'string',
                        'IsMiddlebox': True|False
                    },
                    'DestinationCidrBlock': 'string'
                },
            ]
        }
    }
}

Response Structure

  • (dict) --

    • RouteAnalysis (dict) --

      The route analysis.

      • GlobalNetworkId (string) --

        The ID of the global network.

      • OwnerAccountId (string) --

        The ID of the AWS account that created the route analysis.

      • RouteAnalysisId (string) --

        The ID of the route analysis.

      • StartTimestamp (datetime) --

        The time that the analysis started.

      • Status (string) --

        The status of the route analysis.

      • Source (dict) --

        The source.

        • TransitGatewayAttachmentArn (string) --

          The ARN of the transit gateway attachment.

        • TransitGatewayArn (string) --

          The ARN of the transit gateway.

        • IpAddress (string) --

          The IP address.

      • Destination (dict) --

        The destination.

        • TransitGatewayAttachmentArn (string) --

          The ARN of the transit gateway attachment.

        • TransitGatewayArn (string) --

          The ARN of the transit gateway.

        • IpAddress (string) --

          The IP address.

      • IncludeReturnPath (boolean) --

        Indicates whether to analyze the return path. The return path is not analyzed if the forward path analysis does not succeed.

      • UseMiddleboxes (boolean) --

        Indicates whether to include the location of middlebox appliances in the route analysis.

      • ForwardPath (dict) --

        The forward path.

        • CompletionStatus (dict) --

          The status of the analysis at completion.

          • ResultCode (string) --

            The result of the analysis. If the status is NOT_CONNECTED , check the reason code.

          • ReasonCode (string) --

            The reason code. Available only if a connection is not found.

            • BLACKHOLE_ROUTE_FOR_DESTINATION_FOUND - Found a black hole route with the destination CIDR block.
            • CYCLIC_PATH_DETECTED - Found the same resource multiple times while traversing the path.
            • INACTIVE_ROUTE_FOR_DESTINATION_FOUND - Found an inactive route with the destination CIDR block.
            • MAX_HOPS_EXCEEDED - Analysis exceeded 64 hops without finding the destination.
            • ROUTE_NOT_FOUND - Cannot find a route table with the destination CIDR block.
            • TGW_ATTACH_ARN_NO_MATCH - Found an attachment, but not with the correct destination ARN.
            • TGW_ATTACH_NOT_FOUND - Cannot find an attachment.
            • TGW_ATTACH_NOT_IN_TGW - Found an attachment, but not to the correct transit gateway.
            • TGW_ATTACH_STABLE_ROUTE_TABLE_NOT_FOUND - The state of the route table association is not associated.
          • ReasonContext (dict) --

            Additional information about the path. Available only if a connection is not found.

            • (string) --
              • (string) --
        • Path (list) --

          The route analysis path.

          • (dict) --

            Describes a path component.

            • Sequence (integer) --

              The sequence number in the path. The destination is 0.

            • Resource (dict) --

              The resource.

              • RegisteredGatewayArn (string) --

                The ARN of the gateway.

              • ResourceArn (string) --

                The ARN of the resource.

              • ResourceType (string) --

                The resource type.

              • Definition (string) --

                Information about the resource, in JSON format. Network Manager gets this information by describing the resource using its Describe API call.

              • NameTag (string) --

                The value for the Name tag.

              • IsMiddlebox (boolean) --

                Indicates whether this is a middlebox appliance.

            • DestinationCidrBlock (string) --

              The destination CIDR block in the route table.

      • ReturnPath (dict) --

        The return path.

        • CompletionStatus (dict) --

          The status of the analysis at completion.

          • ResultCode (string) --

            The result of the analysis. If the status is NOT_CONNECTED , check the reason code.

          • ReasonCode (string) --

            The reason code. Available only if a connection is not found.

            • BLACKHOLE_ROUTE_FOR_DESTINATION_FOUND - Found a black hole route with the destination CIDR block.
            • CYCLIC_PATH_DETECTED - Found the same resource multiple times while traversing the path.
            • INACTIVE_ROUTE_FOR_DESTINATION_FOUND - Found an inactive route with the destination CIDR block.
            • MAX_HOPS_EXCEEDED - Analysis exceeded 64 hops without finding the destination.
            • ROUTE_NOT_FOUND - Cannot find a route table with the destination CIDR block.
            • TGW_ATTACH_ARN_NO_MATCH - Found an attachment, but not with the correct destination ARN.
            • TGW_ATTACH_NOT_FOUND - Cannot find an attachment.
            • TGW_ATTACH_NOT_IN_TGW - Found an attachment, but not to the correct transit gateway.
            • TGW_ATTACH_STABLE_ROUTE_TABLE_NOT_FOUND - The state of the route table association is not associated.
          • ReasonContext (dict) --

            Additional information about the path. Available only if a connection is not found.

            • (string) --
              • (string) --
        • Path (list) --

          The route analysis path.

          • (dict) --

            Describes a path component.

            • Sequence (integer) --

              The sequence number in the path. The destination is 0.

            • Resource (dict) --

              The resource.

              • RegisteredGatewayArn (string) --

                The ARN of the gateway.

              • ResourceArn (string) --

                The ARN of the resource.

              • ResourceType (string) --

                The resource type.

              • Definition (string) --

                Information about the resource, in JSON format. Network Manager gets this information by describing the resource using its Describe API call.

              • NameTag (string) --

                The value for the Name tag.

              • IsMiddlebox (boolean) --

                Indicates whether this is a middlebox appliance.

            • DestinationCidrBlock (string) --

              The destination CIDR block in the route table.

Exceptions

  • NetworkManager.Client.exceptions.ValidationException
  • NetworkManager.Client.exceptions.AccessDeniedException
  • NetworkManager.Client.exceptions.ResourceNotFoundException
  • NetworkManager.Client.exceptions.ConflictException
  • NetworkManager.Client.exceptions.ThrottlingException
  • NetworkManager.Client.exceptions.InternalServerException