服务器2016年,DNS只有在通过私有IP地址请求时才会响应

我正在尝试在Azure IaaS中设置公共DNS服务器。 我已经成功创build了服务器,安装了DNS并configuration了我的授权区域。 我为TCP和UDP端口53configuration了端点。目前,Windows防火墙已closures以进行testing。

当我做nslookup,指定本地主机,一切工作正常。 但是,当我做一个nslookup指定公共IP地址,请求超时。

我应该采取什么措施来诊断问题?

如果我理解正确,你通过你的DNS服务器查找你的虚拟机的公共IP地址,并得到错误“DNS请求超时”。 我build议你可以采取以下步骤排除故障:

  1. 确保虚拟机上没有第三方防火墙软件。
  2. 确保你已经正确设置你的DNS服务器。
  3. 您可以使用nslookup的debuggingfunction来检查您计算机上的nslookup以查找networking问题。

〔实施例:

C:\Administrator>nslookup >set debug >[Your test IP address] 
  1. 如果你的networkingconfiguration是正确的,这个问题可能是由nslookup Tools问题造成的。 你可以使用'nosearch'和'srchlist ='

〔实施例:

 C:/>nslookup -nosearch <Test IP address> C:/>nslookup -srchlist= <Test IP address> 

如果以上所有内容都不能帮助您解决此问题,则可以提供更多关于如何testing的详细信息,如何设置DNS服务器和错误信息,以便我可以清楚地排除故障。

注意:你也可以参考这个链接在Azure虚拟机上设置公共DNS服务器。

我假设公用IP设置在Azure防火墙上,而不是VM上的vNIC上。 nslookup在虚拟机上运行时,如果networkingconfiguration不正确,则无法转到外部networking,然后再循环回虚拟机。 如果你在另一个独立的主机上执行它(无论是在Azure还是在你的局域网中),它是否工作?

我最终通过删除networking安全组并重新分配给网卡来解决此问题。