(免责声明:我不是Windows DNS管理员。尽管我确实有相当不错的DNS经验,但这没有任何意义。我正在与负责这些设备的管理员紧密合作,并且可以通过需要。)
我们遇到了一个问题,即我们无法在Windows Server 2012下添加指向BIND名称服务器的条件转发器。添加服务器的IP地址会导致验证错误: An unknown error occurred while validating the server.
查看BIND服务器上的查询日志,我们发现了一些相当有趣的东西:Windows DNS服务器正在查询. IN SOA
,即根名称服务器的SOA记录。完全没有查询example.com. IN SOA
。它尝试查询根权限,并且在收到的响应时不会继续REFUSED
。
client 192.168.203.20#59067 (.): query: . IN SOA - (192.168.208.201)
client 192.168.203.20#50553 (.): query: . IN SOA - (192.168.208.201)
client 192.168.203.20#55468 (.): query: . IN SOA - (192.168.208.201)
疯狂。为了幽默起见,我们在实验室中重现了这个问题。我下载了一个根区域的副本并配置了一个.
区域(注释了我的根提示),瞧瞧,这个错误不再发生。
我真的不明白这一点。我提供的权威名称服务器不必提供对的答案. SOA
,而且就目前的情况而言,我将不得不将该区域添加到我们所有的生产服务器中,以便与Windows 2012完美搭配。转发者仅应关注目标名称服务器是否对该区域具有权威性。
为什么会这样呢?
如果我们尝试忽略该错误(仍然单击“确定”),则会显示以下错误对话框:
查询日志仍然显示上游服务器仅在询问. IN SOA
。永远不会尝试查看服务器是否具有权威性example.com.
。
. IN SOA
),但是单击“确定”似乎可以工作(没有显示其他错误)。也许您收到的第二条错误消息与奇怪的验证行为无关?不Add-DnsServerConditionalForwarderZone
(PowerShell的)工作或产生一个更实用的错误讯息?