如何判断 Windows 上哪个服务正在解析名称?

如何判断 Windows 上哪个服务正在解析名称?

Windows 上是否有与 unixhost命令等效的命令?我不是在查找 nslookup;我知道名称的 DNS 解析是什么。我想要一种简单的方法来判断我的本地主机文件或 NetBIOS 是否正在解析名称并优先。我也知道我可以使用 ping 来完成此操作,但似乎应该有一个特定的工具。

答案1

Windows 上是否有与 unix host 命令等效的命令?

不。

我是认真的。我知道很多时候人们不愿意对这样的问题说“不”,但如果你正在寻找内置在 Windows 中的软件,那么答案是“不”。Windows 是一组有限的代码,带有一定数量的命令。正如您所描述的,使用 NSLookup 或 ping 是使用与 Windows 捆绑在一起的工具的最快可用方法。Unix 系统通常还有另一个选项,称为“主机”,这似乎不太为人所知。Windows 没有提供相同的选项,也没有提供等效选项。

顺便说一句,“host”命令通常与 BIND 捆绑在一起(现在也随 dig 一起提供),并且 BIND 确实有一个 Windows 端口。因此,如果您确实需要“host”命令,您可能可以将其作为 BIND 包的一部分下载。但是,它不是内置的。

既然您提到了 NetBIOS,我也可以指出 nbtstat(例如,“nbtstat -n”可能会显示一些名称)。

如果您想知道名称的来源,那么这将是由“解析器”处理的问题。(“解析器”一词是 Unix 的 /etc/resolv.conf 文件名的主要部分。)解析器实际上没有自己的交互命令。在较新版本的 Microsoft Windows(包括 Windows XP,我记得不包括 Windows 98)中,将与解析器的最小交互添加到一些非特定于解析器的命令中。 IPConfig/displaydns可能IPConfig/flushdns是最接近的;“netsh dnsclient /?”(以及相关的,如“netsh dnsclient show /?”)似乎也与解析器有关,但并没有让您更接近您似乎正在寻找的信息类型。

我发现当我在 hosts 文件中放置一个名称时,IPConfig/displaydns显示Time To Live的值为零(与我查找的实际 DNS 条目不同)。因此,有一个内置工具可能会为您提供一些您正在寻找的详细信息,但您可能不会发现这些详细信息像“host”命令那样简单方便,因为信息不会被压缩。(您可能需要向后滚动或重定向输出。)您要求的只是 Windows 实际附带的内容。

相关内容