我们有一个客户,我们为其托管了一个网站 (blog.foobar.es)。我们不管理 foobar.es 的 DNS 设置,我们只是告诉他们将 blog.foobar.es 指向我们的网络服务器的 IP。
我们注意到有时我们无法浏览 blog.foobar.es,但我们可以浏览该服务器上的其他网站。
使用 host(1) 进行一些故障排除后发现了一些有趣的事情:
$ host blog.foobar.es 8.8.8.8
Using domain server:
Name: 8.8.8.8
Address: 8.8.8.8#53
Aliases:
Host blog.foobar.es not found: 3(NXDOMAIN)
,即 8.8.8.8,这是 Google 的公共 DNS 服务器之一。但是,有时同一台服务器也能正确解析该名称 (!)。
另一件有趣的事情是,我们的 ISP 的 DNS 服务器有时会说:
$ host blog.foobar.es 80.58.61.250
Using domain server:
Name: 80.58.61.250
Address: 80.58.61.250#53
Aliases:
blog.foobar.es has address x.x.x.x
Host blog.foobar.es not found: 3(NXDOMAIN)
我不太明白。我使用 dig(1) 进行了挖掘,发现他们为 foobar.es 设置了 SOA 记录:
$ dig foobar.es
; <<>> DiG 9.7.0-P1 <<>> foobar.es
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 59824
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;foobar.es. IN A
;; AUTHORITY SECTION:
foobar.es. 86400 IN SOA dns1.provider.es. root.dns1.provider.es. 2011030301 86400 7200 2592000 172800
;; Query time: 78 msec
;; SERVER: 80.58.61.250#53(80.58.61.250)
;; WHEN: Thu Mar 3 16:16:19 2011
;; MSG SIZE rcvd: 78
...我对此完全不熟悉。
有想法吗?
由于我们无法控制 DNS,因此我们实际上不能做很多事情,但我们希望为客户指明正确的方向......
答案1
SOA 记录中的第一个条目应该是托管该区域的 DNS 服务器之一(这些服务器被称为“权威服务器”,它们是实际提供信息的设备;它们可能是自己的系统,也可能是 ISP 或注册商);在这种情况下,它是否dns1.provider.es.
与域的 WHOIS 条目中提供的内容相匹配?
另一件要检查的事情是dig foobar.es -t NS
;这应该指向托管该区域的 DNS 服务器。对这些服务器执行相同的查找,并确保它们返回相同的信息。
换句话说,WHOIS 条目中的名称服务器应指向与“NS”记录完全相同的位置,并且 SOA 记录中的名字也应指向其中一个服务器。
这些指针的问题可能会导致您所看到的传递解析问题类型。
编辑:有许多可用的在线工具,您可以指向一个域名,并将自动运行部分或全部检查,并警告您任何不一致的情况。