Clanintern Clanintern Clanintern

Forum

ffentliche Foren
FORUM: Spiele & Computer THEMA: iptv multicast in linuxrouter
AUTOR BEITRAG
The Terminator

RANG Deckschrubber

#1 - 02.04 13:22

so ich hab gestern mein entertain paket bekommen, incl vdsl50.
habe nach etwas längerer zeit das internet über meinen fli4l router hinbekommen.

was schon sehr seltsam war:
scheinbar geht es bis zum modem nichtmehr über vlan, da das "modem" als solches nur als router mit integriertem modem existiert und sich scheinbar selbstständig drum kümmert.

ich habe weder eine verbindung mit vlan id 7 noch 8 bekommen.
normal pppoe ohne vlan funktioniert problemlos.
(habe im W721V menü NAT und alles andere ausgestellt, so dass es als reine bridge funktioniert)

habe nun eine 3te netzwerkkarte für den iptv reciever eingebaut und auf multicast eingestellt.

aber wie man es auch drehen will, friert das bild im reciever nach 10 sekunden ein.
(->ersten 10 sekunden vom stream sind UDP, danach wechselt er auf multicast)

ich habe die einstellungen mehrfach überprüft
(auf diverse andere seiten mit howtos nachgeschaut) immer mit dem gleichen ergebnis: es scheint kein multicast verkehr am reciever anzukommen.
verbunden ist der reciever(MR300) direkt über ein crosslink kabel an der netzwerkkarte.
ich habe nun den verdacht, dass die karte kein multicast unterstützt.
es ist eine intel pro 100/S die multicast eigentlich unterstützen sollte(treiber: eepro100).

dachte erst, dass es am fehlenden vlan liegt.
aber iptv geht auch über die dsl 16k angebote, die kein vlan haben(selber reciever). also muss der fehler woanders liegen.

wenn ich den W721V als router nehme, funktioniert alles.

die einstellungen sind bis auf die VLAN spezifischen einstellungen identisch mit diesen hier:
http://www.t-hack.com/wiki/index.php/Konfiguration_anpassen

kann bei bedarf auchnoch einen direkten auszug vom paketfilter geben.

danke im voraus
*al!ve* - irgendwo zwischen Semester 4 und 7

RANG 0wn3r

#2 - 02.04 21:44

Heit du hast den w721v als Modem rumstehen, der fli4l ist Router, deine externe IP liegt am fli an?

Ich denke am einfachsten installierst du n Sniffer (opt_ngrep, wrd ich mal nach erstem googeln vermuten) auf deinem fli und guckst, ob da berhautp die Multicastpackete eingehen.

Wenn ja dann im nchsten Schritt nen Sniffer an beliebiger Stellen in deinem internen LAN installieren und prfen, ob der fli die Multicastpackete auch ins interne LAN weiterreicht. Das ist ja normalerweise eher nicht der Fall, Multicast sollte am Router (egal ob NAT oder Routing) Halt machen. In der von dir verlinkten Seite steht zwar im letzten Punkt was ber Multicast, aber nachdem ich "IGMP_PROXY_ALT_N" nur begrenzt ber Google finde wrde ich vermuten, dass das schlicht der falsche Parameter ist. Ich kann mir zwar anhand deiner Seite ausmalen was "IGMP_PROXY_ALT_NET_1='239.35.0.0/16'" wohl bedeutet, trotzdem wrde ich bei einem "anstndigen" Feature erwarten, dass Google dazu ne offizielle Doku ausspuckt.

Meine Vermutung deshalb: Multicasts der IPTV gehen bei dir am fli ein, der erkennt dass es Multicasts sind, ignoriert dass du die am IPTV haben willst sondern behandelt sie wie beliebige andere eingehende Multicasts und verwirft sie.

[edit]

Mit folgender Konstellation knntest du das Problem umgehen. Nicht schn aber sollte taugen:
* w721v als NAT-Router konfigurieren
* DHCP am w721v deaktivieren
* beide NICs des fli an die internen Ports des w721v hngen
* der "externen" NIC des fli ne statische IP geben die der w721v lokal erreichen kann
* die "externe" IP deines fli im w721v als DMZ eintragen
Bei geeigneten IPs sowohl in der DHCP-Range des fli als auch als interne IPs von w721v, fli und Receiver hngen alle Gerte im selben Subnetz, der fli bekommt den gesamten externen Traffic ab, alle ausgehenden Connections laufen durch den fli aber der Receiver kriegt seine Multicast-Streams direkt vom w721v ohne ber den fli zu routen.
The Terminator

