VPC内のルーティング設定については、目に見える箇所だけで言えば、
基本ルートテーブルのみで設定される。
※ここで「目に見える箇所だけ」と明記している理由は、vgwにもルーティングテーブルが存在するが、AWSコンソールもしくはaws cliで確認不可のため。
■VPCのルートテーブル
ルート情報は、デフォルトでは手動設定(=「ルート伝播」タブが「いいえ」と表示される。)
ルートテーブルに紐づいているルート伝搬を有効化した場合、VGWが持っているルートが自動反映される。(=自動反映されたルートは、「ルート伝播」タブが「はい」と表示され、編集不可)
尚、ルートテーブルに意識的にvgwを紐づける必要はなく、
VPCにvgwをアタッチした時点で自動的にルートテーブルにvgwが紐づけられる。
紐づけられたvgwはデフォルトで「ルート伝播」が「いいえ」に設定される。
■vgwのルートテーブル
前提として、vgw側で保持しているルーティングテーブルは確認することができない。
VPN接続の場合のルートテーブル情報は、スタティックルートまたはBGPにてルート情報が設定される。
DirectConnect接続の場合がルートテーブル情報はBGPでアドバタイズされたルート情報のみが設定される。
※BGPアドバタイズを利用するため、相手側のルーターにルーティングテーブルが適切に設定されている必要がある。
■vgwのルート選択ロジックについて(OUT方向)
以下の順で優先するルートを決定。
・ロンゲストマッチ(=最長プレフィックス一致。=最も詳細に絞り込んでいるルート)
・同じルートであればDXとVPN接続ではDXを優先。VPNが利用されるのはDX切断時のみ。
・(VPNの場合)スタティックルートとBGPではスタティックルートが優先
→ 例えば、BGPで「10.10.10.0/24」を学習した場合と、手動で「10.10.10.0/24」を設定した場合には、手動で設定したパスが優先される。
・BGP AS_PATH属性
■vgwに入ってくる通信(IN方向)
オンプレ側のルータの設定に依存。ただし、IN/OUTで同じルートとなるようにコントロールするのが原則。(=非対称ルーティングにならないようにする)