我不清楚 Windows DNS 服务器应该如何使用附加记录(或附加部分)。
通过数据包嗅探我注意到以下情况:
查询 domain.com 的根服务器
响应:.com 的 gltd ns 服务器(带有附加记录)
查询 domain.com 的 GLTD 服务器
响应:domain.com 的 ns1.server.net(和 ns2)(带有附加记录)
查询 ns1.server.net 的根服务器
响应:.net 的 gltd ns 服务器(带有附加记录)
....
我感到困惑的是,为什么 Windows DNS 服务器不使用 ns1.server.net 的附加记录中的 IP - 但它却去查询根服务器?(未禁用缓存)
答案1
发生这种情况是出于安全原因 - 防止 DNS 欺骗(缓存中毒)。
您的 DNS 服务器知道这些 GTLD 服务器对 .com 具有权威性,因为它刚刚从根服务器获得了对此的引用。因此,它接受这两个 NS 记录,因为它们的记录名称位于 .com 下。
但是它不知道这些 GTLD 服务器是否对 .net 也具有权威性。因此它无法信任 .net 下具有记录名称的附加记录(它们可能是缓存毒药),并且它会从根目录重新启动以确保安全。
答案2
我相信我找到了控制此功能的设置: http://support.microsoft.com/kb/316786
“安全缓存防污染设置”是启用的设置之一。