Telekom Magenta TV/Entertain mit Mikrotik Router und VLANs
- 6 minsIch habe einen neuen Telekom Glasfaseranschluss im Paket mit Magenta TV. Nach einigem Rumprobieren habe ich endlich eine passende Konfiguration gefunden, mit der sowohl Internet über PPPoE und IPTV über den Media Receiver 401 (nicht ganz) problemlos funktionieren (siehe Punkt 5. Updates).
Die größte Hilfe war dabei der Artikel in Björns Techblog, der die Konfiguration für Ubiquiti Geräte beschreibt. Dort gibt es auch noch einige weitere Informationen, die ich hier gezielt ausgelassen habe.
Kurze Inhaltsübersicht:
- Big Picture / Netzwerkarchitektur
- Konfiguration von PPPoE über VLAN ID 7
- Konfiguration des IGMP-Proxy für IPTV
- Konfiguration der Switches und Accesspoints
- Konfiguration der Firewall Regeln
- Updates
0. Big Picture / Netzwerkarchitektur
Mein Mikrotik hEX Router ist per Ethernet (ether1) an das Glasfasermodem der Telekom angeschlossen:
Der Router ist mit zwei Switches verbunden (Mikrotik RB260GSP und einen Netgear GS116Ev2), die das Netzwerk im Haus verteilen. Das Netzwerk ist in mehrere VLANs unterteilt, die über ein bridge Interface auf dem hEX Router miteinander kommunizieren. Die Kommunikation der VLANs untereinander wird dabei durch Firewall Regeln eingeschränkt. Hier ist eine Übersicht der Interfaces:
1. Konfiguration von PPPoE über VLAN ID 7
Die Internetverbindung wird über PPPoE aufgebaut. In meinem Fall ist mein Router über Ethernet (Port 1) an das Telekom Glasfaser Modem angeschlossen. Das Internet der Telekom
kommt mit der VLAN ID 7, daher müssen wir das gezielt konfigurieren.
Anlegen eines neuen VLAN Interfaces auf dem WAN Port des Routers (ether1
, bzw. ether_wan
bei mir):
Anlegen des PPPoE-Client Interface mit den T-Online Zugangsdaten auf dem eben angelegten VLAN Interface. Hier müssen natürlich die richtigen Zugangsdaten eingesetzt werden.
Der Benutzername setzt sich dabei zusammen aus Anschlusskennung+T-Online-Nummer+Mitbernutzerzusatz@t-online.de
. Weitere Details sind dem Artikel bei Björn zu entnehmen.
In der UI sieht das so aus:
Mit dieser Konfiguration sollte das Internet auch schon funktionieren.
2. Konfiguration des IGMP-Proxy für IPTV
IPTV läuft in der Regel über das IGMP Protokoll. Dies erlaubt es, einen Netzwerkstream gezielt nur an die Clients zu senden, die sich auch für diesen Stream interessieren. Magenta TV läuft über IGMPv3. Damit dies im Netzwerk funktioniert, müssen wir einen sogenannten IGMP-Proxy konfigurieren. Dieser bildet im Prinzip eine Brücke zwischen der IGMP Welt im Internet und der IGMP Welt in unserem Netzwerk. D.h. die IGMP Clients in unserem Netzwerk (die Media Receiver) sprechen nicht direkt mit den IGMP Multicast Routern der Telekom, sondern nur mit dem Proxy auf dem Mikrotik Router. Dieser wiederum übernimmt die Kommunikation mit der Aussenwelt, also den IGMP Routern der Telekom.
Als erstes muss evtl. das multicast
package auf dem Router nachinstalliert werden. Dies findet ihr auf der Mikrotik Seite. Die
benötigte Architektur findet man z.B. unter System -> Resources -> Architecture Name
. Das Package muss dann über Files -> Upload ...
auf den Router
geladen werden. Nach einem Neustart wird es automatisch installiert und sollte dann unter System -> Packages
auftauchen. Zudem sollte es nun den
Menüpunkt Routing -> IGMP-PROXY
geben.
Es werden nun zwei IGMP-Proxy Interfaces benötigt: Ein Upstream
Interface, das die Kommunikation zur Aussenwelt übernimmt und mind. ein Downstream
Interface, das die
IGMP Pakete in unserem Netz verteilt. In meinem Fall will ich IGMP nur in dem VLAN, in dem auch der Receiver hängt (vlan-30-tv
).
Wichtig ist hier der Eintrag bei Alternative Subnets. Die genannte IP Adresse 87.141.215.251
ist der IGMP Router der Telekom für Entertain V2. Der Eintrag wird benötigt,
weil eure WAN IP nicht im Subnetz des Routers liegt.
Als nächstes nun das Downstream Interface. Hier wird keine spezielle Konfiguration benötigt, es muss lediglich das Interface, auf dem die IGMP Pakete weiterverteilt
werden sollen, angegeben werden.
Wer IGMP auf weiteren Interfaces braucht, muss entweder ein weiteres Proxy Interface hinzufügen, oder das Downstream Interface auf dem bridge
Interface konfigurieren.
Als letztes ist es wichtig, auf dem Bridge Interface das IGMP Snooping zu aktivieren. Das sorgt dafür, dass die IGMP Pakete nicht wie Wild an jedes Interface geschickt werden, sondern nur an diejenigen Interfaces, hinter denen auch ein IGMP Client sitzt.
3. Konfiguration der Switches und Accesspoints
Es ist wichtig, auf allen Infrastrukturkomponenten ebenfalls das IGMP Snooping zu aktivieren, damit auch die Switches und Accesspoints die IGMP Pakete nicht wahllos an alle Ports verteilen, sondern sich merken, hinter welchem Port ein Client hängt, der tatsächlich an IGMP interessiert ist. Da ich IGMP intern auf einem VLAN mache, muss das Snooping auf den Switches auch auf diesem VLAN konfiguriert werden. Ich habe hier ein Beispiel für den Mikrotik Switch und für den Netgear Switch:
Ich habe zusätzlich noch zwei Mikrotik Accesspoints die zentral über Capsman konfiguriert werden. Auf diesen gibt es in der Standardkonfiguration auch jeweils ein Bridge Interface. Zur Sicherheit habe ich auf den Bridges auch das IGMP Snooping aktiviert. Diese Einstellung muss man manuell machen, da man die Bridge nicht über Capsman konfigurieren kann.
Ich habe derzeit keinen Media Receiver über WLAN angebunden. Es kann durchaus sein, dass dazu noch weitere Einstellungen notwendig sind, da es wohl Einschränkungen bei Multicast über WLAN gibt.
4. Konfiguration der Firewall Regeln
Damit die IGMP Pakete auch den Weg ins Netzwerk finden, werden einige Firewall Regeln benötigt. Um diese zu vereinfachen, legt man eine Address List
mit den Multicast Adressen an:
Ich habe hier auch die Multicast Adressen von Entertain V1 mit aufgenommen. Vermutlich kann man diese an einem neuen Telekom Anschluss auch weglassen.
Meine Firewall ist so konfiguriert, dass sie alle Pakete dropt die nicht explizit erlaubt sind. Dafür gibt es jeweils am Ende der input
und forward
Chain eine
bedingungslose Regel mit Action=drop
. Die Regeln für IGMP müssen entsprechend vor diesen Regeln eingefügt werden. Es wird je eine accept
Regel pro Chain benötigt:
5. Updates
- 07.06.2021 - Seit kurzem gibt es bei mir immer mal wieder Ruckler (ca. alle 10-15 Minuten hängt das Bild für ein paar Sekunden). Vermutlich liegt das daran, dass der IGMP-Proxy am downstream Interface nur IGMPv2 queries schickt (anstatt IGMPv3). Der Media Receiver merkt das auch in seiner Netzwerkanalyse an. Für meinen geringen TV Konsum kann ich damit gerade so leben. Alle meine bisherigen Versuche, das Multicast Routing im RouterOS mit PIM zu konfigurieren (dort kann RouterOS angeblich IGMPv3 SSM so wie es vom Media Receiver benötigt wird), sind bisher fehlgeschlagen. Sachdienliche Hinweise dazu nehme ich gerne entgegen.