如何查找哪些机器配置了特定的 DNS 服务器?

如何查找哪些机器配置了特定的 DNS 服务器?

我们目前正在从域中删除旧的 DC,以便进行升级,上次删除 DC 时我遇到了一个问题。我们有几台指向某个 DNS 服务器(我们正在删除该服务器)的旧 UNIX 机器。这导致了一些登录问题(这些问题很快得到解决),但我们不想再遇到这个问题。

有没有办法(无需登录到每台服务器)知道哪些机器可以配置为指向特定的 DNS 服务器,以便我可以在删除它之前更新它?

答案1

鉴于您谈论的是非 Windows 机器,您甚至不能依赖 SCCM 或 PowerShell 远程处理之类的东西,这使得即将退役的 DNS 服务器上的调试日志记录成为最可行的选择。

幸运的是,设置起来相当容易

设置完成后,您需要等待一段时间,然后解析日志以查找发出请求的 IP,将这些计算机切换到新的 DNS 服务器,并重复此操作,直到您看不到任何请求,并且确信所有机器都有足够的时间发出将被捕获的 DNS 请求。

答案2

除非您在整个域中已经建立了可靠的库存管理系统(例如 System Center Configuration Manager),能够从您环境中的每台机器收集数据,否则这并不是一件容易的事。

即使使用 SCCM,或者能够从中央服务器远程在您环境中的每台机器上运行Get-DnsClientServerAddressipconfig /all您仍然必须解析输出,因为您可能没有每台机器上完全相同数量的网络接口,或者每个“前端”和“备份”网络接口不会命名相同,等等。我已经使用 SCCM 完成了这项工作,我从每台机器收集这些数据,包括它们为 DNS 服务器配置的 IP 地址,然后将所有这些数据推送到 SQL 数据库中,以便我可以查询它并从中制作 SSRS 报告,但由于我之前提到的原因,它并不是 100% 可靠的。

然后当然需要登录到您拥有的每个 DNS 服务器并打开调试日志,以便您可以记录所有查询。

相关内容