Video-Streaming am Beispiel von UPnP/DLNA durch eine WatchGuard Firebox

Ziel:

  • Media-Server (UPnP/DLNA) steht im Trusted Network
  • Videos sollen ins WLAN (eigenes VLAN) gestreamt werden
  • UPnP-Server soll von WLAN sichtbar sein

Was genau sind UPnP und DLNA?

UPnP (Universal Plug & Play) wurde ursprünglich von Microsoft eingeführt, inzwischen gibt es einen eigenen UPnP-Standard und UPnP-Zertifizierungen durch das UPnP-Forum. Es dient zur Herstellerübergreifenden Ansteuerung von Geräten über IP-basierte Netzwerke.

Der Vorteil von UPnP ist die einfache Bedienung durch den Benutzer, der an seinen Geräten (z.B. Mobile Device) nichts konfigurieren muß, um das Gerät (Videorecorder/Stereoanlage) zu steuern. Dies wird insbesondere durch die Verwendung Multicast zur Lokalisierung der Geräte erreicht.

DLNA steht für Digital Living Network Alliance, der Herstellervereinigung, die den Standard für Media-Player, Videorecorder, etc. zertifiziert. Auf Fernsehern und Videorecordern wird man eher DLNA anstelle von UPnP sehen.

Ablauf

Ein Client (Laptop/Handy) erhält eine IP-Adresse per DHCP. Das Gerät meldet seine Existenz über das Simple Service Discovery Protocol durch ein UDP-Paket an die Multicast-Adresse 239.255.255.250 Port 1900. Der/Die MediaServer antworten dann mit einem UDP Paket an die Adresse des Clients, ebenfalls Port 1900. Im Antwort-Paket wird typischerweise eine URL mitgeliefert, unter der der Client danach den Media-Server ansprechen kann (URL für IP+Port, TCP).

Hier sind die SSDP-Discovery-Paket an 239.255.255.250 sowie das Antwort-Paket des Media-Servers an den Client mit Hinweis auf MiniDLAN/1.1.5 und http-URL mit Port 8200.

    

Im Test-Setup habe ich den MINIDLNA Server unter Ubuntu verwendet, dieser reagiert per Default auf Port 8200. Dieser Port ist abhängig vom verwendeten Media-Server und daher nur in diesem Beispiel so gültig.

Wir benötigen also für das Discovery und den nachfolgenden Media-Stream folgende Einstelungen:

  • Multicast muß prinzipiell von WLAN nach Trusted ermöglicht werden. [1]
  • Das UDP-Paket von WLAN an UPnP-Multicast:1900 UDP muß erlaubt werden. [2]
  • Das UDP-Paket vom Media-Server(Trusted) an den Client:1900 UDP muß erlaubt werden. [2]
  • Der Zugriff per HTTP:8200 vom WLAN an den Media-Server muß erlaubt werden. [2]

[1] Aktivieren von Multicast auf der Firebox

Multicast kann im Policy Manager unter Setup => Multicast aktiviert werden.

Hierbei sind folgende Dinge zu beachten:

  1. prinzipielles Aktivieren von Multicast
  2. Hinzufügen der beteiligten Interfaces und Aktivieren der Rendezvous-Point Candidates

Kurzgefasst: Hier müssen die Interfaces aktiviert werden, auf denen das Multicast-Paket wiederholt werden soll. Da in diesem Fall das Abspielgerät im WLAN sitzt und ein Multicast zum Discovery schickt, muß dieses Multicast-Paket auf dem Trusted Network wiederholt werden => Trusted ist ein RP Candiate.

die von WatchGuard automatisch angelegten Policies

  • MR-IGMP-Allow
  • MR-PIM-Allow

können/sollten disabled werden – diese werden hier für UPnP/DLNA nicht benötigt.

[2] Benötigte Policies

Die benötigten Policies sind dann wie folgt:

  • From: Interface WLAN To: IP:239.255.255.250 Port 1900/udp
    diese Regel erlaubt, daß auf dem WLAN-Interface ein UPnP Discovery Paket angenommen wird. Über die Einstellung [1] und den RP Candidate auf Trusted wird dieses Paket dann auf dem Trusted Interface wiederholt.
  • From: Alias Media_Server To: Interface WLAN Port 1900/udp
    diese Regel erlaubt die Antwort-Pakete vom Media Server an den anfragenden Client auf dem WLAN-Interface
  • From: Interface WLAN To: Alias Media_Server Port 8200/tcp
    ACHTUNG:
    der Port ist hier abhängig vom verwendeten Media-Server, bei MINIDLNA unter Ubuntu ist das per default der Port 8200/tcp.
    diese Regel erlaubt den HTTP-Zugriff auf den Media-Server.

 

Weiterführende Links:

Leave a Comment

Your email address will not be published. Required fields are marked *