Linux kernel 为什么libpcap无法捕获出站802.11信标?

Linux kernel 为什么libpcap无法捕获出站802.11信标?,linux-kernel,wifi,libpcap,packet-capture,tcpdump,Linux Kernel,Wifi,Libpcap,Packet Capture,Tcpdump,我正在编写自己的程序,该程序将在802.11 AP上运行,以捕获AP上所有传出的信标。但我只是注意到我不能用当前的libpcap实现这一点:该程序无法捕获任何出站信标。我也试过Wireshark,结果也一样 我的问题是: 有人能解释一下我所看到的原因吗 是否有任何用户空间方法可以在该特定AP上捕获802.11 AP的出站信标,而不是在其他PC上捕获?如果我能做到这一点而不侵入无线驱动程序,对我来说会更好 我使用Ubuntu10.04作为操作系统,Madwifi作为无线驱动程序 谢谢大家。我猜Wi

我正在编写自己的程序,该程序将在802.11 AP上运行,以捕获AP上所有传出的信标。但我只是注意到我不能用当前的libpcap实现这一点:该程序无法捕获任何出站信标。我也试过Wireshark,结果也一样

我的问题是:

有人能解释一下我所看到的原因吗

是否有任何用户空间方法可以在该特定AP上捕获802.11 AP的出站信标,而不是在其他PC上捕获?如果我能做到这一点而不侵入无线驱动程序,对我来说会更好

我使用Ubuntu10.04作为操作系统,Madwifi作为无线驱动程序


谢谢大家。

我猜WiFi芯片是自动生成信标的 所以他们永远不会通过libpcap拦截的驱动芯片接口 小包。你可能需要第二台收音机才能捕捉到 当主无线电忙于发送信标时,从空中发射信标
接收器已关闭,因此无法听到它正在传输的内容。

您可以在wireshark中捕获这些数据包Beacon、Acknowledge等 您只需执行以下操作:

转到“捕获”菜单 选择界面后,转到选项 在接口的链路层类型中选择每包信息选项 按开始