我目前有一个dnsmasq服务器运行在我的桌面Ubuntu15.04安装。我用它指向我网络上的本地设备。例如,我有将kerberos.dgourd.com链接到192.168.1.106 (我的桌面的IP地址)的记录。但是,这个名称永远不会被解析。
我设置了我的路由器发送三个DNS服务器:
在我的笔记本电脑上,也运行了Ubuntu15.04,我运行了nmcli dev show | grep DNS,以确保它使用了正确的名称服务器,并得到了如下结果:
IP4.DNS[1]: 192.168.1.106
IP4.DNS[2]: 8.8.8.8
IP4.DNS[3]: 8.8.4.4
IP4.DNS[4]: 192.168.1.1运行dig kerberos.dgourd.com会导致不返回记录:
; <<>> DiG 9.9.5-9ubuntu0.2-Ubuntu <<>> kerberos.dgourd.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 51586
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;kerberos.dgourd.com. IN A
;; Query time: 1 msec
;; SERVER: 127.0.1.1#53(127.0.1.1)
;; WHEN: Sat Aug 22 16:31:48 CDT 2015
;; MSG SIZE rcvd: 37但是,运行dig @192.168.1.106 kerberos.dgourd.com会返回正确的记录:
; <<>> DiG 9.9.5-9ubuntu0.2-Ubuntu <<>> @192.168.1.106 kerberos.dgourd.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 51972
;; flags: qr aa rd ra ad; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;kerberos.dgourd.com. IN A
;; ANSWER SECTION:
kerberos.dgourd.com. 0 IN A 192.168.1.106
;; Query time: 5 msec
;; SERVER: 192.168.1.106#53(192.168.1.106)
;; WHEN: Sat Aug 22 16:36:05 CDT 2015
;; MSG SIZE rcvd: 53在这一点上,我完全不明白为什么会发生这种情况。有时,我的计算机会自发地开始正确地解析这些地址,然后返回到忽略我的DNS服务器。有人对我下一步能做些什么来进一步调查这件事有什么建议吗?
发布于 2015-12-28 02:01:34
我相信这与NetworkManager控制DNS和DHCP有关(通过dnsmasq)。如果您可以在/etc/NetworkManager中编辑NetworkManager.conf,并将dns=dnsmasq替换为dns=192.168.1.106,那么它应该可以工作。当然,在尝试使用dig之前重新启动NetworkManager服务。
https://askubuntu.com/questions/664670
复制相似问题