Multicast: Unterschied zwischen den Versionen
Chris (Diskussion | Beiträge) |
Chris (Diskussion | Beiträge) |
||
| (7 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
== Multicast über Wireguard == | == Multicast üver VPN == | ||
=== Multicast über Wireguard (Level 3 / Routing) === | |||
Voraussetzungen: | Voraussetzungen: | ||
| Zeile 53: | Zeile 55: | ||
reflector auf Host A aktivieren. | reflector auf Host A aktivieren. | ||
Damit die Geräte auch auf den Hosts hinter dem Gateway gesehen werden können muss auf dem jeweiligen Gateway auch der Reflector aktiviert werden. | |||
=== SSDP / UPnP / DLNA === | === SSDP / UPnP / DLNA === | ||
| Zeile 85: | Zeile 89: | ||
<pre> | <pre> | ||
ip r add 192.168.1.0/24 dev WG | ip r add 192.168.1.0/24 dev WG | ||
</pre> | |||
<pre> | |||
ip r add 192.168.178.0/24 dev WG | |||
</pre> | |||
IPv4 Forwarding muss aktiviert sein, sowie forwarding in the Firewall muss akzeptiert werden! | |||
=== Wireguard Debugging aktivieren === | |||
<pre> | |||
echo module wireguard +p > /sys/kernel/debug/dynamic_debug/control | |||
</pre> | |||
=== Multicast über VXLAN (Level 2 / Bridging) === | |||
==== VXLAN Interface auf beiden Hosts erstellen ==== | |||
Auf Host A: | |||
<pre> | |||
ip link add vxlan0 type vxlan id 42 dev WG remote 172.31.0.2 dstport 4789 | |||
ip link set vxlan0 up | |||
</pre> | |||
Auf Host B: | |||
<pre> | |||
ip link add vxlan0 type vxlan id 42 dev WG remote 172.31.0.1 dstport 4789 | |||
ip link set vxlan0 up | |||
</pre> | |||
==== VXLAN Interface an Bridge attachen ==== | |||
Auf Host B: | |||
<pre> | |||
ip link add br-vxlan type bridge | |||
ip link set br-vxlan up | |||
ip link set vxlan0 master br-vxlan | |||
</pre> | |||
Auf Host A: | |||
Dies attached das vxlan0-Interface an die BRIDGE_LAN-Bridge. Wenn jetzt ein Rechner auf Site B eine DHCP-Anfrage auf dem br-vxlan-Interface stellt bekommt das Interface eine IP aus dem Adressbereich von Site A, und zwar auf dem Interface wo das vxlan0-Interface attached ist, also BRIDGE_LAN. | |||
<pre> | |||
ip link set vxlan0 master BRIDGE_LAN | |||
</pre> | |||
Die MTU evtl. noch ein wenig heruntersetzen: | |||
Auf Host A und B: | |||
<pre> | |||
ip link set vxlan0 mtu 1280 | |||
</pre> | </pre> | ||
Aktuelle Version vom 18. April 2026, 20:20 Uhr
Multicast üver VPN
Multicast über Wireguard (Level 3 / Routing)
Voraussetzungen:
- Multicast muss für das WG Interface aktiviert sein
- Über Kommanzozeile:
ip l set WG multicast on
- Über systemd-networkd:
WG.network
[Link] Multicast=true
- Multicast-IP-Adressen müssen bei den AllowedIPs dabei sein:
WG.netdev
AllowedIPs=224.0.0.0/4,ff00::/8
Achtung: Wird im .netdev-File etwas geändert muss das Interface erst gelöscht und wieder erstellt werden damit die Änderungen greifen:
networkctl delete WG networkctl reload
mDNS
Über Avahi können mDNS-Abfragen "reflektiert" (in andere Subnetze weitergeleitet) werden. Wenn es sich beim dem Interface um ein Point-to-Point Interface handelt (Wireguard-Interfaces sind Point-to-Point Interfaces) muss dies auch noch erlaubt werden.
/etc/avahi/avahi-daemon.conf:
[server] allow-point-to-point=yes # Bei Point-to-Point Interfaces nötig [reflector] enable-reflector=yes
Netzwerk A möchte die mDNS-Geräte in Netzwerk B sehen:
reflector auf Host B aktivieren.
Netzwerk B möchte die mDNS-Geräte in Netzwerk A sehen:
reflector auf Host A aktivieren.
Damit die Geräte auch auf den Hosts hinter dem Gateway gesehen werden können muss auf dem jeweiligen Gateway auch der Reflector aktiviert werden.
SSDP / UPnP / DLNA
SSDP hat mit mDNS nichts zu tun, kann also auch nicht über den avahi-daemon reflector weitergeleitet werden. Es muss ein Multicast-Router verwendet werden, hier: smcroute
/etc/smcroute.conf:
phyint WG enable phyint BRIDGE_LAN enable # SSDP mgroup from BRIDGE_LAN group 239.255.255.250 mroute from BRIDGE_LAN group 239.255.255.250 to WG mgroup from WG group 239.255.255.250 mroute from WG group 239.255.255.250 to BRIDGE_LAN
Netzwerk A möchte die UPnP-Geräte in Netzwerk B sehen:
smcroute auf Host A starten.
Netzwerk B möchte die UPnP-Geräte in Netzwerk A sehen:
smcroute auf Host B starten.
Geräte hinter dem Router
Damit die Geräte hinter dem Router von den Multicast-Paketen erreicht werden können:
ip r add 192.168.1.0/24 dev WG
ip r add 192.168.178.0/24 dev WG
IPv4 Forwarding muss aktiviert sein, sowie forwarding in the Firewall muss akzeptiert werden!
Wireguard Debugging aktivieren
echo module wireguard +p > /sys/kernel/debug/dynamic_debug/control
Multicast über VXLAN (Level 2 / Bridging)
VXLAN Interface auf beiden Hosts erstellen
Auf Host A:
ip link add vxlan0 type vxlan id 42 dev WG remote 172.31.0.2 dstport 4789 ip link set vxlan0 up
Auf Host B:
ip link add vxlan0 type vxlan id 42 dev WG remote 172.31.0.1 dstport 4789 ip link set vxlan0 up
VXLAN Interface an Bridge attachen
Auf Host B:
ip link add br-vxlan type bridge ip link set br-vxlan up ip link set vxlan0 master br-vxlan
Auf Host A:
Dies attached das vxlan0-Interface an die BRIDGE_LAN-Bridge. Wenn jetzt ein Rechner auf Site B eine DHCP-Anfrage auf dem br-vxlan-Interface stellt bekommt das Interface eine IP aus dem Adressbereich von Site A, und zwar auf dem Interface wo das vxlan0-Interface attached ist, also BRIDGE_LAN.
ip link set vxlan0 master BRIDGE_LAN
Die MTU evtl. noch ein wenig heruntersetzen:
Auf Host A und B:
ip link set vxlan0 mtu 1280