Let op: Tweakers stopt per 2023 met Tweakblogs. In
dit artikel
leggen we uit waarom we hiervoor hebben gekozen.
Multicast achter ClearOS Firewall
Hieronder een handleiding over hoe je multicast streams (die gebruikt worden voor bijvoorbeeld IPTV) kan bekijken achter een router die draait op ClearOS. Hiervoor gaan we udpxy gebruiken, dat is een een stukje software wat udp multicast streams omzet naar unicast streams die je kunt bekijken op je normale netwerk.
Stap 1: Installeer ClearOS
Dit ga ik hier verder niet bespreken. Alle informatie over het installeren van dit OS en de basisconfiguratie ervan kun je vinden op http://www.clearfoundation.com/Software/overview.html
Hieronder ga ik er vanuit dat je een basisinstallatie hebt draaien en deze geconfigureerd hebt als gateway voor je netwerk.
Stap 2:Verbinding maken met de CLI van ClearOS
Om de benodigde wijzigingen aan te brengen moeten we eerst verbinding maken met de CLI (=Command Line Interface) van ClearOS. Dit kan standaard al via SSH, hiervoor kun je bijvoorbeeld gebruik maken van Putty. Dus download en open putty en verbind daarmee naar het ip adres van je ClearOS gateway, uiteraard kun je eventueel ook een andere SSH client gebruiken. Het IP adres van je gateway is hetzelfde adres als waarmee je in de webinterface kan komen. Zodra de verbinding tot stand is gebracht wordt gevraagd om een gebruikersnaam en wachtwoord. De gebruikersnaam is 'root' en het wachtwoord is het wachtwoord wat je tijdens de installtie hebt ingevuld en wat je ook gebruikt voor de webinterface.
Stap 3: Benodigdheden installeren
Om dadelijk udpxy te kunnen installeren moeten we eerst twee tootljes installeren die standaard nog niet in ClearOS zitten. Dat zijn 'make' en 'gcc' welke je als volgt kun installeren:
en
Voor beide wordt nog even een bevestiging gevraag waar je 'y' moet typen en de rest gaat vanzelf.
Stap 4: Udpxy installeren
Om Udpxy te installeren en vervolgens te zorgen dat deze telkens automatisch start moet je achtereenvolgens de volgende commando's uitvoeren:
IGMP configuratie op netwerkinterface aanpassen
Udpxy downloaden
Udpxy uitpakken
Naar de juiste map gaan
Compileren
Udpxy naar de sbin map kopieren
Zorg dat udpxy start tijdens het opstarten van ClearOS
Nu is udpxy in principe geinstalleerd.
Stap 5:Firewall aanpassen
Om IGMP te accepteren moeten we nog een aapassing in de firewall doorvoeren welke ook telkens gedaan wordt bij opnieuw opstarten. Hiervoor voer je de volgende regel code uit:
De configuratie is nu klaar, om te zorgen dat alles goed gaat draaien is het handig om even ClearOS te rebooten. Dit doe je eenvouding met het reboot commando:
Wanneer de reboot voltooid is en zou je in principe de udpxy status moeten kunnen bekijken via [url]http://gateway_ip:7000/status[/url]. Waarin je gateway ip uiteraard vervangt voor je eigen gateway ip. Als je die pagina kan zien is de installtie geslaagd, zo niet dan heb je ergens wat fout gedaan.
Stap 6: Multicast streams openen
De proxy draait nu, tijd om de stream te openen wat bijvoorbeeld kan met VLC. Wat wel belangrijk is om te weten is dat je de URL van de streams aan moet passen en wel op de volgende manier: Je vervangt 'udp://@' voor 'http://gateway_ip/udp/' waar je gateway_ip uiteraard weer vervangt voor je eigen gateway ip. Dus bijvoorbeeld:
Stream url
wordt
Als het goed is kun je nu kijken, veel plezier!
Stap 1: Installeer ClearOS
Dit ga ik hier verder niet bespreken. Alle informatie over het installeren van dit OS en de basisconfiguratie ervan kun je vinden op http://www.clearfoundation.com/Software/overview.html
Hieronder ga ik er vanuit dat je een basisinstallatie hebt draaien en deze geconfigureerd hebt als gateway voor je netwerk.
Stap 2:Verbinding maken met de CLI van ClearOS
Om de benodigde wijzigingen aan te brengen moeten we eerst verbinding maken met de CLI (=Command Line Interface) van ClearOS. Dit kan standaard al via SSH, hiervoor kun je bijvoorbeeld gebruik maken van Putty. Dus download en open putty en verbind daarmee naar het ip adres van je ClearOS gateway, uiteraard kun je eventueel ook een andere SSH client gebruiken. Het IP adres van je gateway is hetzelfde adres als waarmee je in de webinterface kan komen. Zodra de verbinding tot stand is gebracht wordt gevraagd om een gebruikersnaam en wachtwoord. De gebruikersnaam is 'root' en het wachtwoord is het wachtwoord wat je tijdens de installtie hebt ingevuld en wat je ook gebruikt voor de webinterface.
Stap 3: Benodigdheden installeren
Om dadelijk udpxy te kunnen installeren moeten we eerst twee tootljes installeren die standaard nog niet in ClearOS zitten. Dat zijn 'make' en 'gcc' welke je als volgt kun installeren:
code:
1
| yum install make |
en
code:
1
| yum install gcc |
Voor beide wordt nog even een bevestiging gevraag waar je 'y' moet typen en de rest gaat vanzelf.
Stap 4: Udpxy installeren
Om Udpxy te installeren en vervolgens te zorgen dat deze telkens automatisch start moet je achtereenvolgens de volgende commando's uitvoeren:
IGMP configuratie op netwerkinterface aanpassen
code:
1
| echo 'sysctl -w net.ipv4.conf.eth0.force_igmp_version=2'>>/etc/rc.d/rc.local |
Udpxy downloaden
code:
1
| wget http://sunet.dl.sourceforge.net/project/udpxy/udpxy/Chipmunk-1.0/udpxy.1.0-Chipmunk-16.tgz |
Udpxy uitpakken
code:
1
| tar -xvf udpxy.1.0-Chipmunk-16.tgz |
Naar de juiste map gaan
code:
1
| cd udpxy-1.0-Chipmunk-16 |
Compileren
code:
1
| make |
Udpxy naar de sbin map kopieren
code:
1
| cp udpxy /sbin/ |
Zorg dat udpxy start tijdens het opstarten van ClearOS
code:
1
| echo 'udpxy -p 7000 -a eth1 -m eth0' >>/etc/rc.d/rc.local |
Nu is udpxy in principe geinstalleerd.
Stap 5:Firewall aanpassen
Om IGMP te accepteren moeten we nog een aapassing in de firewall doorvoeren welke ook telkens gedaan wordt bij opnieuw opstarten. Hiervoor voer je de volgende regel code uit:
code:
1
| echo 'iptables -A INPUT -d 224.0.0.0/240.0.0.0 -j ACCEPT'>>/etc/rc.d/rc.firewall.local |
De configuratie is nu klaar, om te zorgen dat alles goed gaat draaien is het handig om even ClearOS te rebooten. Dit doe je eenvouding met het reboot commando:
code:
1
| reboot |
Wanneer de reboot voltooid is en zou je in principe de udpxy status moeten kunnen bekijken via [url]http://gateway_ip:7000/status[/url]. Waarin je gateway ip uiteraard vervangt voor je eigen gateway ip. Als je die pagina kan zien is de installtie geslaagd, zo niet dan heb je ergens wat fout gedaan.
Stap 6: Multicast streams openen
De proxy draait nu, tijd om de stream te openen wat bijvoorbeeld kan met VLC. Wat wel belangrijk is om te weten is dat je de URL van de streams aan moet passen en wel op de volgende manier: Je vervangt 'udp://@' voor 'http://gateway_ip/udp/' waar je gateway_ip uiteraard weer vervangt voor je eigen gateway ip. Dus bijvoorbeeld:
Stream url
code:
1
| udp://@224.1.3.3:12114 |
wordt
code:
1
| http://gateway_ip:7000/udp/224.1.3.3:12114 |
Als het goed is kun je nu kijken, veel plezier!
Reacties
Leuke (nuttige) beschrijving voor gebruikers die iptv hebben. Heb dit zelf ook meermalen draaiend gehad (alleen dan onder centos maar goed, veel scheelt dat niet)
- Doordat de stream unicast is, kun je, binnen hetzelfde netwerk als je internet, tv kijken, ook over Wifi. (bij Multicast wil een wifi link nog wel eens op zn bek gaan)
- Standaard heb je max 3 connecties, wil je meer dan moet je dit als parameter opgeven binnen udpxy. ( -c <nr> parameter, 3 is standaard)
- Met een portforwarding ben je niet beperkt tot je interne netwerk.. als je upload voldoende is kun je ook je streams openen vanaf kantoor/school/<whatever> (wel zou ik dan firewall rules maken om te voorkomen dat iedereen het kan)
Dmv Tversity kun je de output ook streamen: Ik kan op die manier met mn Asus oplay de streams bekijken, je kan url gewoon als bron toevoegen in tversity.
Een Popcorn hour kan direct streamen: maak hiervoor een html file aan op de interne hdd/usb stick of whatever
<A HREF="http://gateway:port/udp/224.1.3.3:12114" vod>Kijk stream 224.1.3.3</A>
enz.
Als je een beetje slimme hardware hebt kun je dit ook op dedicated boxjes draaien: udpxy kan op sommige routers oa draaien.
- Doordat de stream unicast is, kun je, binnen hetzelfde netwerk als je internet, tv kijken, ook over Wifi. (bij Multicast wil een wifi link nog wel eens op zn bek gaan)
- Standaard heb je max 3 connecties, wil je meer dan moet je dit als parameter opgeven binnen udpxy. ( -c <nr> parameter, 3 is standaard)
- Met een portforwarding ben je niet beperkt tot je interne netwerk.. als je upload voldoende is kun je ook je streams openen vanaf kantoor/school/<whatever> (wel zou ik dan firewall rules maken om te voorkomen dat iedereen het kan)
Dmv Tversity kun je de output ook streamen: Ik kan op die manier met mn Asus oplay de streams bekijken, je kan url gewoon als bron toevoegen in tversity.
Een Popcorn hour kan direct streamen: maak hiervoor een html file aan op de interne hdd/usb stick of whatever
<A HREF="http://gateway:port/udp/224.1.3.3:12114" vod>Kijk stream 224.1.3.3</A>
enz.
Als je een beetje slimme hardware hebt kun je dit ook op dedicated boxjes draaien: udpxy kan op sommige routers oa draaien.
[Reactie gewijzigd op maandag 6 september 2010 23:05]
@DJSmiley: Dat van die portforwarding lijkt mij expliciet niet de bedoeling aangezien je dan als een soort gateway dient
In ieder geval raad ik dat sterk af aangezien het in feite zelfs illegaal wordt dan aangezien je signaal opnieuw gaat verspreiden.
Die aantal connecties parameter is interessant, dat had ik namelijk nog niet gezien in de documentatie van udpxy
Overigens ClearOS is gebasseerd op centos dus als je in de CLI zit is het exact hetzelfde zelfs
Die aantal connecties parameter is interessant, dat had ik namelijk nog niet gezien in de documentatie van udpxy
Overigens ClearOS is gebasseerd op centos dus als je in de CLI zit is het exact hetzelfde zelfs
[Reactie gewijzigd op maandag 6 september 2010 23:30]
wat verschilt multicast met bij. MPD?
Reageren is niet meer mogelijk