RANG Deckschrubber

#3 - 02.04 22:25

ja, daran dachte ich auch schon. das wär aber wirklich die letzte "lösung" für das problem.


http://wiki.freakempire.de/doku.php/linux/t-home_iptv_ohne_speedport_unter_linux_vdsl

unter dem punkt IPTV ist die "richtige" config für das plugin
hab in die /etc/igmpproxy.conf auf meinem router nachgeschaut und das steht dort genauso drin.

phyint ppp0 upstream ratelimit 0 threshold 1
         altnet 239.35.0.0/16
         altnet 217.0.119.0/24
         altnet 193.158.35.0/24
         altnet 192.168.2.0/24
# configure downstream
phyint eth2 downstream ratelimit 0 threshold 1
# configure disabled interface
phyint lo disabled
phyint eth0 disabled
phyint eth1 disabled
code


und ne offizielle doku gibt es dazu auch, die liegt dem plguin bei.


Fl4il Paket

OPT_IGMP
Version 1.0.2 / 11.01.2009

OPT_IGMP ist ein IGMP-PROXY [1] Paket fr fli4l, welches erlaubt, T-Home IPTV (andere wurden derzeit noch nicht getestet) mit fli4l als Router statt dem mitgelieferten Router Speedport W700/701 zu verwenden

Fli4l package by JKL2020@web.de (support by many others ? siehe Danke)









Inhalt

A Wofr? 2
B Was wird hier beschrieben? 2
C Voraussetzung 2
D Hardware Setup 3
E VLAN-Konfiguration (Optional fr VDSL) 4
F Konfiguration einer zustzlichen NIC fr IPTV 5
G Funktion 6
H Konfiguration 6
I nderungen in anderen Config-Dateien 7
J Verweis auf Quellen zum Thema VLAN und IPTV 7
K Updates 8
L FAQ 8
M To-Do 9
N Danke 9




A
Wofr?

Die Deutsche Telekom AG bietet derzeit VDSL25/VDSL50 - Entertain Comfort/Plus VDSL - mit Bandbreiten von bis zu 25/50 Mbit/s an.

Mit dem Paket kommt die Mglichkeit, IPTV zu empfangen. Mitgeliefert wird ein WLAN-Router (Speedport W700V/W701V), der etwas enthlt was viele Router heute noch nicht knnen, nmlich IGMP (Internet Group Management Protocol) Routing. Zweck eines IGMP-Proxies ist, den Multicast-Traffic (verwendet bei IPTV) zwischen Netzen weiterzuleiten.

Wer fli4l fr IPTV statt Speedport-Router nutzen will, braucht einen IGMP-Proxy auf dem fli4l.

OPT_IGMP stellt einen simplen dynamischen Multicast Routing Daemon als IGMP-Proxy auf dem fli4l zur Verfgung, womit ITPV auch hinter einem fli4l-Router ermglicht wird.

OPT_IGMP ist eine Zusammenfassung aus Informationen aus der NewsGroup [7].

B Was wird hier beschrieben?

Die Dokumentation zum OPT_IGMP Paket beschreibt, wie fli4l konfiguriert werden muss, um VDSL und T-Home IPTV mit der mitgelieferten Set-Top-Box (STB) X300T/X301T hinter einem fli4l-Router zu betreiben.

Fr die Konfiguration wird eine zustzliche NIC (Network Interface Card = LAN- bzw. Ethernet-Karte) im fli4l verwendet, um die Set-Top-Box (STB) direkt (ohne Switches, Hubs, etc.) mit dem fli4l zu verbinden.

C Voraussetzung

