我想知道是否可以使用scapy等模块在python3中发送CTS帧。如果没有,我将如何使用套接字模块?
提前致谢。
答案 0 :(得分:2)
我不能说scapy,但CTS帧和802.11通常对于python socket
模块来说太深了。
这是OSI 2级,而socket
的能力有限,低于OSI 3级。
一些可能的出发点是:
您可以尝试修改this code以进行以太网通信。请注意套接字创建:socket(AF_PACKET, SOCK_RAW, IPPROTO_RAW))
- AF_PACKET
而不是AF_INET
允许级别2操作。
尝试使用socket(AF_PACKET, SOCK_RAW, htons(ETH_P_ALL)))
。 ETH_P_ALL
表示套接字将接收所有级别2数据包。所有这些都是因为实际上我还没有在Linux内核中找到任何特定于802.11的资源。
获取无线网卡的开源驱动程序,看看他们是如何做到的。可能看起来直接与硬件通信比试图找到嵌入套接字的通用机制更有成效。
相关的电子邮件主题:Correct way to obtain the 802.11 headers with a raw socket?