我在尝试在 Internet 上查找某个 DNS 名称时遇到问题。出于某种原因,我一直面临 SERVFAIL 认为显示了正确的结果 - 就像 DNS 名称被解析两次(外部/本地?)。
我可以轻松查找其他任何内容,但是这个单一的 DNS 名称让我很头疼。我场中的其他服务器可以在此域上进行正常查找。
让我给你一些信息。
操作系统:Ubuntu 14(安装了 bind9)
/etc/resolv.conf:
nameserver 208.67.222.222 # opendns
nameserver 127.0.0.1
错误的查找:
# host whois.verisign-grs.com
whois.verisign-grs.com has address 199.7.48.74
whois.verisign-grs.com has IPv6 address 2001:503:5419:1000::74
Host whois.verisign-grs.com not found: 2(SERVFAIL)
如果我的 resolv.conf 中没有 opendns 条目,则错误可能是超时(通常是第一个答案)或 SERVFAIL。
本地查找工具是否会损坏,或者我的 DNS 查找是否会在某种程度上被阻止?
host
似乎按顺序查询 resolv.conf 中的每个名称服务器条目。这可能就是为什么SERVFAIL
当它请求您的本地 DNS 服务器时您得到一个答案和一个状态的原因。要避免这种行为,请指定要查询的服务器:
host whois.verisign-grs.com 208.67.222.222
不要忘记,这
resolv.conf
不是 BIND 的配置文件,而是您的机器知道将转发到哪个服务器的 DNS 请求。如果您想制作自己的 BIND 服务器应答,即使它不拥有记录,请设置一些转发器。
我试过我的 BIND 服务器也遇到了同样的问题:
dig @0 whois.verisign-grs.com
给了我一个 SERVFAIL 状态。dig @208.67.222.222 whois.verisign-grs.com
一个答案。刷新您的 DNS 缓存:
然后再次请求: