Scope: 設計・運用で誤りやすい点を優先して整理。SKU/region/limitsは変更されるため、実装時はリンク先のcurrent Microsoft Learnを再確認してください。
Overview
custom DNS VMを運用せず、Azure VNetとon-premises間のDNS query forwardingをmanaged serviceで実現する。
Key technical points
- inbound endpointはAzure側private DNSを外部から引く入口、outbound endpointはforwarding rulesetで外部DNSへ送る出口。
- rulesetを複数VNetへlinkし、hub-spoke全体へconditional forwardingを配布できる。
- DNS client設定を変更せずAzure-provided DNSと組み合わせる設計が可能。
Design guidance
- Private Endpoint問題の多くはrouteより先にDNSを疑う価値がある。FQDNの最終A/AAAAまで追う。
- public zone、privatelink zone、on-prem conditional forwarderを混ぜず、authorityを明確にする。
- network private化とresource public access disableを別checkとして扱う。
Operations checklist
- clientが利用するDNS serverを確認する。
- FQDNのCNAME/A/AAAA chainとPrivate DNS zone linkを確認する。
- route/NSGはresolved private IPを基準に確認する。
Common pitfalls
- Private Endpointを作っただけでDNSが自動的に全networkから解決できると思う。
- public zoneを誤ってprivate zoneで上書きする。
Verification pattern
Control plane
resource state、association、policy、route/BGP configが期待通りかを確認。
resource state、association、policy、route/BGP configが期待通りかを確認。
Data plane
同一5-tupleまたは実application journeyで到達性・latency・security判定を実証。
同一5-tupleまたは実application journeyで到達性・latency・security判定を実証。
Observability
diagnostic logs / flow logs / Network Watcherで実際の判定とpathを残す。
diagnostic logs / flow logs / Network Watcherで実際の判定とpathを残す。
Rollback
設定を戻した後のroute convergence、DNS cache、existing sessionまで確認。
設定を戻した後のroute convergence、DNS cache、existing sessionまで確認。