我有一台作为第三级域控制器运行的 Windows 2016 服务器,我看到的问题是,当我从 DNS 管理器运行 nslookup 时,它会返回“默认服务器:未知”和正确的本地 IP 地址。它应该返回主机服务器的 fqdn。此 dns 服务器是作为域控制器安装的一部分安装的。如果我打开单独的 cmd 提示符并键入 nslookup,它会返回“默认服务器:”这很好,并且是本地服务器 IP 地址,这也是我所期望的。
我的问题是:为什么 DNS 管理器中的 nslookup 找不到本地服务器的 fqdn?
答案1
当您从 DNS 管理器启动 nslookup 时,nslookup 将使用绑定到 DNS 服务器的第一个 ip 地址(如 DNS 服务器属性的“高级”选项卡上所示)连接到 DNS 服务器,该地址是 IPv6 地址。
当您从命令提示符启动 nslookup 时,它会使用在服务器 NIC 的 DNS 客户端设置中配置为主 DNS 服务器的 IPv4 地址连接到 DNS 服务器。
如果您没有包含服务器 IPv6 PTR 记录的 IPv6 rDNS 区域,那么从 DNS 管理器启动 nslookup 时会出现这种情况。Nslookup 无法根据 IPv6 地址解析服务器的主机名,因为不存在 IPv6 rDNS 区域和 PTR 记录,因此 nslookup 报告“默认服务器:未知”。
因为您确实有一个包含服务器的 IPv4 PTR 记录的 IPv4 rDNS 区域(从命令提示符启动的 nslookup 的输出证明),所以当您从命令提示符启动 nslookup 时,nslookup 能够从 IPv4 PTR 记录解析服务器的主机名。
您所看到的是预期的行为。