はじめに
TGWをつかったVPC間接続について、IPレンジが重複している場合は接続できないと記載がありましたが、IPレンジが丸かぶりでなければうまくいくのではないかと思い検証してみました。
また、今回の記事は備忘録っぽい感じです。
各サブネットの構成とか詳細は後日会社ブログのほうで紹介する予定です。
目次
登場するリソース
- VPC1
Cidr:10.0.0.0/21
EC2:10.0.4.14 - VPC2
Cidr:10.0.0.0/20
EC2:10.0.8.93 - VPC3
Cidr:192.168.32.0/20
EC2:192.168.40.116
→VPC3はVPC1,VPC2の両方に接続可能
IPアドレスレンジ
- VPC1(10.0.0.0/21)で使えるIPレンジ
10.0.0.0~10.0.7.255 - VPC2(10.0.0.0/20)で使えるIPレンジ
10.0.0.0~10.0.15.255
検証内容
→10.0.0.0~10.0.7.255まではVPC1,VPC2で重複しているが、10.0.8.0 ~10.0.15.255 はVPC1に存在しないため、VPC1からVPC2へは一方通行の接続が可能か検証する
結果
いきなり結論から書きますが通信できませんでした。
接続確認
接続はうまくいきませんでしたが、TGWのRTキャプチャをご紹介します。
VPC1の場合
接続可能VPC:VPC3のみ
VPC2の場合
接続可能VPC:VPC3のみ
VPC3の場合
接続可能VPC:VPC1,VPC2ともに接続可能
接続できない理由
接続元VPCに存在しないIPアドレスに向けてなら一方通行な通信が可能かと思いましたが、接続先サブネットのルートテーブルに戻りルート(接続元EC2のIPアドレス)を記載できないため通信できませんでした。
もう少し詳しく説明すると
VPC1→VPC2と接続する場合、VPC2のサブネットのRTに戻りの経路【接続元EC2(10.0.8.93)→TGW】を記載しないといけないのですが、10.0.8.93はVPC2のIPレンジに含まれており、宛先としてテーブルに追加できないためです。
- VPC1(10.0.0.0/21)で使えるIPレンジ
10.0.0.0~10.0.7.255 - VPC2(10.0.0.0/20)で使えるIPレンジ
10.0.0.0~10.0.15.255
さいごに
今回の構成では通信できませんでしたが、Floating IPを使った構成があると噂に聞いたので後日調べてみようと思います。