当我尝试用Scapy从我周围的无线网络中获取Rssi信息时,我得到了一些错误。另外,我使用的是ALFA-036NH,我的显示器模式是开放的,操作系统是Kali Linux。我使用了以下代码:
from scapy.all import *
from datetime import datetime
import os
import signal
import sys
def PacketHandler(pkt) :
if pkt.haslayer(Dot11) :
if pkt.type == 0 and pkt.subtype == 8 :
if pkt.haslayer(Dot11Beacon) or pkt.haslayer(Dot11ProbeResp):
try:
extra = pkt.notdecoded
rssi = -(256 - ord(extra[-4:-3]))
except:
rssi = -100
print "WiFi signal strength:", rssi
sniff(iface="wlan0mon", prn = PacketHandler) 然而,所有的网络都提供了-100 dbm。感谢您的关注。
发布于 2018-08-19 22:57:30
请使用最新的scapy github version (或2.4.1+)重试。它通过dBm_AntSignal字段改进了对RSSI的支持,现在可以使用RSSI(如果存在)。
pkt.dBm_AntSignal

您不需要您提供的函数。
PS:你在哪里找到这样的代码的?你自己做的吗?谢谢
https://stackoverflow.com/questions/51917850
复制相似问题