我最近全新安装了 Ubuntu 15.10,但在访问本地网络上的主机时遇到了问题。
举个例子:
主机打印机.mydomain.local
运行完美,返回实际主机名(打印机是 cname)和相应的 IP 地址。
尝试连接甚至 ping 此主机名均不起作用:
ping 打印机.mydomain.local
返回:ping:未知主机printer.mydomain.local
但是“ping 打印机”确实有效。
已经尝试注释掉 /etc/NetworkManager/NetworkManager.conf 中的 dnsmasq 行,并将 mydomain.local 添加到 /etc/avahi/avahi-daemon.conf
一切都无济于事。我错过了什么?
Ubuntu 12.04 上的本地 DNS 服务器是 bind9
答案1
看起来我找到了解决方案:编辑 /etc/nsswitch.conf 并更改“hosts”行。默认值是:
“主机:文件 mdns4_minimal [NOTFOUND=return] dns myhostname”
将选项“dns”向前移动,使其位于“mdns4_minimal”选项之前,以解决问题。
问题发生的实际原因是,我的家庭网络域名是 .local(在 Windows 环境中工作时间过长导致的),但由于 .local 在零配置设置中使用了 mDNS,所以它只使用了 mDNS,而不是尝试使用 DNS 进行解析。
这是为了减少对互联网上根服务器的 .local 查询而设计的。