Also du hast Recht, das mit den RAW-Sockets war Blödsinn!
Ich habs jetzt geschafft die UDP-Sockets mit dem Interface zu verbinden, nur ankommen (oder senden) will nichts...
Hier mein aktueller Code (läuft ohne Fehlermeldung):
undCode:import socket interface = "wlan1" s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP) s.setsockopt(socket.SOL_SOCKET, socket.SO_RESUREPORT, 1) s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1) s.setsockopt(socket.SOL_SOCKET, socket.SO_BINDTODEVICE, interface) s.bind(("",5555)) print("bound") while True: data, addr = s.recvfrom(1024) print("received message: " + data)
Beide WLAN-Adapter laufen im Monitor Mode auf Channel 5 (2.432GHz).Code:import socket import time interface = "wlan1" s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP) s.setsockopt(socket.SOL_SOCKET, socket.SO_RESUREPORT, 1) s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1) s.setsockopt(socket.SOL_SOCKET, socket.SO_BINDTODEVICE, interface) msg = b"Hi" while True: s.sendto(msg, ('<broadcast>',5555)) print("sent") time.sleep(1.0)
Gruß
Chris
EDIT:
Ich hab mir vorhin noch tcpdump runtergeladen, das zeigt auf der Sender-seite nichts an....







Zitieren

Lesezeichen