如何查找 DNS 查找失败的原因?

如何查找 DNS 查找失败的原因?

我运行一个为每个域设置了多个区域的服务器,并且一切似乎都在进行名称到 IP 的转换。

但是,当查询某些 ISP 使用的 DNS 服务器时,查找失败。

我如何才能找到问题的原因?

$ dig www.jahankitshop.com @8.8.8.8

; <<>> DiG 9.9.5-9+deb8u11-AtomixOS <<>> www.jahankitshop.com @8.8.8.8
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12621
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;www.jahankitshop.com.          IN      A

;; ANSWER SECTION:
www.jahankitshop.com.   14399   IN      CNAME   jahankitshop.com.
jahankitshop.com.       599     IN      A       84.241.0.113

;; Query time: 195 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Tue Jul 18 22:34:23 IRDT 2017
;; MSG SIZE  rcvd: 79


$ dig www.jahankitshop.com @217.218.155.155

; <<>> DiG 9.9.5-9+deb8u11-AtomixOS <<>> www.jahankitshop.com @217.218.155.155
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 16899
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.jahankitshop.com.          IN      A

;; Query time: 11 msec
;; SERVER: 217.218.155.155#53(217.218.155.155)
;; WHEN: Tue Jul 18 22:35:19 IRDT 2017
;; MSG SIZE  rcvd: 49

如您所见,Google 的 DNS 服务器(8.8.8.8)和许多其他 DNS 服务器都返回了所请求域的 IP 地址,但是,这个特定的 DNS 服务器(217.218.155.155)没有返回任何答案。

我怎样才能找到该问题的原因并解决它?

答案1

如果你不负责服务器217.218.155.155,那就什么都没有了可以做的,除了联系任何人。

为了排除您区域的任何问题,我通过ZoneMaster 测试引擎,有一件事很突出——您列出了两个名称服务器,ns1.jahankit.irns2.jahankit.ir它们都解析到同一个 IP 地址。这意味着您的名称服务器根本没有冗余,这通常被认为是一件非常糟糕的事情。但这本身不足以解释为什么某个解析器不处理您的域名,除非它可能在 ns1.jahankit.ir 停机时尝试从它获取区域文件,并缓存了负面结果。如果是这样,它应该在清除缓存后自行修复——同样,您除了联系服务器所有者之外什么也做不了。

答案2

坦白地说,您的名称服务器配置被各种劫持了。您之所以看到 DNS 服务之间的不同行为,是因为它们运行着不同的软件。Google 和 Comcast 更喜欢委托的父端,而其他公司使用的其他名称服务器软件(通常是 ISC BIND)最初会更喜欢父端数据,但最终会用在子端找到的 NS 记录替换这些 NS 记录。

问题 1:NS 记录不匹配

父母的 NS 记录与孩子的情况不一致。

$ dig +trace +additional jahankitshop.com NS

; <<>> DiG 9.9.5-9+deb8u10-Debian <<>> +trace +additional jahankitshop.com NS
;; global options: +cmd

<root and TLD nameservers snipped>

jahankitshop.com.       172800  IN      NS      ns1.jahankit.ir.
jahankitshop.com.       172800  IN      NS      ns2.jahankit.ir.
CK0POJMG874LJREF7EFN8430QVIT8BSM.com. 86400 IN NSEC3 1 1 0 - CK0Q1GIN43N1ARRC9OSM6QPQR81H5M9A NS SOA RRSIG DNSKEY NSEC3PARAM
CK0POJMG874LJREF7EFN8430QVIT8BSM.com. 86400 IN RRSIG NSEC3 8 2 86400 20170724044840 20170717033840 5528 com. jdcKCs8K8hN+9woKgWstJqkhBKOGhmsuSPhovU/SY3CkMWlwI6zclnPG FURMIelNnzIF3SawFa1iKMxCbvAy2/PMc1kpw2zNTR1RVTxOUX+xW1M6 4zP5nbacVe6Gt2eHltBViyMgu7s1DnKVyo/dLQDLtbv23QcXXgnAvKOt q9g=
D6P3MFC6O78JKHA3RVV8L6QOEKF29KOM.com. 86400 IN NSEC3 1 1 0 - D6P4MCUG3Q6OF15APR8G4RANFGV9PI69 NS DS RRSIG
D6P3MFC6O78JKHA3RVV8L6QOEKF29KOM.com. 86400 IN RRSIG NSEC3 8 2 86400 20170722042100 20170715031100 27302 com. Agmr819TQlkj5Fpdxh6RfNfkNySI5ox6UvzfQYQ2Pi/SJjwmd5QJdh8B tRXjIOmIbk/V0nFL9FdQSeRDEOshv8lJHZBlTxY+RVS5vYL1NMw53gWN Ch3019p0AAyVai9XQF+hyH+/OlGG8VhHrA97uR4F8HW4g4Fb7UIF2IOs 3iU=
;; Received 577 bytes from 192.55.83.30#53(m.gtld-servers.net) in 17 ms

jahankitshop.com.       86400   IN      NS      ns1.dnsfa.xyz.
jahankitshop.com.       86400   IN      NS      ns2.dnsfa.xyz.
;; Received 90 bytes from 88.99.139.8#53(ns2.jahankit.ir) in 108 ms

问题 #2:子名称服务器上定义的 NS 记录缺少 A 记录。

$ dig ns1.dnsfa.xyz A ns2.dnsfa.xyz A  | grep status
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 44257
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 9736

相关内容