您能解释一下 Wireshark 如何进行 DNS 查询以解析 IP 地址的名称吗?
我的问题是关于Wireshark解析的域名与 返回的域名不匹配nslookup
。此外,nslookup
Wireshark 有时会成功解析某些 IP 地址,但有时会失败。
为了澄清起见,举一个例子:
我发现的一个案例(数千个案例之一)是关于地址 54.230.45.185
Wireshark 将其解析为:dwjgneh8ogcu1.cloudfront.net
(54.230.45.185)(是的,这似乎是一个随机生成的域名)
其他工具对此有不同的解决方法,例如:
server-54-230-45-185.fra6.r.cloudfront.net
所以我想知道 Wireshark 如何或在哪里找到该域名。
另一个示例是:installer.betterinstaller.com
(78.138.127.15)。
答案1
如果您打开“编辑”选项卡并选择“首选项”,则会出现一个名为“名称解析”的部分。
根据鼠标悬停提示,它使用自己的主机文件、您的主机文件、捕获中的 DNS 数据包以及系统配置的 DNS 服务器
答案2
来自 Wireshark 文档应该可以回答您的第一个问题:
“DNS/并发 DNS 名称解析(系统/库服务):Wireshark 将要求操作系统(或并发 DNS 库)将 IP 地址转换为与其关联的主机名(例如 216.239.37.99 → www.1.google.com)。DNS 服务正在使用同步调用 DNS 服务器。因此,Wireshark 将停止响应,直到返回对 DNS 请求的响应。如果可能,您可以考虑使用并发 DNS 库(它不会等待名称服务器响应)。”
我个人没有遇到过 nslookup 产生的结果与 Wireshark 的名称解析不同的情况。您能举一个具体的例子并详细说明一下吗?
答案3
这取决于操作系统:
Wireshark 将要求操作系统(或并发 DNS 库)将 IP 地址转换为与其关联的主机名(例如 216.239.37.99 → www.1.google.com)。DNS 服务使用同步调用 DNS 服务器。因此,Wireshark 将停止响应,直到返回对 DNS 请求的响应。如果可能,您可以考虑使用并发 DNS 库(它不会等待名称服务器响应)。
例如:Linux:host
-Windows:nslookup
甚至ping