Ich versuche, mit einem Raspberry Pi ARP-Anforderungen von einem bestimmten drahtlosen Gerät in meinem Netzwerk zu finden. Es ist eine dieser Amazon Dash-Schaltflächen. Jemand hat diesen Code verwendet, um zuzuhören, wenn der Bindestrich eine Verbindung zum WLAN herstellt.
from scapy.all import *
def arp_display(pkt):
if pkt[ARP].op == 1: #who-has (request)
if pkt[ARP].psrc == '0.0.0.0': # ARP Probe
if pkt[ARP].hwsrc == '74:75:48:5f:99:30': # button 1
print "Pushed Huggies"
elif pkt[ARP].hwsrc == '10:ae:60:00:4d:f3': # button 2
print "Pushed Elements"
else:
print "ARP Probe from unknown device: " + pkt[ARP].hwsrc
print sniff(prn=arp_display, filter="arp", store=0, count=10)
Wenn ich dies auf Raspbian (mit installiertem Python und Scapy) ausführe, erhalte ich eine Fehlermeldung
"IndexError: Layer [ARP] not found"
Ich kenne mich mit Scapy nicht aus und tauche zum ersten Mal ein. Vielen Dank für alle Ideen.