Network Security参照資料確認: 2026-09-10

NSG Rule Processing

direction、priority、5-tuple、stateful connection、subnet/NICの複合適用をpacket単位で追い、NSGの実効判定を誤らないための実践リファレンス。

運用前提: Portal上のresource stateだけでなく、対象5-tupleのeffective state・route・security logs・new connectionを組み合わせてdata planeを確認します。SKU/limit/preview statusは変更されるため、導入時は末尾のcurrent Microsoft Learnも再確認してください。

NSG Rule Processingを理解するための前提

NSG ruleはdirectionごとにpriority昇順で評価され、最初のmatchでterminatingする。 評価条件はsource/destination address、source/destination port、protocolを中心とする5-tuple。

flow recordによるstateful動作のため、response trafficは開始方向の許可状態を利用する。 既存connectionに対してrule追加/変更/削除の効果が即時に見えないことがある。必ずnew connectionを作る。

subnet NSGとNIC NSGの両方があると、どちらか一方でDenyならend-to-end flowは成立しない。 Azure Virtual Network Manager security admin rulesがある環境ではNSGより先に評価されるため、NSGだけを見て結論を出さない。

通信や判断の流れを追う
SourceRouteNSG / PolicyWorkloadResponse

Control plane と data plane

Control planecontrol planeで見るのはNSG association、rule priority、ASG/service tag、security admin rules。変更履歴とIaC差分も判定根拠になる。
Data planedata planeで見るのは「このsourceからこのdestinationへ、このprotocol/portで、新規flowを作るとどうなるか」。片方向のconfigured rule一覧は結論ではない。

仕組み

inbound packetはAzure側で必要なaddress translation後のdestination contextでNSG評価される。outboundはpublic SNAT前のprivate source contextで評価される。

各enforcement pointでcustom rules→default rulesの順にmatchを探す。priority番号が同じdirection内の順序を決める。

Allowされたconnectionにはstateが作られ、return trafficは対応flowとして扱われる。

policy変更後の既存flowは継続し得る。security validationでは新しいsocket/sessionを生成する。

IP Flow Verify/NSG diagnosticsはflow-specificなAllow/Denyとruleを示すが、routeやapplication healthの証明には別ツールを使う。

Packet / decision path

障害時はresource一覧ではなく、同じsource/destination/port/protocolで各enforcement pointを順に追います。

  1. 新規flowの5-tupleを記録する。
  2. security admin ruleがある場合は先にそのactionを確認する。
  3. source/destinationに関係するsubnet/NIC NSGを列挙する。
  4. 各NSGでdirection/priority/match条件を順番に照合する。
  5. 判定後、route・Firewall・guest OS・applicationへpacket walkを継続する。

設計判断

判断点推奨理由
Priority spacing100,200,300のように将来挿入余地を残す。緊急ruleを既存rule全再採番なしで挿入しやすい。
Deny strategy広いDenyの前に必要なspecific Allowを配置し、例外理由を記録する。first matchなので順序誤りが直ちに障害になる。
Stateful test変更前後とも新規connectionを用いる。existing flowの継続をrule評価と混同しない。
Dual NSGsubnet+NICを採用する場合は責務を分ける。同じ意図のruleを二重管理するとdrift/診断コストが増える。

確認手順

Azure Portal / Network Watcher

  • Network Watcher → NSG diagnosticsでsource/destination/port/protocolを指定。
  • VM/NIC → Effective security rulesでsubnet/NIC/admin ruleの集約結果を確認。
  • 対象NSG rule一覧でpriorityとsource/destination objectの展開を確認。

Verification discipline

  • subscription / resource group / resource ID / NIC / direction / 5-tupleを記録する。
  • 同じ条件でbefore/afterを比較し、既存sessionとnew connectionを区別する。
  • configuration、effective state、logs、application resultを別々の証拠として残す。
  • 変更成功はcontrol-plane Succeededではなくobservable data-plane behaviorで判定する。
Azure CLI — read-only first
az network nsg rule list -g <rg> --nsg-name <nsg> -o table
az network nic list-effective-nsg -g <rg> -n <nic> -o jsonc
az network watcher test-ip-flow --direction <Inbound|Outbound> --protocol <TCP|UDP> --local <ip:port> --remote <ip:port> --vm <vm-resource-id>
PowerShell — read-only first
Get-AzEffectiveNetworkSecurityGroup -ResourceGroupName <rg> -NetworkInterfaceName <nic>
Test-AzNetworkWatcherIPFlow -NetworkWatcher <watcher> -Direction <Inbound|Outbound> -Protocol TCP -LocalIPAddress <ip> -LocalPort <port> -RemoteIPAddress <ip> -RemotePort <port> -TargetVirtualMachineId <id>

障害切り分け

症状疑う点証拠次の確認
同じruleなのに結果が違う既存flowか新規flowか、source ephemeral port、directionconnection再生成と5-tuple採取test条件を完全一致させる
NIC NSGではAllowsubnet NSGまたはsecurity admin ruleでDenyeffective rulesの全enforcement point片方だけのrule listで結論を出さない
IP Flow VerifyはAllowだが通信不可routing/NVA/guest firewall/listen状態Next hop、Connection troubleshoot、OS socketNSG以外へpacket walkを進める
ruleがmatchしないASG membership/service tag/prefix/port/protocolの認識違いeffective rule detailと実IPobjectが何に展開されるかを確認

変更時の確認と rollback

  • 変更したrule/priorityを元へ戻す前に、現在のeffective判定とnew-flow結果を保存する。
  • rollback後にnew-flowと既存flow双方を観測し、state expiration待ちが必要か判断する。

What changed recently

2026-09-10時点

NSG flow logsは新規作成できず、2027-09-30にretire予定です。新しい可視化設計はVNet flow logsを前提にし、既存NSG flow logsは移行計画を持たせます。

Official sources