DNS 查找 whois.verisign-grs.com 返回 SERVFAIL

DNS 查找 whois.verisign-grs.com 返回 SERVFAIL

我在尝试在互联网上查找某个 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 查找是否在某种程度上被阻止了?

答案1

host似乎按顺序查询 resolv.conf 中的每个名称服务器条目。这也许就是为什么SERVFAIL当它请求您的本地 DNS 服务器时,您会得到答案,然后得到状态。

为了避免该行为,请指定您要查询的服务器:

服务器是一个可选参数,它是主机应该查询的名称服务器的名称或 IP 地址,而不是 /etc/resolv.conf 中列出的服务器。

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 缓存:

sudo rndc flush

然后再次请求:

dig @0 whois.verisign-grs.com +short
199.7.59.74

相关内容