333 字
2 分鐘
瀏覽次數
Web App DNS 解析異常紀錄(Public / Private 切換)
2026-04-15

結論#

同一個 Azure Web App 會解析到不同 IP,是因為「是否走 Private Link DNS」決定的。

適合用在哪裡#

  • Azure Web App 無法連線時排查
  • Private Endpoint / Private Link 設定驗證
  • 判斷流量是走內網還是外網
  • DevOps / Infra troubleshooting

流程步驟#

1. 使用 nameresolver 驗證 DNS 解析結果#

  • 在 Kudu 或 Web App console 執行 nameresolver.exe 查詢 domain
  • 觀察是否解析到 public IP(13.x.x.x)或 private IP(10.x.x.x)
  • 這一步是最快確認「流量路徑」的方式
Terminal window
nameresolver.exe website.azurewebsites.net

2. 判斷 Public vs Private DNS 行為#

  • 解析到 public:
    • domain → *.azurewebsites.net
    • IP 為 13.x.x.x
    • 表示走 Azure 公網
  • 解析到 private:
    • domain → *.privatelink.azurewebsites.net
    • IP 為 10.x.x.x
    • 表示走 Private Endpoint 關鍵差異在於 DNS 是否被「Private DNS Zone 覆蓋」
  • 若有建立 Private Endpoint:

    • Azure 會建立 privatelink DNS 記錄
  • 若 VNet 有綁 Private DNS Zone:

    • 會強制解析到內網 IP
  • 若沒有綁定:

    • 仍會走 public IP 簡單判斷:
  • 同一台機器解析結果不同 → DNS 路徑不同

  • 同一 domain 出現兩種結果 → DNS override 發生

補充#

  • Private DNS Zone 綁在 VNet 上才會生效(常見漏設定)
  • Azure Web App 沒有 VNet Integration 也可能被 DNS 影響
  • 同一 domain 在不同環境解析不同是正常現象,不是 bug

收尾#

看 IP 就知道你走哪條路,別再猜網路了,DNS 才是關鍵。

Web App DNS 解析異常紀錄(Public / Private 切換)
https://joyceowo.github.io/posts/343a78ea09fa809f97d2c221d3e00135/
作者
JoyceOwO
發佈於
2026-04-15
許可協議
CC BY-NC-SA 4.0