localtux
Goto Top

UPnP DLNA wird nicht erkannt von minidlna

Hallo an alle,

mein Name ist Tommy, wohne in Freiberg und dies ist mein erster Beitrag bzw. meine erste Frage hier im Forum.

Ich habe minidlna + ArchLinux auf meinem Raspberry Pi 2 installiert. Der Raspberry befindet sich in einem lokalen Netzwerk mit zwei Subnetzen.
Ich habe mehrere Raspberry Pi's, alle mit ArchArm darauf.

DHCP auf Raspberry Pi 4 Router:

1. Subnetz: 10.10.0.0 (LAN)
2. Subnetz: 10.20.0.0 (WLAN)

Beispielentwurf:

Raspberry Pi 2 (minidlna) 10.10.1.30 ---> Raspberry Pi 4 (Router mit iptables, LAN, WLAN mit hostapd ...) 10.10.1.1 und 10.20.1.1 ---> Notebook 10.20.1.231

Der Raspberry mit minidlna ist im ersten Subnetz (10.10.0.0) via LAN-Kabel. Wenn ich nun VLC von meinem Notebook (WLAN, 10.20.1.231) starte, erkennt es minidlna nicht über UPnP. Wenn ich das WLAN auf dem Raspberry Pi 2 mit minidlna einschalte, ist UPnP über die WLAN-Geräte sichtbar.

Ich habe versucht, eine Weiterleitung über IPtables einzurichten, aber leider funktioniert das irgendwie nicht.
iptables -A FORWARD -i eth1 -o wlan1 -j ACCEPT
iptables -A FORWARD -i wlan1 -o eth1 -j ACCEPT

Das Ergebnis ist, dass minidlna nur über UPnP erreichbar ist, wenn ich den entsprechenden Zugang (LAN für LAN-Geräte, WLAN für WLAN-Geräte) einschalte. Ich möchte aber den Raspberry Pi 2 nur mit dem LAN verbinden und alle Geräte im LAN und WLAN sollen ihn erreichen können. Der Ping vom und zum Raspberry Pi 2 funktioniert von allen Geräten im Netzwerk, unabhängig vom Zugang.

Ich habe das Gefühl, dass der Raspberry Pi Router, auf dem iptables installiert ist, UPnP nicht an ein anderes Netzwerk weiterleitet.

Wenn jemand einen Tipp hat, nehme ich ihn gerne an.

Vielen Dank schon mal!

Tommy

Content-ID: 3903895904

Url: https://administrator.de/contentid/3903895904

Ausgedruckt am: 22.11.2024 um 14:11 Uhr

Lochkartenstanzer
Lochkartenstanzer 11.09.2022 um 11:12:42 Uhr
Goto Top
Moin,

Üblichereweise ist UPnP nur für den Betrieb in einem IP-Subnetz und nicht über Router hinweg gedacht. Es nutzt Multicasts, die i.d.R. nicht über den Router hinweg weitergeleitet werden.

Abgesehen davon, das UPnP ein Sicherheitsrisiko ist und abgeschaltet bleiben sollte, ist das ein falsches Netzwerkdesign, wenn man UPnP einsetzen will.

lks
3803037559
3803037559 11.09.2022 aktualisiert um 11:49:15 Uhr
Goto Top
Upnp basiert auf Multicasts/Broadcasts und die werden per Default nicht geroutet und bleiben in ihrer eigenen Layer 2 Broadcast Domain.

Du brauchst einen IGMP Proxy der die Pakete zwischen den Netzen vermittelt
https://man.archlinux.org/man/igmpproxy.conf.5.en
Hat man dann noch Bonjour-Geräte kommt noch zusätzlich mDNS (avahi) hinzu.
https://wiki.archlinux.org/title/avahi

Cheers
certguy
aqui
aqui 11.09.2022 aktualisiert um 12:02:16 Uhr
Goto Top
Hi Tommy. Kollegen @lks und @3803037559 haben das Wesentliche ja schon gesagt...
Wenn du einmal tcpdump genutzt hättest auf dem RasPi hättest du vermutlich gleich erkannt warum.
UPnP nutzt sehr häufig SSDP mit der Multicast Adresse 239.255.255.250.
Der Multicast Adress Block 239.0.0.0 bis 239.255.255.255 und speziell 239.255.0.0 /16 ist für die Nutzung in lokalen LANs definiert.
https://www.iana.org/assignments/multicast-addresses/multicast-addresses ...
Es ist eine sog. Link local Multicast Adresse mit einem TTL von 1 die damit nicht routebar ist und nur im jeweils lokalen Segment funktioniert.
Das ist so ähnlich wie Proxy Funktion in andere Segmente gebracht werden kann.
Gleiches gilt für deinen UPnP Traffic. Außer mit einer Proxy Funktion ist Multicast auch nur mit PIM routebar.
Interessant wäre also erstmal genau mit tcpdump zu sehen welchen Port und welche Zieladresse dein UPnP Traffic verwendet. (Siehe dazu auch hier).
localtux
localtux 11.09.2022 um 12:58:47 Uhr
Goto Top
Hallo an euch alle und vielen Dank für die vielen Infos. Werde mich mal damit befassen ggfs. auch mein Netzwerk mal überdenken. Ist halt ein Zeitfresser.

Nun erklärt sich auch wieso UPnP nicht über den Router hinauskommt. Installiere ich minidlna nämlich direkt auf dem Raspberry-Router wird es auch in alle Richungen ausgestrahlt, zumindest an die Geräte welche direkt mit diesem verbunden sind.

Werde es mal mit IGMPproxy probieren und schauen ob sich was tut. Falls nicht, wird das wohl dann eher was für die kalte Jahreszeit. face-smile

Nochmal danke an euch!