AWS Transit Gateway で Transit Gateway のルートテーブルと伝播を設定しました。Transit Gateway のルートテーブルを監視して、欠落したルートを特定し、ルートテーブルが正しく伝達されることを確認したいと考えています。
解決策
注: 以下のアクションは、Transit Gateway を所有する AWS アカウントでのみ実行できます。共有された Transit Gateway を使用するアカウントではルートテーブルを表示できません。
ルートテーブルの設定と伝播を確認する
各アタッチメントが目的のルートテーブルに関連付けられていることを確認します。また、ルートテーブルでアタッチメントのルート伝播がオンになっていることを確認します。
Transit Gateway のルートテーブルをチェックして、予想されるルートがすべて含まれていることを確認します。
静的ルートは、送信先が同じ伝播されたルートよりも優先されます。伝播されたルートを上書きするには、静的ルートを追加します。静的ルートを削除すると、Transit Gateway はルートテーブル内の伝播された重複するルートを優先します。
欠落しているルートのトラブルシューティング
ルートテーブルに関連付けられたアタッチメントが使用可能かどうかを確認します。VPN と AWS Direct Connect のアタッチメントについては、ボーダーゲートウェイプロトコル (BGP) 接続がアクティブで、[UP] と表示されていることを確認します。また、BGP 設定がルートを正しくアドバタイズしていることを確認します。
静的ルートが伝播されたルートを上書きするかどうかを確認します。
AWS CLI を使用してルートを表示する
注:
特定のプレフィックスを検索するには、次の search-transit-gateway-routes コマンドを実行します。
aws ec2 search-transit-gateway-routes --transit-gateway-route-table-id rtb-12345678901234567 --filters "Name=type,Values=static" --max-results 1000
ルートタイプでフィルタリングするには、次の search-transit-gateway-routes コマンドを実行します。
aws ec2 search-transit-gateway-routes --transit-gateway-route-table-id rtb-12345678901234567 --filters "Name=type,Values=propagated" --max-results 1000
すべてのルートを表示し、Transit Gateway のルートテーブルを Amazon S3 バケットにエクスポートするには、次の export-transit-gateway-routes コマンドを実行します。
aws ec2 export-transit-gateway-routes --transit-gateway-route-table-id rtb-12345678901234567 --s3-bucket S3-BUCKET-NAME --file-format json
エクスポートされたファイル内の特定の CIDR ブロックを検索するには、次の cp コマンドを実行します。
aws s3 cp s3://S3-BUCKET-NAME/my-file.json - | jq '.Routes[] | select(.DestinationCidrBlock == "10.0.0.0/16")'
設定変更のアラートを設定する
ルートテーブル設定の変更を監視するには、次の操作を行います。
関連情報
How AWS Transit Gateway works (AWS Transit Gateway の仕組み)
Transit gateways in AWS Transit Gateway (AWS Transit Gateway の Transit Gateway)