我正在使用带有MicroPython的ESP8266(NodeMCU),并希望能够进行数据包注入或发送原始数据包/自由数据包。我无论如何都无法打开原始套接字(usocket / socket模块)或通过'network'模块执行此操作。无论如何我能做到吗?
普通的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的内存非常有限。另一个原因是他们的socket没有实现原始套接字。
您可以尝试使用CC3200端口并修改它的micropython固件。