晚上好!我正在尝试在工作中创建一个高可用性环境,为此我设置了一个安装有 2 台服务器的小型实验室;一台装有 WS 2008 R2,另一台装有 WS 2012 R2(与真实环境相同,但为虚拟环境)。域控制器和 DNS 已成功安装在两者上,并且复制没有问题
- 服务器 1(主服务器),WS 2008 R2,IP=172.16.200.10/24,dns 主服务器=172.16.200.20,辅助服务器=环回
- 服务器 2(辅助),WS 2012 R2,IP=172.16.200.20/24,dns 主=172.16.200.10,辅助=环回
我没有使用 AD 集成 DNS 区域,而是配置了主/次区域。问题出在客户端,如果我对主 DNS 进行查询,它工作正常,当主 DNS 关闭时,即使经过长时间等待,我也没有收到来自次 DNS 的响应,ipconfig /flushdns
也不起作用,重新启动也不起作用。我是否做了一些错误的配置?
repadmin /showrepl
我使用命令和获得了良好的响应dcdiag /test:dns /dnsbasic
,似乎没有发现任何错误。有趣的是,当我使用 Linux 时,我收到了来自辅助 DNS 服务器的响应。
先感谢您。
答案1
您可以强制 nslookup 使用您可能需要的 DNS 服务器,方法是输入:
nslookup anycomputer yourDNSserver
或者互动:
nslookup server yourDNSserver anycomputer
当然,这并不能作为故障回复测试,但至少您会发现您的客户端是否可以从您的辅助 DNS 服务器获得答案。
顺便说一句,我对此不太确定(也找不到文档来确认或放弃),但 Powershell 命令Resolve-DnsName
应该返回到辅助 DNS 服务器。根据我的测试,这是正确的,但同样,我找不到文档。
答案2
Windows 内置的 nslookup 不会“从不”使用辅助 DNS IP 配置来查找(但它实际上有效 - 如果您 ping 主机名,它将显示 IP)。
我发现这很困难,只有在我安装了 BIND 后才发现它有自己的 nslookup 版本 - 它返回主机名的 IP 地址并显示辅助 DNS 服务器提供了该信息。尝试 BIND 的 nslookup。