我对网络完全陌生,需要找到一种读取无线网络信标帧数据的方法。我在 Windows 上这样做,使用 Win32 wlanapi,现在需要在 Linux 上做同样的事情。
我一直在尝试将 iwlist 扫描功能(这似乎对我来说足以解析 bssds 信标帧)移植到 ac# 应用程序中,但没有成功。
最后,我想询问一下 Linux 中还有哪些其他工具可以读取信标帧。我更喜欢自己读取类型-长度-值结构后面的帧,而不是将其解析为字符串。
对此有哪些选择?您能分享一个调用此类工具的示例吗?
我一直在玩(或尝试):
- iwlist扫描
- iw dev [接口名称] scan dump -v (似乎没有读取信标帧,至少不像iwlist扫描那样)
- wpa_supplicant - 如果可能的话,没能做到这一点
- libpcap(尚未尝试)
备注:UI 工具不适合。我的目标是让 C# 应用程序定期运行,读取信标帧并从中提取信息。
最终所有选择都依赖于与linux 80211驱动程序?这意味着编写一个与驱动程序接口的 C 程序是一个不错的选择,所以不要依赖其他任何东西?