在我的 Windows XP 工作站上,我可以在 DNS 中找到我想要连接的机器nslookup:
nslookup wolfman
Server: dns.company.com
Address: 192.168.1.38
Name: wolfman.company.com
Address: 192.168.1.178
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试连接到那台机器时,我收到一条错误消息,告诉我找不到该机器(即,无法在 DNS 中查找):
C:\> ping wolfman
Ping request could not find host wolfman. Please check the name and try again.
Run Code Online (Sandbox Code Playgroud)
如果我直接使用 IP 地址,我可以连接:
C:\> ping 192.168.1.178
Pinging 192.168.1.178 with 32 bytes of data:
Reply from 192.168.1.178: bytes=32 time=41ms TTL=126
Reply from 192.168.1.178: bytes=32 time=41ms TTL=126
Reply from 192.168.1.178: bytes=32 time=44ms TTL=126
Reply from 192.168.1.178: bytes=32 time=38ms TTL=126
Run Code Online (Sandbox Code Playgroud)
我可以通过在我的hosts文件中添加一个条目来解决这个问题,但我宁愿找出发生这种情况的原因。问题是暂时的,一天中的大部分时间我都可以很好地连接到机器。
这怎么可能?
ETA:为简洁起见,我省略了这一点,但有人要求: …
我有许多加入 Windows 2012 R2 域的多宿主 Windows 10 客户端 VM。Ethernet1 与域控制器(没有转发器或访问根服务器)连接到 LAN,Ethernet2 连接到可以访问 Internet 的 LAN,Ethernet0 和 Ethernet3 都断开了媒体连接。来自域控制器的记录查询返回得很好,但来自 Internet 的记录查询需要 10 秒加上我的 ISP 的 DNS 服务器返回响应所需的时间。如果我直接通过nslookup名称查询我的 ISP 的 DNS 服务器会被迅速解析(< 1 秒),如果我只是在nslookup没有指定 DNS 服务器的情况下运行,则查询超时并且名称永远不会解析,如果我尝试 ping DNS 名称它在解析名称之前需要 > 10 秒。
我环顾了 Technet,但似乎还没有关于 Windows 10 的任何文档。我发现的最好的是:
http://blogs.technet.com/b/networking/archive/2009/06/26/dns-client-resolver-behavior.aspx http://blogs.technet.com/b/stdqry/archive/2011/12 /15/dns-clients-and-timeouts-part-2.aspx
这表示我应该期望我的客户端查询 Ethernet1 的主 DNS 服务器,等待 1 秒响应超时,然后查询 Ethernet1 的辅助 DNS 服务器和 Ethernet2 的主 DNS 服务器,但这似乎不是正在发生。该文档继续说,在 10 秒后(以及更多 3 轮超时更长的 DNS 查询),所有适配器的 DNS 解析都将完全失败,但客户端的行为给人的印象是它甚至在尝试之前花费了 10 秒将 DNS 服务器用于第二个适配器。
如果没有我(或你)打开 …