有没有办法找出本地系统上 DNS 查找失败的情况?

有没有办法找出本地系统上 DNS 查找失败的情况?

这是在 XP 上。一位同事清除了他们的 Windows 安装并重新开始。某个特定程序有一个自定义主机条目,现在它不起作用了,因为我们没有备份主机文件。问题就在这里:我们知道要将名称映射到的 IP,但不知道域名。当我们运行有问题的程序时,它会失败并显示一条通用消息。我们有什么办法可以找出它试图解析的主机名吗?

答案1

WireShark 应该会捕获 DNS 查询。您可以按端口 53 或 DNS 主机进行过滤,但您会看到程序正在请求的 A 记录查询。

答案2

有两个 Sysinternals 工具可能有助于解决此问题。

TCP查看器将显示当前网络流量:

TCPView 是一个 Windows 程序,它将显示系统上所有 TCP 和 UDP 端点的详细列表,包括本地和远程地址以及 TCP 连接的状态。

进程监控将显示所有流程操作:

进程监视器是 Windows 的一个高级监视工具,可显示实时文件系统、注册表和进程/线程活动。

您可以使用 TCPView 查看所有当前连接,因此当程序尝试打开有问题的连接时,您应该能够看到它发出 DNS 查询。

如果此方法不起作用或运行速度过快,您可以使用进程监视器(专门筛选该进程)查看该进程的所有活动。额外的好处是,如果进程正在注册表或某些配置文件中查找它所连接的名称,您可以使用此工具检测到它。

相关内容