有没有人知道如何计算您已连接的网络的802.11信标?如果它的接入点或Adhoc网络都会发出802.11信标并不重要。
我从Linux平台开发的角度(Linux和/或Android)提出这个问题。我一直在使用Adhoc网络和Linux设备,并且需要一种方法来确定网络中的节点是否存活而无需编写心跳服务。我知道接入点会定期发出802.11信标,以便客户检测它们,并想知道Adhoc网络客户端是否有一些相似之处。 (有关于ESSID和BSSID的Adhoc功能会建议客户必须宣传Adhoc网络)
我通过使用Kali Linux和Alfa Wifi适配器来监控802.11无线流量,从而测试了这一理论。 (不是典型的设置,我只想计算连接网络中的信标)然后我在2个Linux系统之间设置了一个2节点的Adhoc网络。 airodump-ng指出,客户端正在生成大量帧。我承认没有设置iptables规则来阻止所有出站TCP / UDP,所以活动可能是一些尝试联机的后台进程。
在发射Wireshark之后,我注意到一些(如果不是全部)帧都是802.11信标!它们被非常频繁地发射,例如每秒2-5个信标。
我不知道802.11 Adhoc必须具备哪些功能或配置来发布这些信标,或者是否可以调整它们,但它们都在那里。
可以编写一个函数来计算连接的Adhoc网络的信标,如果其中一个客户端停止发送它们,您可以认为该客户端的通信已关闭。
我不认为Netfilter会在网络堆栈中占据更高的位置时看到这些帧。例如载波帧以上
问题是我需要一种方法来查看/计算我已连接的网络的802.11信标,而无需使用特殊的wifi适配器或笔测试工具。有什么建议?谢谢!
答案 0 :(得分:1)
答案是否定的。通常,如果您的802.11适配器/驱动程序未处于监控模式(混杂模式),即使已连接到的网络,信标也不会在堆栈中向上浮动。监控模式会关闭所有过滤功能。令人失望的是它的全部或全部,但它是什么。