🐶

Azure Virtual WAN な Spoke VNET のインターネット通信制御の検討

に公開

Azure Virtual WAN におけるインターネット通信制御

Azure Virtual WAN は、拠点や VNET を Virtual WAN Hub (以降、VWAN Hub) に VPN 接続、ExpressRoute 接続、VNET 接続によって接続することで、Any-to-Any の接続を可能にする WAN のようなサービスです。VWAN Hub を Hub とする Hub-Spoke 構成が出来上がるわけですが、この場合の Spoke からのインターネット接続をどうするかは、しばしば議題に上がります。

主な経路としては以下の3点が考えられます。

  1. Spoke 側で直接出す(ローカル ブレークアウト)
  2. Azure Virtual WAN 上の FW 経由で出す
  3. オンプレミス側から出す(強制トンネリング)

構成図

※少し概念的に書いている部分があります。

1. Spoke 側で直接出す(ローカル ブレークアウト)

これは、既定で採用される経路です。Azure Virtual WAN でルートテーブルを編集したり、ルーティング インテント インターネットポリシーを使用していない場合には、通常通りの VNET のアウトバウンドアクセス経路となります(①)。NAT Gateway や Public IP 経由でのインターネット接続となります。

2. Azure Virtual WAN 上の NVA 経由で出す

セキュリティを統合的に管理したい場合、共通的に経由させる FW を経路上に配置し、そこで SNAT させてログを取得するというのはよくある構成です。VWAN Hub には Azure Firewall やその他 Palo Alto などのサードパーティ ソリューションを含む NVA をデプロイできます。Azure Virtual WAN では、この構成を簡単に行う設定として Routing Intent[1] があります。インターネット宛だけでなく、プライベート宛の通信制御も同じ機能が使えますが、インターネット接続に関しては、ネクストホップを NVA に向けたデフォルトルート (0.0.0.0/0) が各接続先に広報されるようになります。これにより、VWAN Hub の NVA 経由のインターネット接続が実現します(②)。

もしくは、VWAN 上で各接続に対するルートテーブルか、Spoke 側のルートテーブルに静的なルートを追加することでもこのような構成が可能です。

3. オンプレミス側から出す(強制トンネリング)

既存のナレッジの活用や、セキュリティ要件によって、オンプレミスで運用中の FW 経由でしかインターネット接続が認められない場合があります。クラウド上の NVA だとオンプレミス版のハードウェアと対応している機能が異なることもしばしばあります。その場合、少し遠回りとなりますが、オンプレミスを経由させるような強制トンネリング構成が必要になります(③)。

検討事例

ここのパートでは、インターネット接続にまつわる、実際のいくつかの検討事例を随時追加していきます。

基本は VWAN Hub の NVA 経由とするが、特定の Spoke のみオンプレミス経由としたい

現状、VWAN Hub 一つでは、この構成は実現できません。よって、複数の VWAN Hub を用意し、オンプレミスとそれぞれ接続します。そのうえで、強制トンネリングを構成したい側のみで 0.0.0.0/0 を受け取るようにします。この経路はハブ間で伝達されません。この分離された Spoke 宛の経路はもう一方の Hub 側からも見えますが、リモートハブからオンプレミスに伝達される経路には、AS_PATH で 65520-65520 が追加される[2] ため、非対称ルーティングにはなりません。

Spoke の UDR でオンプレミスの FW を指定すればよいのでは?

いいえ。Azure の UDR で Next hop に指定する IP アドレスは、「仮想マシンに接続されたネットワーク インターフェイスのプライベート IP アドレス」または「Azure 内部ロード バランサーのプライベート IP アドレス」である必要があります。それ以外の場合、NIC の Effective Route 上では、None と表示されます。

ネクスト ホップのプライベート IP アドレスは、Azure ExpressRoute ゲートウェイまたは Azure Virtual WAN 経由でルーティングせず、直接接続する必要があります。 直接接続せずにネクスト ホップを IP アドレスに設定すると、UDR 構成が無効になります。

https://learn.microsoft.com/ja-jp/azure/virtual-network/virtual-networks-udr-overview#user-defined-routes

脚注
  1. https://learn.microsoft.com/ja-jp/azure/virtual-wan/how-to-routing-policies ↩︎

  2. https://learn.microsoft.com/ja-jp/azure/virtual-wan/about-virtual-hub-routing-preference#:~:text=Virtual WAN ハブが別の Virtual WAN ハブにルートをアドバタイズすると、このルートには ASN 65520-65520 が AS パスの前に付加されます。 ↩︎

GitHubで編集を提案
Microsoft (有志)

Discussion