我正在尝试使用 wireshark 来学习一些有关网络和捕获数据包的知识。但是,据我所知,Windows 7 + 各种 wifi 芯片的组合不允许网卡以“混杂模式”运行。有没有人有使用过这种方法?
答案1
请注意此处的术语难题。
混杂模式是源自有线以太网的一个概念,在这种模式下,您的卡会向您显示集线器重复发送到您端口的所有流量,即使这些流量不是发给您的。许多(但不是全部)Wi-Fi 卡都支持混杂模式,其方式与以太网混杂模式非常相似;它只显示“数据”帧,仅在您当前的网络(相同的 BSSID)上显示,并且在它们被转换为有线以太网样式的数据包(以太网 II 或 802.3 帧)后才显示它们。这样做的目的是让它看起来就像您在混杂模式下在有线以太网接口上看到的流量一样,以便网络工程师能够以该级别查看事物。
802.11 监控模式是 802.11 卡的一种超混杂模式。在完全监控模式下,卡会调整到某个频道,并显示该频道上可以接收的所有数据包,无论数据包是什么。如果该频道范围内有其他 Wi-Fi 网络,它还会显示来自其他网络的帧。它不仅显示有线以太网上的数据帧,还显示 802.11 特定的“管理”(Beacon、Probe、Auth、Assoc、Action 等)和“控制”(Ack、RTS、CTS、PS-poll 等)帧。它显示未经转换的数据帧,并带有完整的 802.11 样式标头。
在消费级 Wi-Fi 卡中,很难找到完整的 802.11 监控模式支持,而且即使有,也常常存在缺陷。
许多 802.11 专业人士最终选择购买 CACE Technologies(Wireshark 的企业赞助商)的“AirPcap”USB 无线网卡,因为它们从一开始就被设计为与 Wireshark 一起使用的出色的 802.11 监控模式卡。
更新:
还要注意的是,实际上只有少数几家 Wi-Fi 芯片组供应商,而所有卡制造商都使用这几家供应商的芯片。最大的供应商是 Broadcom、Atheros、Marvell 和 Intel,还有一些不太知名的较小供应商,例如 Ralink。其中,Atheros 长期以来一直是监控模式支持和开源支持方面最好的芯片组供应商。您可以查看 Linux Wi-Fi 驱动程序社区,找出哪些卡使用 Atheros 芯片并能很好地支持“Madwifi”驱动程序,然后选择其中之一;它们更有可能拥有能很好地支持监控模式的 Windows 驱动程序。