python - 为 802.11 数据包打开原始套接字 Micropython
问题描述
我正在使用带有 MicroPython 的 ESP8266 (NodeMCU) 并希望能够进行数据包注入或发送原始数据包/自由数据包。我无论如何都找不到打开原始套接字(usocket/socket 模块)或通过“网络”模块执行此操作。无论如何我可以做到这一点吗?
正常的python等价物是:
import socket
s = socket.socket(socket.AF_PACKET, socket.SOCK_RAW, socket.htons(0x0003))
s.bind(("wlan0", 0x0003)) #wlan0 being in monitor mode
在micropython中,可以像这样进入监控模式(站模式)
import network
sta_if = network.WLAN(network.STA_IF)
但是从那里,您无法发送/接收任何数据包。有什么办法可以做到这一点?
任何帮助深表感谢。
抱歉缺少细节,但我不知道从这里做什么。
解决方案
我不认为你可以通过使用 micropython@esp8266 来实现原始套接字
原因之一是 esp8266 的内存非常有限。另一个原因是他们的套接字没有实现原始套接字。
您可以尝试使用 CC3200 端口并修改它的 micropython 固件。
推荐阅读
- pandas - 将带有 start_date 和 end_date 的行转换为每日行
- javascript - 以不同的页面大小导出地图
- python - 如何删除python matploylib中的无点区域
- string - split_on_char OCaml 的未绑定记录字段
- php - php解析url并删除参数问题
- format - 仅将 ESLint / Prettier 应用于选定的行
- angularjs - 我可以与 Angular 的 Redshfit 联系以进行报告吗?
- excel - VBA使用ColumnBound在组合框中选择值
- reactjs - React 状态变量的特殊操作
- python - 如何在 Python 中使用不同的格式条件退出 while True 循环?