Azure VPN Gateway は、Basic 以外の SKU (ルート ベース) であれば BGP (Border Gateway Protocol) を構成することで経路情報 (関連するゲートウェイ、もしくはルーターの可用性、および BGP のプレフィックスが到達できる可能性に関する情報) を動的にやりとりすることが可能です。
※対向のゲートウェイ (ルーター) も BGP が有効になっている、かつ対向のゲートウェイ (ルーター) に接続する際の設定で BGP を有効することが前提
そのため、Azure 仮想ネットワークを含む複数のネットワークでトランジット ルーティングを行うことが可能となりますが、個人的に BGP を構成した Azure VPN Gateway のデプロイや挙動を確認する機会がなかったですが、理解を深めるために検証してみました。
BGP を構成した際の Azure VPN Gateway について
検証環境について
検証した環境は以下となります。
検証なので、Azure VPN Gateway の対向を準備するのが面倒くさいオンプレミス環境ではなく別リージョンの Azure VPN Gateway で VPN 接続 (VNet to VNet) しています。
BGP 構成なしの場合
BGP 構成ありの場合、VPN 接続されたリージョン間の通信を行うことはできますが、東日本リージョンにある Azure VPN Gateway をまたいだ東南アジア – 米国西部 リージョン間の通信を行うことはできません (お互いに経路情報を持っていないため)。
各リージョンにある VM のネットワーク インターフェースにて [有効なルート] を確認しても、東南アジア – 米国西部 リージョン間の経路情報は東南アジア、米国西部リージョンにある VM には含まれていません。
- 東日本リージョンにある VM (ネットワーク インターフェース) に対する [有効なルート]
- 東南アジア リージョンにある VM (ネットワーク インターフェース) に対する [有効なルート]
- 米国西部リージョンにある VM (ネットワーク インターフェース) に対する [有効なルート]
BGP 構成ありの場合
BGP 構成ありの場合、BGP により経路情報の交換が行われるため、東日本リージョンにある Azure VPN Gateway をまたいだ東南アジア – 米国西部 リージョン間の通信を行うことが可能となります。
今回 Azure VPN Getway および接続に対する BGP の設定手順については割愛しますが、BGP 構成を有効にした場合の各 VPN ゲートウェイの [BGP ピア] および各 VM のネットワーク インターフェースの [有効なルート] 情報は以下となり、東南アジア – 米国西部 リージョン間の経路情報は東南アジア、米国西部リージョンに EBGP によりルーティングされることを確認することが可能です。
[BGP ピア]
- 東日本リージョンにある Azure VPN Gateway に対する [BGP ピア]
- 東南アジア リージョンにある Azure VPN Gateway に対する [BGP ピア]
- 米国西部リージョンにある Azure VPN Gateway に対する [BGP ピア]
[有効なルート]
- 東日本リージョンにある VM (ネットワーク インターフェース) に対する [有効なルート]
- 東南アジア リージョンにある VM (ネットワーク インターフェース) に対する [有効なルート]
- 米国西部リージョンにある VM (ネットワーク インターフェース) に対する [有効なルート]
まとめ
Azure VPN Gateway に対し BGP を構成することで、BGP が有効になっている接続ではゲートウェイ (ルーター) を経由したトランジット ルーティングが可能になります。
接続先のネットワーク構成が変更になった場合でも BGP によって経路情報のやり取りが行われるため、手動でルーティング設定を変更する手間が省けます。
構成によっては Virtual WAN だったり、VNet Peering、ユーザー定義ルート (UDR) のほうが適切な場合もあるけど、オプションの 1 つと思ってもらえれば
関連サイト