Hardware:
* HW fr fli4l: Fr VDSL 25/50 sollte es besser kein 486er mehr sein. P2-233 wurde bereits erfolgreich getestet. Ich setze derzeit ein via epia MB ein. Wichtig ist, dass die eingesetzte HW nicht an seine Leistungsgrenzen stát, da es sonst zu Paketverlusten kommt was zu Bild- und Tonstrungen fhren kann. Um die Auslastung von fli4l zu berprfen, kann man das tool ?top? installieren, welches im Paket opt_tool ausgewhlt werden kann. Top lsst sich auf dem fli4l jederzeit in der Kommandozeile starten, um die Auslastung des fli4l bestimmen, falls man bei Bild-/Tonstrungen die eingesetzte HW-Performance ausschlieáen will.

* Gute Ethernetkarten - keine NICs mit Realtek-Chipsatz als Interface zur IPTV Set-Top-Box und ggf. zum VDSL-Modem. Beispiele: 3Com, Intel Pro100; mit Gigabit-Karten mit 82540EM Chips gab es Probleme (siehe Newsgroup)
* STB (Set-Top-Box), wie beispielsweise den T-Home Receiver X300T/X301T
* VDSL-Modem, wie das mitgelieferte Speedport 300HS
Achtung: Das ?normale DSL?-Modem kann fr VDSL nicht verwendet werden

Software:
* Fli4l ab V3.1.2 bzw. V3.20 aufwrts (wegen des kernel 2.6)
* Paket: kernel_26 (kernel 2.6.16.51) oder neuer
* Paket: advanced_networking (optional; nur fr T-Home wegen VLAN erforderlich)

Anpassungen der folgenden Konfigurationsdateien:
* base.txt
o Interface fr LAN eth0
o Interface fr DSL/VDSL: eth1
o Zustzliches Interface fr SetTop-Box: eth2 (in dieser Beschreibung)
o PF_INPUT_2='any 224.0.0.0/4 ACCEPT'
o PF_FORWARD_3='any 224.0.0.0/4 ACCEPT'

* dsl.txt
o ndern der NIC in virtual NIC (optional; nur fr T-Home/VDSL erforderlich)

D Hardware Setup

Um eine IPTV STB nutzen zu knnen, mssen alle Netzwerk-Knoten (Hub, Switch, Bridge, Gateway, Router) zwischen der IPTV Box und dem Streaming Server multicastfhig sein. Ist das nicht der Fall und ist kein IGMP-Proxy im Netz, dann ?frieren? Bild und Ton nach wenigen Sekunden ein.

Deshalb sollte man vorsichtig sein, falls man zwischen STB und fli4l-Router billige Netzwerk-Knoten (im Home-Netzwerk sind das i.d.R. SHO Switches) einzusetzen mchte, denn die meisten untersttzen kein Multicast, auáer es werden Switches eingebaut, die ber IGMP-Snooping oder EBTables verfgen.

Bei der Verwendung von WLAN und OpenVPN-Bridges fr IPTV kommt es zu Problemen, weil die Multicastpakete als Broadcasts im LAN landen.

Hier wird die Konfiguration mit 3 NIC?s beschrieben, mit einem getrennten Subnetz fr IPTV, um alle o.g. Probleme auszuschlieáen. Trotzdem geht das ganze natrlich auch mit einem einzelnen NIC an dem gleichzeitig PCs und die IPTV STB hngen. Wer die ?Single? NIC-Methode bevorzugt sollte selbst wissen was er tut (das wird hier nicht weiter beschrieben).

3 Karten-Konfiguration

Der einfachste Weg, eine IPTV STB zu nutzen, ist eine zustzliche NIC im fli4l zu installieren, die VLAN (falls T-Home) untersttzt. Leider sind derzeit nicht alle NIC?s VLAN tauglich.

Getestete NIC?s die fr IPTV/VLAN funktionieren sind derzeit 3Com 905c und Intel Pro/100. Es gibt darber hinaus sicherlich noch viele andere, jedoch nicht von mir getestet. Bekannte NIC?S die Probleme bereiten knnen sind: Intel Gigabit NICs mit 82540EM Chipsatz.

Anbei ein Diagramm, wie im genannten Beispiel der fli4l Router vom Standard-Router zum Router mit 3 NIC?s migriert wird:


* Standard-Konfiguration:
o eth0 wird als NIC fr das interne home/office LAN in base.txt eingetragen
o In dsl.txt wird als DSL-Interface eth1 angegeben



