OPNsense Forum

International Forums => German - Deutsch => Topic started by: Gandalf2434 on October 03, 2021, 05:38:46 pm

Title: mDNS über vlans funktioniert im WLAN nicht
Post by: Gandalf2434 on October 03, 2021, 05:38:46 pm
Hallo zusammen,

ich habe mein Netzwerk zu Hause angepasst und stolpere leider über ein sehr nerviges Problem bzgl. mDNS und hoffe ihr könnt mir auf die Sprünge helfen.

Ich habe einen Raspberry im Netzwerk der mittels Raspotify als "Spotify-Connect" Lautsprecher Musik abspielen soll. Gesteuert wird das Ganze über die Spotify-App die entweder auf dem Smartphone oder auf dem Notebook läuft. Alle Geräte befinden sich in unterschiedlichen vlans. Spotify benötigt mDNS um den Lautsprecher zu finden. Leider funktioniert das nur vom Notebook aus und nicht vom Smartphone. Ich bin mittlerweile etwas hilflos...
Das schönste Phänomen ist allerdings das folgende:
Auf mich macht es also den Eindruck als kämen die mDNS-Anfragen aus dem WLAN-Netz nicht beim Raspberry an. Sobald das Notebook jedoch seine Anfrage losschickt bekommt das auch das Smartphone mit. Aber evtl liege ich auch völlig daneben.
Sobald ich das Notebook in das WLAN hänge findet es den Lautsprecher auch nicht mehr.

Im Anhang ist eine schematische Darstellung des Netzwerks.


Auch an den Firewall-Regeln auf der OpnSense könnte ich nun nicht erkennen wo da Problem liegen sollte:
Für das Lautsprecher-Netz
Code: [Select]
pass in quick on lagg0_vlan70 inet proto udp from (lagg0_vlan70:network) to 239.255.255.250 port = 1900 keep state
pass in quick on lagg0_vlan70 inet proto udp from (lagg0_vlan70:network) to 224.0.0.251 port = mdns keep state
pass in quick on lagg0_vlan70 inet proto tcp from (lagg0_vlan70:network) to <InterneDNS> port = domain flags S/SA keep state
pass in quick on lagg0_vlan70 inet proto udp from (lagg0_vlan70:network) to <InterneDNS> port = domain keep state
block drop in quick on lagg0_vlan70 inet from any to <InternetRouter>
block drop in quick on lagg0_vlan70 inet from any to (self)
pass in quick on lagg0_vlan70 route-to (igb0 192.168.1.1) inet from (lagg0_vlan70:network) to any flags S/SA keep state

Für das Trusted-Netz
Code: [Select]
pass in quick on lagg0_vlan10 inet proto icmp from (lagg0_vlan10:network) to any keep state
pass in quick on lagg0_vlan10 inet proto tcp from any to <InterneDNS> port = domain flags S/SA keep state
pass in quick on lagg0_vlan10 inet proto udp from any to <InterneDNS> port = domain keep state
pass in quick on lagg0_vlan10 inet proto tcp from (lagg0_vlan10:network) to (lagg0_vlan70:network) port = lupa flags S/SA keep state
pass in quick on lagg0_vlan10 inet proto tcp from (lagg0_vlan10:network) to (lagg0_vlan70:network) port = 60006 flags S/SA keep state
pass in quick on lagg0_vlan10 inet proto tcp from (lagg0_vlan10:network) to (lagg0_vlan70:network) port = http flags S/SA keep state
pass in quick on lagg0_vlan10 inet proto udp from (lagg0_vlan10:network) to 224.0.0.251 port = mdns keep state
pass in quick on lagg0_vlan10 inet proto udp from (lagg0_vlan10:network) to 239.255.255.250 port = 1900 keep state
pass in quick on lagg0_vlan10 inet proto tcp from (lagg0_vlan10:network) to (lagg0_vlan70:network) port = ssh flags S/SA keep state
block drop in quick on lagg0_vlan10 inet from any to (self)
block drop in quick on lagg0_vlan10 inet from any to <InternetRouter>
pass in quick on lagg0_vlan10 route-to (igb0 192.168.1.1) inet from (lagg0_vlan10:network) to any flags S/SA keep state

Für das WLAN-Netz
Code: [Select]
pass in quick on lagg0_vlan50 inet proto tcp from (lagg0_vlan50:network) to <InterneDNS> port = domain flags S/SA keep state
pass in quick on lagg0_vlan50 inet proto udp from (lagg0_vlan50:network) to <InterneDNS> port = domain keep state
pass in quick on lagg0_vlan50 inet proto tcp from (lagg0_vlan50:network) to (lagg0_vlan70:network) port = lupa flags S/SA keep state
pass in log quick on lagg0_vlan50 inet proto tcp from (lagg0_vlan50:network) to (lagg0_vlan70:network) port = 60006 flags S/SA keep state
pass in log quick on lagg0_vlan50 inet proto tcp from (lagg0_vlan50:network) to (lagg0_vlan70:network) port = http flags S/SA keep state
pass in log quick on lagg0_vlan50 inet proto tcp from (lagg0_vlan50:network) to (lagg0_vlan70:network) port = rtsp flags S/SA keep state
pass in log quick on lagg0_vlan50 inet proto tcp from (lagg0_vlan50:network) to (lagg0_vlan70:network) port 49152:49154 flags S/SA keep state
pass in quick on lagg0_vlan50 inet proto tcp from (lagg0_vlan50:network) to 224.0.0.251 port = mdns flags S/SA keep state
pass in quick on lagg0_vlan50 inet proto tcp from (lagg0_vlan50:network) to 239.255.255.250 port = 1900 flags S/SA keep state
block drop in quick on lagg0_vlan50 inet from any to <InternetRouter>
block drop in quick on lagg0_vlan50 inet from any to (self)
pass in quick on lagg0_vlan50 route-to (igb0 192.168.1.1) inet from (lagg0_vlan50:network) to any flags S/SA keep state

Vielleicht kann mir jemand einen Tipp geben warum das über das WLAN nicht funktioniert. Vielen Dank!

Edit: Ich habe mal ein Packet Capture der drei Interfaces gezogen und in Wireshark geworfen. Vom vlan50 kommen definitiv keine mDNS-Pakete im vlan70 an. Vom vlan10 jedoch kommen die mDNS-Pakete
Title: Re: mDNS über vlans funktioniert im WLAN nicht
Post by: Gandalf2434 on October 04, 2021, 05:31:27 pm
Problem gelöst....  Leider habe ich es trotz mehrmaliger Kontrolle übersehen, dass ich die pf-Regel auf tcp geetzt hatte.