为什么 DNS 服务器不能解析任何以 .io 结尾的域?

spu*_*der 10 domain-name-system internal-dns windows-server-2008-r2

我有两个 Windows 域控制器。

10.10.10.10 主要 (win 2008 r2)
10.10.10.20 副本 (win 2012 r2)

第二个配置为第一个的副本。

大约每周一次,主 DC 会对大多数 .io域进行负面缓存。这使得公司中的任何人都无法访问以下网站:

厨师
.io
packer.io
雅虎.io github.io

奇怪的是,我仍然可以访问一些 .io 页面,例如 github.io 上的页面

spuder.github.io/

解决方法是将 RDP 插入 DNS 服务器并运行dnscmd /clearcache。这可以解决问题 7 到 10 天。

进一步的症状

  • 仅影响主域控制器(辅助域控制器和其他域控制器可以很好地解析这些站点)
  • 谷歌 dns 服务器也可以工作
  • 通常发生在周三上午 11 点左右。

我对windows不是很熟悉,但这里有我尝试过的东西

  • 查看日志,我只看到以下几行看起来很有趣

8:15AM
The DNS server wrote version 4638 of zone 254.10.in-addr.arpa to file 254.10.in-addr.arpa.dns..in-addr.arpa to file 254.10.in-addr.arpa.dns.

8:16AM
A more recent version, version 4639 of zone 254.10.in-addr.arpa was found at the DNS server at 10.254.40.51. Zone transfer is in progress.ic replication between domain controllers in a common domain or forest. By installing multiple domain controllers in a domain running DNS Server, you can ensure that DNS will continue to work when a domain co
Run Code Online (Sandbox Code Playgroud)
  • 验证 .io 域没有正向或反向查找区域
  • 确保 hosts 文件中没有任何内容阻止 .io 域
  • 比较ipconfig /displaydns所有域控制器上的输出

我还有什么可以调查的,以找出为什么 dns 缓存如此可预测地不断损坏?有没有windows dns设置可以在做zone transer时强制刷新缓存

更新
我已经将范围缩小到这样一个事实,即我经常在周三会议之前从有线切换到无线。无线有1个windows 2008 dns服务器和1个windows 2012 dns服务器。当 2008 服务器被选为主服务器时,问题又回来了。解决方法是运行此dnscmd /clearcache. 由于 2008 服务器即将消失,我相信这个问题会自行解决。

mic*_*ger 1

考虑更新您的 root.hints 文件。也许它\xe2\x80\x99s 指向一些旧的根名称服务器(由于某种原因)\xe2\x80\x99t 返回.io 域。

\n\n

也许您遇到了阻止访问它们的路由问题(即:您\xe2\x80\x99将它们运行的​​IP范围黑洞化),从而阻止查找其中的域。这是我的赌注——也许您有针对某个国家或 IP 块的防火墙规则。使用下面的结果来检查您的防火墙或对 .io TLD 服务器进行 dig/nslookup(您可以从http://www.isc.org/downloads/下载适用于 Windows 的二进制文件)

\n\n
# dig +trace +identify git.io\n...\nio.                     172800  IN      NS      b0.nic.io.\nio.                     172800  IN      NS      a0.nic.io.\nio.                     172800  IN      NS      a2.nic.io.\nio.                     172800  IN      NS      ns-a1.io.\nio.                     172800  IN      NS      ns-a3.io.\nio.                     172800  IN      NS      c0.nic.io.\n...\n
Run Code Online (Sandbox Code Playgroud)\n\n

您可以直接访问所有这些 DNS 服务器吗?例如,您的 DNS 服务器可能会重复使用列表中的第一个。请记住,此列表在某个时间点(现在)会发生变化,但应该为您提供一个初始点,以查看是否可以访问 .io 根名称服务器。

\n\n
# for i in b0.nic.io a0.nic.io a2.nic.io ns-a1.io ns-a3.io c0.nic.io; do host $i; done\nb0.nic.io has address 65.22.161.17\nb0.nic.io has IPv6 address 2a01:8840:9f::17\na0.nic.io has address 65.22.160.17\na0.nic.io has IPv6 address 2a01:8840:9e::17\na2.nic.io has address 65.22.163.17\na2.nic.io has IPv6 address 2a01:8840:a1::17\nns-a1.io has address 194.0.1.1\nns-a1.io has IPv6 address 2001:678:4::1\nns-a3.io has address 74.116.178.1\nc0.nic.io has address 65.22.162.17\nc0.nic.io has IPv6 address 2a01:8840:a0::17\n
Run Code Online (Sandbox Code Playgroud)\n\n

如果您\xe2\x80\x99 使用转发器,请直接测试对这些转发器的 nslookup。如果它没有返回,请联系运行它们的人(您的 ISP)。

\n\n

====\n更新:根据您的更新,您注意到在更改 ISP 时会发生这种情况,我猜您的一个连接正在使用 IPv6,而另一个连接仅支持 IPv4?它可能会缓存 IPv6 返回地址,但一旦切换连接就无法访问该地址。

\n