VDSL-Modem Fli4l-Router
LAN-Schnittstelle




* Erweiterte Konfiguration mit zustzlichem IPTV NIC
o Nach Einbau des zustzlichen NIC in den fli4l-Router wird in base.txt fr die zweite NIC eth2 eingetragen.


Fli4l-Router
VDSL-Modem IPTV-Schnittstelle zur STB

LAN-Schnittstelle


E VLAN-Konfiguration (Optional fr VDSL)

Eines vorweg: Der IGMP-Proxy ? OPT_IGMP - ist nicht auf VLAN angewiesen. Vielmehr wird VLAN derzeit fr T-Home/VDSL verwendet und muss dafr vom Router untersttzt werden, der eingesetzt wird. Ob VLAN fr den Internet-Betrieb auch bei anderen Providern (Arcor, Alice, etc?) bentigt wird, entzieht sich meinen derzeitigen Kenntnissen.

Um also VDSL25/50 von T-Home fr den Internet-Betrieb zum Laufen zu bringen, muss der NIC zum VDSL-Modem zwingend als VLAN-Interface konfiguriert werden - siehe auch [8]. VLAN hat also nichts mit IGMP und IPTV zu tun, wird aber hier beschrieben, weil es Voraussetzung fr Betrieb des fl4il am VDSL-Anschluá von T-Home mit einem VDSL-Modem (kein ?normales? DSL-Modem).

An alle die nur das ?normale DSL? der Telekom, also ADSL, ADSL2, ADSL2+ haben: VLAN wird nur von VDSL bentigt, nicht aber vom ?normalen DSL?. Die VLAN-Konfiguration wird deshalb mit dem ?normalen DSL? nicht funktionieren.


Fr VLAN ist folgende Konfiguration erforderlich:
(NICs wie im Kapitel D Hardware-Setup Standard-Konfiguration angegeben)

advanced_networking.txt:
VLAN_DEV_N='1'
VLAN_DEV_1_DEV='eth1? # interface of VDSL-Modem; example: eth1
# In unserem Beispiel geht 'eth1' zum VDSL-Modem
VLAN_DEV_1_VID='7? # ID7 to support VLAN

Optional: Falls die verwendete NIC mit der MTU-Gráe Probleme hat, muss der MTU-Wert ber den Parameter DEV_MTU angepasst werden. Im Test zeigte die Intel Pro/100 (e100) und auch meine 3-Com-Karte keine Probleme, andere User berichten, dass bei der 3Com ?3c59x? der MTU-Wert auf 1496 angepasst werden muss.

DEV_MTU_1='' # Adjust MTU size of NIC on VDSL-Modem
# Example: DEV_MTU_1='eth1 1496'

dsl.txt:
PPPOE_ETH='eth1.7' # eth<nummer der karte zum vdsl-modem>.7'
# Bsp 'eth1.7'

Mit der beschriebenen VLAN-Konfiguration sollte der fli4l als Router fr VDSL25/30 von T-Home ohne Probleme arbeiten, sofern die eingesetzte HW leistungsfhig genug ist.



F Konfiguration einer zustzlichen NIC fr IPTV

Nachdem die zustzliche NIC in den fli4l eingebaut ist, muss in base.txt die Konfiguration fr diese zweite NIC angegeben werden.

Fr die Anzahl der NIC?s steht normalerweise (Standard-Konfiguration) eine 1 (die DSL-Karte wird nicht mitgezhlt). Hier wird jetzt eine 2 eingetragen, da wir 2 NIC?s benutzen (siehe Erweiterte Konfiguration mit zustzlichem IPTV NIC)

NET_DRV_N='2'
NET_DRV_1='via-rhine' # 1. NIC fr als LAN-Schnittstelle
NET_DRV_2='3c59x' # 2. NIC ? hier 3Com fr IPTV SetTopBox

Jetzt mssen wir den Adressraum fr die zweite NIC festlegen. Ich verwende im LAN 192.168.2.0/24 und habe die zweite NIC mit dem Adressraum 192.168.3.0/24 versehen.

