我试图在我的台式机和笔记本电脑之间传输 Dataframe (使用ubuntu 18.04中的scrum)。我希望MSDU只是一些原始数据,而不是上层帧。无论出于何种原因,我无法检测到设备之间传输的数据包。
这两个设备都设置为监视模式,并连接到相同的频率/信道。例如,我的桌面有无线接口 * wlp 4s 0 *,我设置如下:
sudo ifconfig wlp4s0 down
sudo iwconfig wlp4s0 mode monitor
sudo ifconfig wlp4s0 up
sudo iwconfig wlp4s0 channel n
字符串
当我检查iw dev
或iwconfig
时,我可以看到两个无线接口都处于监控模式,并且具有相同的频率和非零的tx功率。
我使用以下代码使用scrum嗅探通道没有问题:
sniff(iface = "wlp4s0", prn = output)
型
prn只是打印出任何数据包的摘要。
当我尝试传输时,我在一个设备上使用以下代码:
header = Dot11(
addr1 = "00:16:ea:12:34:56",
addr2 = "00:16:ea:12:34:56",
addr3 = "ff:ff:ff:ff:ff:ff",
type = 2,
subtype = 0,
FCfield = 0)
data = "testtesttesttest"
packet = header / data
sendp(data, iface= "wlp4s0", loop = 1, inter = 0.100)
型
尽管传输设备声明数据包已传输,但其他设备在嗅探通道时无法看到任何数据包。同样,使用“ifconfig”时,接口的 tx_count 不会增加。
我试过在两个设备上切换角色,但也没有运气。
任何帮助将不胜感激,谢谢!
1条答案
按热度按时间w41d8nur1#
看起来你是在给自己发送数据包。addr 1是给接收方的。addr 2是给发送方的。