![nslookup 显示错误数据](https://linux22.com/image/654980/nslookup%20%E6%98%BE%E7%A4%BA%E9%94%99%E8%AF%AF%E6%95%B0%E6%8D%AE.png)
我目前是一名管理员,有大约 150 个 Windows 系统在运行。前任管理员在离开之前对我来说真是一场噩梦。
网络为一些 Windows 服务器分配了 (静态 IP),而其余计算机则通过 DHCP 服务器分配了 IP 地址。当我查看活动目录中的 DHCP 管理单元时,我可以看到分配了 IP 地址的系统名称和 MAC 地址。
如果我对同一系统执行 nslookup,它会显示不同的 IP 地址和名称。我的意思是,我的 DHCP 列表中的计算机 A 被分配了 10.10.10.100。如果我通过命令提示符对 10.10.10.100 执行 nslookup,它会显示完全不同的计算机名称 Z 而不是 A。有趣的是,如果我对计算机名称 Z 执行 nslookup,IP 地址也会完全不同(不是 10.10.10.100)
它有这样的行为有什么原因吗?
大多数电脑运行的是 win-server 2003 标准版 (SP2)
答案1
使用 nslookup 解析 IP 地址时获得的答案来自 DNS 中的反向查找区域,并且返回的记录已过时。您应该在 DNS 服务器以及正向和反向查找区域上启用清理功能,以便删除过时的记录。
答案2
我首先要检查的是hosts
中的文件C:\Windows\System32\drivers\etc\
。也许那里有一些条目被覆盖了。
然后我会检查你的 DNS 服务器配置,因为反向查找条目和正向查找条目可能不同。例如,如果你执行nslookup 10.10.10.100
,系统实际上是在搜索 PTR 记录100.10.10.10.in-addr.arpa
(请注意,此表示法中的 IP 是反向的)。这个可以指向与 完全不同的机器computerA
。
答案3
您是否尝试过清除缓存?
您可以通过输入以下命令来执行此操作:
ipconfig /flushdns
这是我第一次想到这个问题。我猜想你之前的管理员更改了一些 IP,并且仍然将它们保存在客户端/服务器的缓存中。
这对你有帮助吗?
编辑:请注意,对 Windows Server 2003 的支持将于 2015 年 7 月 14 日结束!