以前,我仅使用“hostname”(其中“hostname”是机器的名称)即可解析本地网络上机器的 IP 地址。出于某种原因,似乎如果不添加“.local”后缀,我就无法再解析机器的地址。
如果我尝试“ping hostname”,我会得到“无法找到主机...”的提示,但如果我尝试“ping hostname.local”,机器就会按预期进行 ping 操作。
这似乎发生在我网络上的每台机器上。我检查了所有主机名,没有一个主机名后附加“.local”。此外,如果我尝试 ping 我当前所在的机器,所有主机名都将仅解析为“hostname”。
据我所知,我的网络没有任何变化。有人知道这可能是什么原因吗?可能是整个网络的问题,还是这听起来像是每个机器的问题?我试过的机器运行的是 Windows、OS X 和 Debian。我使用的路由器是 Netgear R7000。
答案1
我一直不知道是什么变化导致了这种情况,但我最好的猜测是,在某个时候,我的路由器不再将其.local
作为通过 DHCP 配置的机器的搜索域。我刚开始使用它hostname.local
来连接到其他本地机器。
但是,如果您希望本地主机无需 即可解析,则有一个解决方法.local
。只需进入每台机器的 DNS 设置并添加.local
为搜索域。或者,如果您的路由器支持,请.local
在路由器的 DHCP 设置中添加为搜索域。
另请注意,无论哪种情况,.local
DNS解析都是通过移动DNS。