我注意到有几家服务提供商正在为其客户的域运行DNS服务,并为该区域设置了NS名称,并由权威名称服务器(在权限部分/ NS和SOA记录中)返回,这些服务不匹配上游服务器(例如TLD服务器)返回的NS名称,用于查找。
示例:
$ dig the-domain-name-here.com NS
; <<>> DiG 9.4.2-P1 <<>> the-domain-name-here.com NS
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 7844
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 2
;; QUESTION SECTION:
;the-domain-name-here.com. IN NS
;; ANSWER SECTION:
the-domain-name-here.com. 172370 IN NS ns1.service-provider-here.net.
the-domain-name-here.com. 172370 IN NS ns2.service-provider-here.net.
;; ADDITIONAL SECTION:
ns1.service-provider-here.net. 7200 IN A 192.168.100.1
ns2.service-provider-here.net. 7200 IN A 192.168.100.2
;; Query time: 65 msec
;; SERVER: 192.168.0.1#53(192.168.0.1)
;; WHEN: Wed Mar 11 19:44:00 2009
;; MSG SIZE rcvd: 118
$ dig @ ns1.service-provider-here.net。 the-domain-name-here.com
; <<>> DiG 9.4.2-P1 <<>> @ns1.service-provider-here.net the-domain-name-here.com
; (1 server found)
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48010
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 0
;; WARNING: recursion requested but not available
;; QUESTION SECTION:
;the-domain-name-here.com. IN A
;; ANSWER SECTION:
the-domain-name-here.com. 86400 IN A 192.168.100.3
;; AUTHORITY SECTION:
the-domain-name-here.com. 86400 IN NS ns1.different-trade-name.net.
the-domain-name-here.com. 86400 IN NS ns2.different-trade-name.net.
;; Query time: 68 msec
;; SERVER: 192.168.100.1#53(192.168.100.1)
;; WHEN: Wed Mar 11 19:46:00 2009
;; MSG SIZE rcvd: 100
gTLD服务器说名称服务器是ns1.service-provider-here.net,当我们在该服务器上查找名称时,它会给出权威答案,但在权限部分泄漏了不同的NS名称(ns1.different- trade-name.net)。
以这种方式配置了数千个域。它似乎没有引起任何问题,但似乎是错误的。
这真的重要吗?是否会出现这样的情况:解析器/客户端会进行额外查找甚至无法解析名称?
答案 0 :(得分:3)
嗯,答案取决于观点。
从技术上讲,毫无疑问,父母和区域之间的任何差异都是错误的。它永远不应该发生(某些注册管理机构使用自动工具来检查,例如.fr
中的Zonecheck)。
实际上,它经常发生。最常见的原因是人们更改了他们区域中的NS记录,忘记告诉注册管理机构(或注册服务商,如果注册管理机构强迫您通过中间人)有关更改。
真的重要吗?好吧,正如你所说,只要两组之间存在非空交集,它就应该有效。但依靠它是危险的,因为再一次改变,两组可能完全分开。因此,接受差异并不是一个好主意。
从法律上讲,儿童区总是正确的,父母的NS记录不具有权威性。解析器必须用他们在子区域中找到的列表替换委托。
答案 1 :(得分:2)
如果父母有有效记录引用对该区域具有权威性的DNS服务器,那么解决方案应该主要起作用。
如果您有不同的记录和其他一些错过的配置,我至少可以想到一个可能存在问题的案例。
问题与名称服务器在区域更新时如何发出通知有关。例如,当您在主DNS服务器上使用bind时,更新区域然后重新加载,bind将向区域中列出的所有服务器发送更新通知。如果他们是另一个权威服务器在主区域中没有NS记录,那么它将不会获得通知并且将具有较旧的数据。如果指向此服务器的父母没有获得更新,那么您可能会遇到问题,因为该服务器将提供数据结果。
另外,请记住,存在“水平分割”DNS这样的问题。有时,您需要向网络内部的主机提供区域的不同视图,以及向公众显示的内容。在比较名称服务器记录时,请确保从相同的角度查看区域。