Dies ist normal - mDNS verwendet eine Link-Local- Multicast-Gruppe (224.0.0.251 unter IPv4, FF02 :: FB unter IPv6), die niemals von Routern / Gateways weitergeleitet wird. Einige Implementierungen erzwingen dies zusätzlich, indem alle mDNS-Pakete mit IP TTL = 1 markiert werden. (Das ist alles vorausgesetzt, Ihr Router hat zu Beginn die aktivierte Multicast-Weiterleitung aktiviert ...)
Um über Netzwerke / Subnetze hinweg arbeiten zu können, muss mDNS auf Anwendungsebene weitergeleitet werden. Zum Beispiel auf einem Linux- oder BSD-Router würden Sie avahi-daemon mit aktiviertem Proxying ausführen.
Da Sie über ein Raspberry Pi und einen Switch mit 802.1Q-VLANs verfügen, können Sie das Rpi als Relay verwenden, indem Sie es gleichzeitig mit Client- und Server-VLANs verbinden. (Beachten Sie, dass Sie kein dediziertes VLAN nur für das Rpi erstellen sollten; dies würde den Punkt völlig zunichte machen.)
In den Kommentaren geben Sie an, dass sich der Rpi auf Port 4 befindet.
Markieren Sie im Switch Port 4 ( nicht LAG 4) für ein VLAN als "unmarkiert" und für alle anderen als "getagged". Wenn der Switch die Konfiguration der "PVID" des Ports anbietet, stellen Sie sicher, dass er mit dem nicht gekennzeichneten VLAN übereinstimmt.
(Alternativ können Sie alle VLANs mit "Tags" versehen.)
Erstellen Sie im Rpi virtuelle "vlan" -Schnittstellen für jedes markierte VLAN, das es empfängt. Vorausgesetzt, es läuft Linux, können Sie dies vorübergehend tun mit:
ip link add eth0.100 link eth0 type vlan id 100 ip link set eth0.100 up dhclient eth0.100
(Wie Sie dies dauerhaft machen können, hängt von Ihrer Verteilung ab.)
Aktivieren Sie in der Rpi das Proxying (Reflection) in
/etc/avahi/avahi-daemon.conf
:[reflector] enable-reflector=yes