据我了解,如果需要,现在可以使用 Azure DNS 专用区域。您需要使用区域 vnet 集成将应用程序的流量指向连接到专用区域的 vnet。您还需要以下设置,这意味着来自 Web 应用程序的所有出站流量首先通过集成的 vnet 路由,并且 Azure 默认 DNS 服务器用于 DNS。
WEBSITE_DNS_SERVER 值为 168.63.129.16 WEBSITE_VNET_ROUTE_ALL 值为 1
https://docs.microsoft.com/en-us/azure/app-service/web-sites-integrate-with-vnet#azure-dns-private-zones
如果您不想使用 Azure DNS Private Zones,我认为您可以通过指示 Web App 使用特定的 DNS 服务器来获得类似的结果。这可以使用 WEBSITE_DNS_SERVER 和 WEBSITE_DNS_ALT_SERVER 应用程序设置来完成(这些值是您要使用的服务器的 IP 地址)。这是我能找到的关于使用这些设置的最权威的公开声明。
- 转到网络应用程序->设置->应用程序设置->应用程序设置部分
- 添加以下内容: (WEBSITE_NODE_DEFAULT) 应该已经存在。一个。WEBSITE_DNS_SERVER,其值具有主 DNS 服务器的 IP 地址。湾。WEBSITE_ALT_DNS_SERVER(可选),其值为第二个 DNS 服务器的 IP 地址。
- 然后保存设置并在门户中重新启动 webapp。
- 仔细检查 Web 应用程序实际上可以连接到 DNS 服务器:在 kudu 控制台中,运行: Nameresolver.exe [hostname-to-lookup] [dns-server-to-use] 第一个参数应该是您要查找的主机名,第二个参数是步骤 1 中的 DNS 服务器之一)如果超时,则说明您的 DNS 服务器的配置方式存在问题(防火墙等)
https://github.com/MicrosoftDocs/azure-docs/issues/13927#issuecomment-416382230
如果将这些设置与只能通过专用 IP 访问的 DNS 服务器一起使用,则需要再次使用区域 vnet 集成来连接到 vnet。如果 DNS 服务器在本地,则必须通过 VPN 或 ExpressRoute 上的集成 vnet 进行连接。