802.11 动作帧在软件中发送和接收

物联网 树莓派 无线上网 ESP8266 linux ESP32
2021-06-18 01:07:15

是否可以通过软件访问 802.11 动作帧 TX/RX?有一个基于供应商特定动作框架的专有协议,称为 ESP-NOW,用于 ESP8266 和 ESP32 芯片,我想尝试在 Raspberry Pi 上实现它。

从我的私人项目开始,我将 Raspberry Pi 与 ESP8266 连接起来(交换短信),然后我注意到 ESP8266 有额外的 API(ESP-NOW 和 Simple Pair),并想将性能与普通 WiFi 连接进行比较。

如果我搜索有关访问 WiFi 动作帧的详细信息成功,我将发布任何结果(可能是用于其他应用程序的库)。

3个回答

我敢打赌ESP-Now帧可以通过tshark使用类似的东西来嗅探tshark -n -l -i wlp0s29u1u2 -I -y IEEE802_11_RADIO(添加一个-t类型,比如ekjson),然后添加一个过滤器-Y 'wlan.fc.type_subtype eq 4'来找到你想要的数据包。

您可以使用任何无线感知数据包注入工具来发送 WiFi 数据包。(即Scapy

这取决于您使用的 WiFi 适配器;有些授予此级别的访问权限,有些则不授予,或者至少不以任何记录或发现的方式授予。

鉴于 ESP 系列模块的价格与 USB WiFi 适配器相当,而且供应商无需担心在不更改部件号的情况下更改内部结构,如果您不需要其他网络或希望将此任务分开,您可以将其中一个用作其他嵌入式系统的空中接口。无论如何,将工作委托给 ESP 芯片可能比重新实现它更容易。

我不太清楚你的意思与“获得[他们]从软件”,但有一个用于树莓派ESP-NOW实现这里

此外,如果您将 WiFi 适配器置于监控模式(在 Windows 上通过运行%WINDIR%\system32\Npcap\WlanHelper.exe)并勾选 Wireshark 的捕获选项中的“监控模式”复选框,您可以查看消息:

截屏