From ccf6c973cbc02b0d1d99c112b18501c359a74298 Mon Sep 17 00:00:00 2001 From: Philipp Wagner Date: Mon, 6 Apr 2026 20:45:00 +0200 Subject: [PATCH] udp_relay.py aktualisiert --- udp_relay.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/udp_relay.py b/udp_relay.py index b39ce47..653e58c 100644 --- a/udp_relay.py +++ b/udp_relay.py @@ -15,11 +15,13 @@ LOOPBACK_TIMEOUT = 1 # Zeit in Sekunden, um Loopback zu verhindern recent_messages = {} def create_socket(port, bind_ip=''): - """Erstellt und konfiguriert den UDP-Socket zum Lauschen auf Broadcast-Nachrichten.""" + """Erstellt und konfiguriert den UDP-Socket zum Lauschen auf Broadcast-Nachrichten. + Bindet immer auf 0.0.0.0 um alle lokalen Interfaces zu hören.""" sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1) - sock.bind((bind_ip, port)) + # Immer auf 0.0.0.0 binden um auf allen Interfaces zu hören + sock.bind(("0.0.0.0", port)) return sock def hash_message(message): @@ -77,8 +79,8 @@ def main(): port2 = args.port2 # Starten von zwei Threads für bidirektionales Relay mit zeitbasierter Loopback-Prüfung - thread1 = threading.Thread(target=relay_messages, args=(ip1, port1, ip2, port2)) - thread2 = threading.Thread(target=relay_messages, args=(ip2, port2, ip1, port1)) + thread1 = threading.Thread(target=relay_messages, args=(ip1, port1, ip2, port2), daemon=True) + thread2 = threading.Thread(target=relay_messages, args=(ip2, port2, ip1, port1), daemon=True) thread1.start() thread2.start()