我有一个简单的dnsmasq设置,但遇到一个错误。 特别是,下面的工作并不像我所期望的那样:ping普通域名失败,但ping一个本地限定的名字是有效的。 即:
$ ping xerox Request timeout for icmp_seq 0 .... (always times out) $ ping xerox.abc 64 bytes from 10.0.0.51: icmp_seq=0 ttl=64 time=0.233 ms .... (always works)
但是, host程序的查找按预期工作:
$ host xerox xerox has address 10.0.0.51 $ host xerox.abc xerox.abc has address 10.0.0.51
我想知道为什么普通名称不起作用,以及如何解决这个问题。
这是我的dnsmasqconfiguration:
bogus-priv local=/abc/ domain=abc dhcp-range=10.0.0.100,10.0.0.200,24h dhcp-option=option:router,10.0.0.1 dhcp-option=option:ntp-server,132.246.11.229,132.246.11.227 dhcp-option=19,0 # option ip-forwarding off dhcp-option=44,0.0.0.0 # set netbios-over-TCP/IP nameserver(s) dhcp-option=45,0.0.0.0 # netbios datagram distribution server dhcp-option=46,8 # netbios node type dhcp-host=xerox,10.0.0.51,infinite dhcp-option=vendor:MSFT,2,1i dhcp-authoritative local-ttl=21680 log-queries
顺便说一句,当我运行diff时,下面的行与hosts -v不同(虽然我不知道是否或为什么这可能是相关的):
13-14行
复印:
< ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 3769 < ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
xerox.abc:
> ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 45183 > ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
和21-22行
复印:
< ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 11111 < ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
xerox.abc:
> ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 42629 > ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
感谢您的阅读,我很感谢您能够提供的任何帮助。
答案很简单:
Mac OS X(从我testing的地方)caching了旧版的xerox查找与不同的IP。 我用dscacheutil -flushcache和dscacheutil -flushcache清理了caching。