mDNS wird zur Namensauflösung von Hostnamen zu IP-Adressen verwendet. Diese Kommunikation passiert völlig automatisch und dient häufig zur automatischen Erkennung von Geräte im Netzwerk. Ein mir bekanntes Beispiel ist die Erkennung von Elgato Lichtern in meinem Netzwerk.
In meinem Falle lautet das Problem meine Netzwerksegmentierung mit Hilfe von VLANs und einem Router welcher diese Pakete nicht weiterleitet. Die Multicast Pakete finden nicht Ihren Weg in andere Netze. Apropos diese Pakete werden mittels UDP Port 5353 an 224.0.0.251 gesendet, falls Ihr mal euer Netzwerk mittels Wireshark abscannen möchtet.
# | Vorschau | Produkt | Bewertung | Preis | |
---|---|---|---|---|---|
1 | ZyXEL ZyWALL 350 Mbit/s VPN-Firewall, empfohlen für bis zu 10 Benutzer [USG Flex 50] | 235,99 EUR | Bei Amazon ansehen | ||
2 | Glovary Firewall Mini PC Quad Core N100, DDR5 8GB RAM 128GB NVMe SSD, 6 x 2.5GbE i226V LAN Fanless… | 271,15 EUR | Bei Amazon ansehen |
Avahi Server/Daemon einrichten
Als erstes braucht Ihr natürlich ein Linux System welches in alle Netze über welche Ihr hinweg die mDNS Pakete senden möchtet eine Netzwerkkarte hat. Ob eine virtuelle Maschine oder Raspberry Pi ist erstmal egal, Hauptsache das System kommt mit OSI Schicht Layer 2 in das Netzwerk und empfängt auch die mDNS Pakete.
Wer möchte kann mit dem Tool “tcpdump” doch einfach mal rein sehen ob mDNS Pakete am System ankommen.
apt install tcpdump tcpdump -i any port 5353 10:50:36.825043 eth0 M IP 192.168.20.20.mdns > 224.0.0.251.mdns: 0 TXT (QM)? Elgato Key Light 95FC._elg._tcp.local. (55) 10:50:36.825059 lo In IP localhost.mdns > 224.0.0.251.mdns: 0 SRV (QM)? Elgato Key Light 95FC._elg._tcp.local. (55) 10:50:36.825080 eth0 Out IP 192.168.20.23.mdns > 224.0.0.251.mdns: 0*- [0q] 2/0/0 (Cache flush) SRV elgato-key-light-95fc.local.:9123 0 0, PTR Elgato Key Light 95FC._elg._tcp.local. (105) 10:50:36.825220 eth1 Out IP 192.168.70.29.mdns > 224.0.0.251.mdns: 0 [1a] TXT (QM)? Elgato Key Light 95FC._elg._tcp.local. (141) 10:50:36.825240 lo In IP localhost.mdns > 224.0.0.251.mdns: 0 TXT (QM)? Elgato Key Light 95FC._elg._tcp.local. (55) 10:50:36.825254 eth0 Out IP 192.168.20.23.mdns > 224.0.0.251.mdns: 0*- [0q] 1/0/0 (Cache flush) TXT "mf=Elgato" "dt=53" "id=3C:6A:9D:1A:82:AC" "md=Elgato Key Light 20GAK9901" "pv=1.0" (135)
Kommen wir nun dazu den Avahi Dienst zu installieren und zu konfigurieren.
apt install avahi-daemon ### Autostart bei Reboot aktivieren ### systemctl enable avahi-daemon ### KONFIGURATION ÄNDERN ### nano /etc/avahi/avahi-daemon.conf ### ÄNDERE FOLGENDE ZEILE IN YES ### [reflector] enable-reflector=yes ### Dienst neustarten ### systemctl restart avahi-daemon
Ab sofort werden alle mDNS Pakete welche auf egal welchem Netzwerkinterface ankommen in alle Netze weitergeleitet.
29. Dezember 2023 um 21:50 Uhr
Hallo Dennis,
„Ab sofort werden alle mDNS Pakete welche auf egal welchem Netzwerkinterface ankommen in alle Netze weitergeleitet.“
Kann man das auch reglementierten, dass die Pakete nicht in alle Netze weitergeleitet werden?
Bspw. möchte ich, dass die Pakte von Netz A nach Netz B geleitet werde, nicht jedoch von B nach A. Geht das?
Gruß und guten Rutsch
Sebastian