IP_NET_N='2'
IP_NET_1='192.168.2.0/24' # LAN
IP_NET_1_DEV='eth0' # LAN
IP_NET_2='192.168.3.0/24' # IPTV
IP_NET_2_DEV='eth2' # IPTV

Damit es spter auch mit der DHCP-Adressierung klappt und ich die SetTop-Box mit ?Namen? ansprechen kann, habe ich noch folgende Einstellungen vorgenommen.

HOST_24_NAME='iptv' # beliebig waehlbar
HOST_24_IP='192.168.3.4' # beliebig waehlbar
HOST_24_MAC='000:E0:93:19:04' # T-Home X300T

DNSDHCP_RANGE_2_START='192.168.3.10' # entsprechend IP_NET_2
DNSDHCP_RANGE_2_END='192.168.3.20' # entsprechend IP_NET_2
DNSDHCP_RANGE_2_DNS_SERVER=''
DNSDHCP_RANGE_2_NTP_SERVER=''
DNSDHCP_RANGE_2_GATEWAY=''

Fr die neue NIC muss der Zugriff auf das Internet natrlich genauso funktionieren, wie fr die erste NIC. Dazu sind weitere Einstellungen in base.txt notwendig.

PF_INPUT_1='IP_NET_1 ACCEPT'
PF_INPUT_2='IP_NET_2 ACCEPT'
. . .
PF_FORWARD_5='IP_NET_1 ACCEPT'
PF_FORWARD_6='IP_NET_2 ACCEPT'
. . .
PF_POSTROUTING_1='IP_NET_1 MASQUERADE'
PF_POSTROUTING_2='IP_NET_2 MASQUERADE'

Am Besten ist es nach der Konfiguration der neuen NIC an diese erst mal seinen PC zu hngen, um zu sehen, ob man ber die neue NIC auch ins Internet kommt. Ist der Test erfolgreich, sollte die neue zweite NIC richtig konfiguriert sein
G
Funktion

Beim Booten des fli4l-Routers werden die Parameter der config-Datei igmp.txt in die Konfigurationsdatei /etc/igmpproxy.conf geschrieben, welche beim Start des Programms igmpproxy eingelesen werden.

Sobald der Router sich mit dem Internet verbindet, startet das Script ip-up499.igmp den IGMP-Proxy, falls igmpproxy.conf vorhanden ist. Beim Trennen (Hang-up) wird der Prozess von igmpproxy gestoppt und beim erneuten Verbinden wieder gestartet.

H Konfiguration

Hier wird der IGMP-Proxy aktiviert bzw. deaktiviert:

OPT_IGMP_PROXY='yes' # IGMP Proxy installieren: yes or no

Mit Quickleave kann die Last im Upstream-Link gesenkt werden. Falls der Parameter ?Quickleave? mit ?yes? eingeschaltet wird, fhrt das dazu, dass der Multicast nach einem Kanalwechsel schneller abbestellt und so die Last im Downstream gesenkt wird, indem sich der IGMP-Proxy wie ein Receiver verhlt.

Gibt es 2 STB?s und sehen diese dasselbe Programm, dann kann es (mit Quickleave = yes) passieren, dass beim Umschalten des Programms von einer STB bei der zweiten STB das Programm unterbrochen wird.

Beim Einsatz von nur einer STB kann Quickleave gefahrlos eingeschaltet werden (yes).

IGMP_PROXY_QUICKLEAVE_ON='yes' # Quickleave-Modus einschalten
# yes or no; Default: yes


Fr den IPTV-Betrieb bentigt der IGMP-Proxy ein Upstream- und ein Downstream-Interface. Das Upstream-Interface ist die Schnittstelle mit der NIC, an dem das VDSL-Modem hngt. Diese sollte i.d.R. immer gleich bleiben.

IGMP_PROXY_UPLOAD_DEV='ppp0' # Upstream Interface; Default: ppp0

Die Schnittstelle des Downstream-Interfaces (NIC zur IPTV SetTop-Box) ist hier abhngig von der HW-Konfiguration einzutragen. Fr fli4l mit zweiter NIC ? wie in diesem Dokument beschrieben - ist eth2 das Interface zur SetTop-Box.

IGMP_PROXY_DOWNLOAD_DEV='eth2' # Downstream Interface

