DNS服务器上的NS记录不匹配

时间:2015-08-11 11:20:51

标签: dns nameservers

我在DNS名称服务器配置方面存在一些问题,并且DNS NS记录不一致。

例如域名zzpeter.nl:
执行whois zzpeter.nl时,名称服务器是dns1.movenext.nl和dns2.movenext.net。
但在执行dig ns zzpeter.nl时,它会返回ns1.undeveloped.com和ns2.undeveloped.com。

您可以真正了解执行dig +trace ns zzpeter.nl时发生的情况:

; <<>> DiG 9.8.3-P1 <<>> +trace ns zzpeter.nl
;; global options: +cmd
.           9078    IN  NS  e.root-servers.net.
.           9078    IN  NS  g.root-servers.net.
.           9078    IN  NS  d.root-servers.net.
.           9078    IN  NS  m.root-servers.net.
.           9078    IN  NS  k.root-servers.net.
.           9078    IN  NS  j.root-servers.net.
.           9078    IN  NS  c.root-servers.net.
.           9078    IN  NS  l.root-servers.net.
.           9078    IN  NS  b.root-servers.net.
.           9078    IN  NS  f.root-servers.net.
.           9078    IN  NS  i.root-servers.net.
.           9078    IN  NS  a.root-servers.net.
.           9078    IN  NS  h.root-servers.net.
;; Received 228 bytes from 8.8.8.8#53(8.8.8.8) in 10 ms

nl.         172800  IN  NS  ns5.dns.nl.
nl.         172800  IN  NS  ns-nl.nic.fr.
nl.         172800  IN  NS  nl1.dnsnode.net.
nl.         172800  IN  NS  sns-pb.isc.org.
nl.         172800  IN  NS  ns4.dns.nl.
nl.         172800  IN  NS  ns2.dns.nl.
nl.         172800  IN  NS  ns3.dns.nl.
nl.         172800  IN  NS  ns1.dns.nl.
;; Received 485 bytes from 192.36.148.17#53(192.36.148.17) in 17 ms

zzpeter.nl.     7200    IN  NS  dns1.movenext.nl.
zzpeter.nl.     7200    IN  NS  dns2.movenext.net.
;; Received 103 bytes from 193.176.144.5#53(193.176.144.5) in 5 ms

zzpeter.nl.     3600    IN  NS  ns1.undeveloped.com.
zzpeter.nl.     3600    IN  NS  ns2.undeveloped.com.
;; Received 79 bytes from 80.247.175.10#53(80.247.175.10) in 2 ms

我可以从挖掘跟踪调用中获取已配置的名称服务器并将其作为人工处理,但是还有一种方法可以以我可以以编程方式处理的方式检索在注册器中配置的名称服务器吗?

dig ns zzpeter.nlnslookup -type=ns zzpeter.nlhost -t ns zzpeter.nl都返回错误的未开发的域名服务器......

1 个答案:

答案 0 :(得分:1)

注册商/注册管理机构在其数据库中保留的内容是在DNS之外,并且没有标准的方法来实现它。但是您所考虑的并不是真的,而是父区域中配置的名称服务器。那些你可以通过询问父区域的名称服务器来获得。这正是dig +trace输出的倒数第二步所发生的事情。

查找任意域名的父区域并不像人们首先想到的那么简单。如果您不介意Perl,您可以找到在Zonemaster模块中挑选出父级和子级名称服务器的代码。您可以从CPANGithub获取这些内容。或者你可以像这样使用它:

perl -MZonemaster -E 'say for @{Zonemaster->zone("zzpeter.nl")->glue}'