背景
Gateway Load balancer とのがありますが、その役割と使い方は理解するにはちょっと難しいです。
自分流で説明いたします。
大事な参考文章
以下のお勧めの文章を読んだら、理解が大体付けます。
https://zenn.dev/openjny/articles/793fa510825a60
https://www.linkedin.com/pulse/demystifying-azure-gateway-load-balancer-nazakat-hussain/
https://secure.cisco.com/secure-firewall/v7.3/docs/azuregwlb
MS公開文章:(わかりにくいが、上記の文章を読んだ後で以下を読むと、なるほどの感じ)
https://learn.microsoft.com/ja-jp/azure/architecture/networking/guide/network-virtual-appliance-high-availability?tabs=cli#load-balancer-standard-and-ha-ports
https://learn.microsoft.com/en-us/azure/load-balancer/gateway-overview
私流簡潔説明
Gateway LBはPluginのようなものです。ChainとのコンポーネントはまさにPluginの役割です。
PulicLBのFrontendにPluginできるし、VMのPublic IPにPluginもできます。Pluginしたら、
そこに来た通信を横取りして、Gateway LBの配下のNVAに検査してからまたPublicLB,PublicIPに返します。
例えば、現状、私の構成は以下です。
Internet →→public LB →→target VM
そして、上記の通信をNVAでチェックしたいです。この際、Gateway LBをPublic LBのFrontEndにPluginすれば実現できます。

これで通信は以下になります。
internet →public LB→GWLB→NVA→GWLB→public LB →target VM
つまり、通信はGateway LBに横取りされまして、チェックしてから戻しています。
イメージ図は以下です。

注意Point:
1.PublicLB/publicIPの部分はConsumer、GatewayLBの部分はproviderと名付けています。
2.GatewayLBと配下のNVAは通信上でVXLANで交流していますので、NVA上でVXLANの設定も必要です。
3.VXLANって何:(よくわからんが、一応以下の定義)
VXLAN(Virtual Extensible LAN)は、仮想化されたネットワーク環境で複数の仮想マシンを異なる物理ネットワーク上にまたがって通信させるための技術です。従来のVLANでは管理できるネットワーク数に制約がありますが、VXLANは128万以上の論理ネットワーク(仮想ネットワーク)を作成可能です。
例:
データセンター内の複数の仮想マシンを異なるサーバーや場所にまたがって通信させたい場合、VXLANを使えば仮想ネットワークを拡張し、物理的なネットワークを意識せずに仮想マシン同士を接続できます。
4.VXLANに関して、例の参考文章には設定検証もやっていますので、関連部分を抜粋
https://zenn.dev/openjny/articles/793fa510825a60
--抜粋--
VXLAN 仮想インターフェイス
次に、コンシューマーから横流しされたパケットは VXLAN でカプセル化された状態で届くため、VXLAN を喋れるインターフェイスを作成していきます。
バックエンドプールを作成する際、Internal と External の VXLAN に関しての設定を行います。なぜ 2 つあるんだ?? という疑問が最初あったのですが、Internal は「プロバイダーの NVA」と「コンシューマーの Azure VM」間の VXLAN Tunnel、External は「インターネット上ホスト」と「プロバイダーの NVA」間の VXLAN Tunnelを指している、と理解するとわかりやすいです。既定だと、Internal は 10800/udp (VNI:800) で、External は 10801/udp (VNI:801) を使う事になってます。
Internet Host <-- External --> Provider NVA <-- Internal --> Consumer VM
