我家里网络上的一台工作站时不时会遇到 DNS 解析问题和超时。这是无缘无故发生的(上周还运行正常)。
网络设置如下:
网络地址 192.168.50.0/24 默认网关:192.168.50.254。ISP 提供一体化路由器(支持 DSL、DHCP、DNS 等),但仅启用路由。- DHCP/DNS:192.168.50.1 带有 bind9 和 dhcpd 的 Ubuntu 12.04.4 LTS 服务器。
DHCP 配置:
root@server:~# cat /etc/dhcp/dhcpd.conf
authoritative;
# domain.com is an existing domain that I own
option domain-name "home.domain.com";
option domain-name-servers 192.168.50.1;
option netbios-name-servers 192.168.50.1;
ddns-updates on;
ddns-update-style interim;
ignore client-updates;
update-static-leases on;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
include "/etc/dhcp/home_rndc.key";
# content of home_rdnc.key :
# key "rndc-key" {
# algorithm hmac-md5;
# secret "...";
# };
zone home.domain.com. {
primary 127.0.0.1;
key "rndc-key";
}
zone 50.168.192.in-addr.arpa. {
primary 127.0.0.1;
key "rndc-key";
}
subnet 192.168.50.0 netmask 255.255.255.0 {
range 192.168.50.50 192.168.50.150;
option routers 192.168.50.254;
host ZOTAC {
hardware ethernet aa:bb:cc:dd:ee:ff;
fixed-address 192.168.50.10;
}
}
无论操作系统是什么(Android、Linux 甚至 Win8),该设置在所有连接的设备上运行良好,除了一个 Ubuntu 14.04 LTS 盒子(实际上是具有静态 IP 分配的盒子)。
所有连接都正常,但 Chrome/Firefox 中的 DNS 解析会随机空闲/超时,即使能正常工作,速度也非常慢。我尝试禁用 dns-masq,但没有成功。
即使手动设置 DNS 也无法改变任何事情(尝试了各种外部 DNS 提供商但没有成功)。
我可能遗漏了一些东西,但我不知道是什么,而且我真的想避免重新安装那台机器。
答案1
好吧,我终于搞清楚了:
我已经更改了 nssswitch.conf 中名称解析提供程序的顺序,并且它在 DNS 之前执行 WINS 查找。
我变了 :
hosts: files myhostname mdns4_minimal [NOTFOUND=return] wins dns mdns4
到
hosts: files myhostname mdns4_minimal [NOTFOUND=return] dns mdns4 wins
我的 DNS 解析也恢复正常了。让我吃惊的是,这个配置以前工作得很好,但至少我的问题解决了。