Alle anderen Schnittstellen, auáer dem eben festgelegten Downstream-Interface, die nicht fr IPTV benutzen werden, mssen unbedingt ausgeschaltet werden. Insbesondere gilt dieses fr das Interface zum VDSL-Modem (in unserem Beispiel eth1 bzw. eth1.7). Das erledigt OPT_IGMP ab V1.0 allerdings von selbst.



Mit dem Parameter ALT_NET werden Adressbereiche fr Multicast-Traffic festgelegt, welche Ihren Ursprung auáerhalb des Heim-Netzwerks haben, sowie der lokale Adressbereich, an der die STB hngt.

IGMP_PROXY_ALT_N='4' # Anzahl der Multicast Sourcen
IGMP_PROXY_ALT_NET_1='239.35.0.0/16' # IPTV streams - immer benoetigt
IGMP_PROXY_ALT_NET_2='217.0.119.0/24' # Erforderlich fuer T-Home
IGMP_PROXY_ALT_NET_3='193.158.35.0/24' # Erforderlich fuer T-Home
IGMP_PROXY_ALT_NET_4='192.168.3.0/24' # Adressraum der IPTV SetTop-Box


I nderungen in anderen Config-Dateien

Damit der Multicast-Traffic von auáen auch in das Heimnetz und zur STB kommt, sind noch folgende nderungen in base.txt vorzunehmen.

.
.
PF_INPUT_3='any 224.0.0.0/4 ACCEPT'
.
.
PF_FORWARD_3='any 224.0.0.0/4 ACCEPT'
.
.
Hinweis: Wer glaubt, diese Eintrge lassen sich sparen, kann hier gerne experimentieren. Ich bin zum Ergebnis gekommen, dass diese Adressen notwendig sind.[/quote]

quote
Dr. Udo Brmme

RANG Nach-3-Bier-Kotzer

#4 - 03.04 16:03

* DHCP am w721v deaktivieren

quote

dann funktioniert der receiver nicht mehr, der ist zwingend auf dhcp angewiesen.
*al!ve* - irgendwo zwischen Semester 4 und 7

RANG 0wn3r

#5 - 03.04 16:56

Der kann ja ne IP vom fli bekommen.
The Terminator

RANG Deckschrubber

#6 - 10.07 11:35

update für leute dies noch interessiert:

nach langem gesuche fand ich heraus, dass iptv auf vlan8 umgestellt worden ist und das der w721v die vlans im bridged modus nicht ins netzwerk/internet weiterleitet.

(es verarbeitet die vlans schon vorher, darum braucht man bei dem router auch kein vlan zum verbinden, denn das modem macht selbst im bridged modus viel mehr als es "sollte"

einzige möglichkeit ist wohl das speedport 300HS modem irgendwo zu kaufen, weil das ein reines modem ist und dann würde die ganze geschichte mit den vlans auch so funktionieren.
*al!ve* - irgendwo zwischen Semester 4 und 7

RANG 0wn3r

#7 - 13.07 22:21

Öhm ... ich hab in #2 vorgeschlagen, den Speedport nur noch als Modem zu verwenden. Ne Option "PPPoE-Passthrough" wird der wohl auch haben. Das funktioniert dann wie deine Idee in #6 mit dem 300HS, nur dass du keine neue Hardware anschaffen musst.
The Terminator

RANG Deckschrubber

#8 - 14.07 00:02

das problem ist primr nicht das igmp sondern das vlan.
das w721v reicht das vlan selbst im bridged modus nicht durch, somit kriegt der reciever/fli4l auch nix davon ab.

ich mchte das gert auch nicht im nat modus laufen lassen, sebst mit einer dmz.

denn:
die leistung des gerts ist unter aller sau und mir murkst es so schon ab und zu mal ab, wenn ich es mit ein "paar" verbindungen belaste oder mal richtig dampf auf die leitung lasse.(im bridged modus, ohne nat!)
weil es eben die pakete trotzdem noch in gewisser weise bearbeitet(vlan).

bin auch nicht der einzigste mit dem problem, viele leute haben sich schon beschwert wegen dem gert und im nat modus soll die leistung nichtmal 35mbit/s erreichen.

von seiten der telekom heit es: "an dem problem wird gearbeitet"