Networking Foundation参照資料確認: 2026-09-10

Azure NAT Gateway

private subnetのInternet egressをmanaged SNATで明示化し、source IP・SNAT capacity・zone・Standard/StandardV2の差を運用視点で整理する。

Scope: Microsoft Learn / Azure Architecture Centerの一次資料を基準に、設計と運用で判断が必要な点をpacket path中心に整理。SKU、region、limitsは変更されるため、実装時はOfficial sourcesのcurrent documentationを再確認してください。

Azure NAT Gatewayを理解するための前提

NAT Gatewayはsubnet-levelのoutbound serviceで、VMごとのpublic IPを要求しない。 unsolicited inbound connectionは許可せず、active outbound connectionへのresponse trafficのみ通す。

NAT Gatewayはsubnetのdefault Internet destinationに対するegressを提供し、通常NATのためだけのUDR追加は不要。 Standardはsingle-zone scope(明示zoneまたはNo zoneでAzureが1 zoneに配置)で、StandardV2はzone-redundantとしてregion内の全Availability Zoneにまたがり、IPv6、flow logs、より高いthroughputを提供する。

StandardV2はStandardV2 public IP/prefixが必要で、Standardからin-place upgradeはできない。 SNAT port exhaustionはsource/destination concurrency、public IP数、idle timeout等を含めてtelemetryで評価する。

通信や判断の流れを追う
利用側VNet / SubnetNIC / Azure service接続先

Control plane と data plane

Control planePortal / ARM / CLIで定義されたresource、association、route advertisement、peering flagなど。設定がSucceededでもpacket到達を保証しない。
Data plane実際のsource/destination/5-tupleが選ぶroute、NAT、security device、return path。Effective state、Next hop、logs、packet capture、application testで証明する。

仕組み

workloadからInternet宛packetが出ると、route selection後にsubnet associationされたNAT GatewayがSNAT sourceをNAT public IPへ変換する。

NAT Gatewayはoutbound flowごとにSNAT portを割り当て、response packetをprivate tupleへ戻す。Internet側から新規flowを開始してNAT Gateway経由でVMへ入ることはできない。

NAT Gatewayはsecurity filterそのものではない。outbound destination制御が必要ならNSG/Firewall/NVAなど別controlが必要。

centralized inspection pathではNAT Gatewayをどのsubnetへ関連付けるかでsource translation pointが変わる。Firewallとの組合せはpacket pathを明示して設計する。

Packet path

routing問題は「どのresourceがあるか」ではなく、packetが各hopで何を選ぶかを順に追う。

  1. VMがInternet destinationへnew connectionを開始。
  2. Azure route selectionでInternet/egress pathを決定。
  3. NAT Gatewayがprivate source IP:portをpublic IP:SNAT portへ変換。
  4. destinationからresponseがNAT public IPへ戻る。
  5. NAT stateに一致するresponseのみoriginal VMへ復元される。

設計判断

判断点推奨理由
SKU新規要件でzone redundancy/IPv6/flow logs/100Gbps級が必要ならStandardV2を評価。StandardとStandardV2はpublic IP SKUも異なる。
Public IP capacityconcurrencyとdestination patternからSNAT port余裕を確認。単純VM台数だけではport exhaustionを予測できない。
SecurityNAT Gatewayをfirewallの代替と扱わない。inbound抑止とegress filteringは別要件。
HA testzone failureやpublic IP dependencyをarchitectureに合わせて検証。SKUごとのfailure domainが異なる。

確認手順

Azure Portal

  • NAT gateways → SKU / Availability zone / Public IP addresses or prefixesを確認。
  • Subnet側のNAT gateway associationを確認。
  • Metrics/flow logs(利用SKUでsupportされる場合)とapplication側source IPを突き合わせる。

Verification discipline

  • subscription / resource group / resource IDを記録する。
  • 同じsource・destinationでbefore/afterを比較する。
  • read-only evidenceを保存してから変更する。
  • control-plane successとapplication successを別々に判定する。
Azure CLI — read-only first
az network nat gateway show -g <rg> -n <nat> -o jsonc
az network vnet subnet show -g <rg> --vnet-name <vnet> -n <subnet> --query natGateway -o jsonc
PowerShell — read-only first
Get-AzNatGateway -ResourceGroupName <rg> -Name <nat>

障害切り分け

症状疑う点証拠次の確認
outbound timeout/断続失敗SNAT exhaustion / destination saturation / idle timeoutNAT metrics + connection patternpublic IP capacity/connection reuse/timeout設計を見直す
source IPが変わった別egress method/associationeffective route + observed public IPsubnet associationとrouteを固定
InternetからNAT public IPへ入れない仕様どおりunsolicited inbound不可flow directionLB/App Gateway/Firewall DNAT等のinbound serviceを別途設計
StandardV2へ変更できないin-place upgrade非対応SKU/public IP resourceparallel deploy + subnet切替で移行

変更時の確認と rollback

  • 新NATをparallelに作成しpublic IP allowlistを先に反映。
  • subnet association切替前にcritical destination testを準備。
  • 切替後はnew connectionsでsource public IP、throughput、error率を確認。
  • rollback用に旧NAT/public IPを検証完了まで保持。

What changed recently

2026年の運用上の注意

StandardV2はzone-redundant、IPv6、flow logs、最大100 Gbps級のcapabilityを持つ現行SKU。Standardとはpublic IP SKUやmigration方式が異なるため、既存Standardを「設定変更だけでV2化」しない。

Official sources