この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
こんにちは、菊池です。
AzureのSite to Site VPNで遊んでます。先の記事にて、Azure とオンプレミスを VPN接続し、動的ルーティング(BGP)によるルーティングで通信する環境を構築しました。
今回はさらに拡張して、AWSのVPCとも接続し、Azure VNet <- オンプレ -> AWS VPC のような経路での通信を試してみました。
AWSのVPCとAzureのVNetを直接接続する構成は下記の記事にて紹介しております。
今回はAzureの経路制御の動作を確認する意図もあり、直接ではなくオンプレを経由するように接続しています。
AWS との VPN 接続を追加
前述のブログのように、Azure VNetとの接続はできているところからスタートです。
AWS側にVPN接続を作成していきます。こちらもあらかじめ、VPCと仮想プライベートゲートウェイ(VGW)、カスタマーゲートウェイは作成済みです。
カスタマーゲートウェイはこのようになっています。IPアドレス、BGP ASNはAzure側のローカルネットワークゲートウェイで設定したものと同じにします。
VGWの設定です。こちらのASNは、オンプレおよびAzureとは異なる値を設定しましょう。
続いて、VPN接続を作成します。
作成済みのVGW、カスタマーゲートウェイを選択します。ルーティングオプションは [動的] を選択します。
接続ができましたので、設定をダウンロードします。
ベンダー/プラットフォーム/バージョンを選択してダウンロード。
また、BGPで受け取ったルートをVPCルーティングに反映するため、ルートテーブルで [ルート伝搬] を有効化しておきます。
ルータへのVPNの設定は以下の記事を参考にしてください。
最終的に、ルータのBGP設定は以下のようになっています。
router bgp 65000
bgp log-neighbor-changes
neighbor 169.254.47.77 remote-as 64512
neighbor 169.254.47.77 timers 10 30 30
neighbor 169.254.198.17 remote-as 64512
neighbor 169.254.198.17 timers 10 30 30
neighbor 172.16.1.254 remote-as 65515
neighbor 172.16.1.254 ebgp-multihop 255
neighbor 172.16.1.254 update-source Tunnel100
!
address-family ipv4
network 10.10.10.0 mask 255.255.255.0
network 10.212.134.0 mask 255.255.255.0
neighbor 169.254.47.77 activate
neighbor 169.254.47.77 soft-reconfiguration inbound
neighbor 169.254.198.17 activate
neighbor 169.254.198.17 soft-reconfiguration inbound
neighbor 172.16.1.254 activate
exit-address-family
経路の確認
AWSへのVPN接続が確立したら、各ポイントでのルートテーブルを確認します。
まず、オンプレのVPNルータの状態です。Azure(172.16.0.0/16
)、AWS(172.31.0.0/16
)双方の経路を受け取っています。
#show ip bgp
BGP table version is 9, local router ID is 192.168.255.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
x best-external, a additional-path, c RIB-compressed,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found
Network Next Hop Metric LocPrf Weight Path
*> 10.10.10.0/24 0.0.0.0 0 32768 i
*> 10.212.134.0/24 10.10.10.253 0 32768 i
*> 172.16.0.0 172.16.1.254 0 65515 i
* 172.31.0.0 169.254.198.17 200 0 64512 i
*> 169.254.47.77 100 0 64512 i
続いて、Azureのルートです。オンプレミスの10.10.10.0/24
、10.212.134.0/24
に加えて、AWS VPCのCIDRである、172.31.0.0/16
が反映されていることがわかります。
AWS側のルートテーブルです。オンプレミスの10.10.10.0/24
、10.212.134.0/24
に加えて、AWS VPCのCIDRである、172.16.0.0/16
が反映されています。
これで、双方に経路情報が反映できました。あとはSecurity Groupで適切に通信を許可することで、双方向の通信が確認できました。
まとめ
オンプレを中継したAWS - Azureの疎通を試しました。BGPを使うことで簡単に経路情報を伝搬して、必要なルーティングを設定することができます。