NetworkManager / Client / start_route_analysis
start_route_analysis#
- NetworkManager.Client.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