我有一个 Ralink RT3290 802.11bgn Wi-Fi 适配器,并且运行的是 Windows 8。遗憾的是,虽然我的新电脑有助于设计和测试我的触摸式应用程序,但我的网络工程能力却在下降。
由于某种原因,Wireshark 不显示网络上其他主机之间的 802.11 流量(我真的很想要 HTTP,尽管没有 TCP 和 UDP 也很难生存)。我一直在阅读帮助文件和其他东西,却苦于找不到一些关于某些适配器或驱动程序因设计而受损的参考资料(?)。
我了解其中的原因,但它仍然让我烦恼!
我真正想要的是让 Wireshark 正常工作的一些帮助...或者也许是一个不会阻止混杂模式的新驱动程序...或者其他什么...有人有什么想法吗?
我必须承认我确实有一个研究网络流量的想法 - 我下载了一个虚拟路由器并将我的 PC 连接到网络。然后将所有东西都连接到虚拟路由器。它适用于大多数设备,尽管有些设备的行为很奇怪。我在其上测试了 Nintendo 3DS,并设法手动配置它以进行连接,但它会根据我在 3DS 上尝试启动的软件随机断开连接(例如,我想看看的 Pokemon 游戏 - 好奇想知道 pokemon 是如何从 pokemon_gl 发送到 3ds 的,SYNC 过程如何工作等!还想知道我是否可以注入数据包并在传输过程中将一个“pokemon”变成另一个!真有趣 :D)。
简而言之,我有无数个问题,喜欢研究事物如何组合在一起,以及摆弄东西。请帮助我让 Wireshark 工作!这比重新编程我的开源虚拟路由器要容易得多……尽管如果我无法让 Wireshark 运行,那将是我的下一个问题 - 请注意!
答案1
Wireshark 不支持捕获不是从您的 Windows 计算机发送或发送到您的计算机的数据包。监控模式不受 WinPcap 支持。您需要AirPcap 适配器使其在 Windows 中工作,或者尝试在 Linux 中运行 Wireshark。
答案2
WinPcap 使用 NDIS 驱动程序(该驱动程序是 WinPcap 的一部分)挂接到 Windows 网络堆栈。它仅支持NDIS 5最早出现在 Windows 2000(又名“NT 5.0”)中,而不是NDIS 6最早出现在 Windows Vista(又名“NT 6.0”)中。监控模式只能由 NDIS 6 驱动程序使用;WinPcap NDIS 5 驱动程序可在 Vista 及更高版本上运行,但不支持监控模式。
Microsoft 网络监视器是另一个适用于 Windows 的网络分析器;它可以免费下载,虽然它的源代码不可用(与 Wireshark 不同),但数据包的结构在网络监视器中由文本文件定义,做随网络监视器提供,用户可以修改。用户还可以添加新协议的文件;Microsoft提供 一个托管许多此类文件的网站。网络监视器有 NDIS 5 和 NDIS 6 驱动程序;NDIS 6 驱动程序用于 Windows Vista 及更高版本,并支持监视模式如果驱动程序和网络适配器都可以。Wireshark 可以读取网络监视器捕获文件。
注意有人声称某些 NDIS 6 Wi-Fi 适配器驱动程序确实不是正确支持监控模式;这意味着即使网络监视器也会在监视模式下遇到问题(如果 WinPcap 提供一个使用本机 Wi-Fi 支持 libpcap 监视模式 API 的 NDIS 6 驱动程序,Wireshark 也会遇到这种情况)。