(免责声明:我不是 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
根本没有查询。它尝试查询 root 权限,并且在收到 的响应时不会继续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.
.
我试图在 Windows 2012 和 Windows 2012 R2 上重现这一点,但无法获得相同的最终结果。
我可以确认初始验证错误(验证服务器时发生未知错误。),我可以看到奇怪的查询
. IN SOA
,但此时单击“确定”似乎可以工作(没有显示更多错误并且转发区域是添加)。您遇到的第二条错误消息(尝试添加条件转发器时出现问题。发生区域配置问题。)似乎与奇怪的验证行为无关。
我无法真正说出它为什么要根据查询进行验证,
. IN SOA
但这似乎主要是一个外观问题,因为尽管验证失败,但您并没有被阻止继续进行。我面临同样的问题,并解决了感谢上帝的问题。问题在于主域中 NIC 卡上的 DNS IP 必须在首选(主域 IP)中,而对于所有辅助域,替代方法是(辅助 DC):在首选(辅助域 IP)中替代方案是(初级 DC)。尝试此解决方案并发送您的反馈。谢谢。