我用 scapy 写了一个嗅探器。它尝试获取探测请求数据包。我的程序运行良好大约 8-10 分钟,然后,它在抛出套接字关闭警告后突然停止嗅探探测请求。我在谷歌上没有找到任何关于此的信息。为什么我会收到此错误?
错误:
WARNING: Socket <scapy.arch.linux.L2ListenSocket object at 0x15c4140> failed with ''. It was closed.
脚步:
- 进入监听模式:
ifconfig wlan0 down
iwconfig wlan0 mode monitor
ifconfig wlan0 up
- 在后台运行 airodump-ng:
airodump-ng wlan0 &
- 运行我的脚本
./my_script.py
输出:
[ 329.993891] device wlan0 entered promiscuous mode
02-Jun-2021, 23:12:04 , ff:ff:ff:ff:ff:ff <mac_address> dbm_signal= -91 , freq= 2427 , 802.11 Probe Request --->
Unknown OUI --- Unknown OUI
.
.
. (After about 8-10 minutes)
.
.
[ 898.806823] device wlan0 left promiscuous mode
WARNING: Socket <scapy.arch.linux.L2ListenSocket object at 0x12d4200> failed with ''. It was closed.
我的脚本只有这个正常的 scapy 代码,用于访问客户端和 ap、ssid 和通道等的 mac 地址,如下所示。然后打印这些。
dot11_layer = pkt.getlayer(Dot11)
addr1= dot11_layer.addr1
addr2= dot11_layer.addr2
payload_name= dot11_layer.payload.name
ssid= pkt[Dot11Elt].info.decode()