udp_relay.py aktualisiert
This commit is contained in:
10
udp_relay.py
10
udp_relay.py
@@ -15,11 +15,13 @@ LOOPBACK_TIMEOUT = 1 # Zeit in Sekunden, um Loopback zu verhindern
|
|||||||
recent_messages = {}
|
recent_messages = {}
|
||||||
|
|
||||||
def create_socket(port, bind_ip=''):
|
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 = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
|
||||||
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
|
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
|
||||||
sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 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
|
return sock
|
||||||
|
|
||||||
def hash_message(message):
|
def hash_message(message):
|
||||||
@@ -77,8 +79,8 @@ def main():
|
|||||||
port2 = args.port2
|
port2 = args.port2
|
||||||
|
|
||||||
# Starten von zwei Threads für bidirektionales Relay mit zeitbasierter Loopback-Prüfung
|
# Starten von zwei Threads für bidirektionales Relay mit zeitbasierter Loopback-Prüfung
|
||||||
thread1 = threading.Thread(target=relay_messages, args=(ip1, port1, ip2, port2))
|
thread1 = threading.Thread(target=relay_messages, args=(ip1, port1, ip2, port2), daemon=True)
|
||||||
thread2 = threading.Thread(target=relay_messages, args=(ip2, port2, ip1, port1))
|
thread2 = threading.Thread(target=relay_messages, args=(ip2, port2, ip1, port1), daemon=True)
|
||||||
|
|
||||||
thread1.start()
|
thread1.start()
|
||||||
thread2.start()
|
thread2.start()
|
||||||
|
|||||||
Reference in New Issue
Block a user