Wie dupliziere ich Multicast-Pakete auf mehreren Schnittstellen?

Wie dupliziere ich Multicast-Pakete auf mehreren Schnittstellen?

Ich möchte einen Stream von einem Linux-Server über eine Multicast-Adresse an mehrere Linux-Clients senden. Die Clients sind direkt mit dem Server verbunden, aberverschiedene Schnittstellen: bnep0und bnep1. Außerdem werden meine Multicast-Pakete, soweit ich weiß, an mein Standard-Gateway weitergeleitet eth0.

Routing-Tabelle im Folgenden:

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG    0      0        0 eth0
10.0.0.0        0.0.0.0         255.255.255.0   U     0      0        0 bnep1
10.0.1.0        0.0.0.0         255.255.255.0   U     0      0        0 bnep0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0

Ich nehme an, ich muss eine dedizierte Routing-Regel erstellen, damit meine Multicast-Pakete nicht an eth0, sondern sowohl an bnep0als auch gesendet werden bnep1. Meine Frage ist: Wie kann ich das machen? Ich habe es mit ip routeund versucht iptables -t mangle ... TEE, aber es hat nicht geklappt.

Dank im Voraus.

Antwort1

Die Lösung besteht nicht darin, Routing-Regeln zu implementieren, um Pakete auf den beiden Schnittstellen zu duplizieren, sondernverschmelzendie Schnittstellen zu einer.

Dazu muss eine Netzwerkbrücke erstellt und genutzt werden. Die Brücke muss eine eindeutige IP-Adresse haben, die „echten“ Schnittstellen hingegen nicht, selbst wenn sie aktiv sind.

# apt-get install bridge-utils
# ifconfig bnep0 up
# ifconfig bnep1 up
# brctl addbr br0
# brctl addif br0 bnep0
# brctl addif br0 bnep1
# ifconfig br0 10.0.0.1 netmask 255.255.255.0

verwandte Informationen