我正在编写一个 Python 模块来查找附近的 WiFi 客户端设备。我当前的扫描器所做的只是监听探测请求并记录客户端 MAC 地址。
我遇到的问题是我完全依赖设备广播探测请求让我发现它。
我想知道是否还有其他方法可以发现设备。使用this site作为 802.11 指南,我提出了以下想法:
- 发送带有通用 SSID 的广播数据包以查看客户端是否响应。例如,发送以“Netgear”作为 AP SSID 的广播,并查看是否有任何具有已知“Netgear”配置文件的客户端响应
- 发送解除关联数据包以强制已连接的客户端重新扫描电波
我还没有测试这两个想法。只是吐球。
想法?
最佳答案
我认为广播的想法行不通。广播流量在 802.11 未被确认,因此站点没有理由响应 到这样的交通。唯一的方法是如果你连接到 AP 问题在哪种情况下您可以进行广播 ICMP 回显请求或 类似的东西(但你只能从 相同的 ESS)。
我也不认为分离数据包的想法会起作用,因为它 必须寄给车站,而你可能不知道 那个地址。
我建议只嗅探所有流量并跟踪哪些流量 您看到的 MAC 地址。您不必依赖站点探测 但你确实依赖于他们有时会发送一些东西(任何东西)。
关于python - 除了监听探测请求之外,还有哪些方法可以用来查找 802.11 wifi 设备?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3952252/