You are not logged in.

Dear visitor, welcome to VDR Portal. If this is your first visit here, please read the Help. It explains in detail how this page works. To use all features of this page, you should consider registering. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

wirbel

Im Forum Zuhause

  • "wirbel" started this thread

Posts: 9,859

Location: Berlin

  • Send private message

1

Saturday, August 9th 2008, 11:58am

Howto: Streaming ins Internet mit DSL und streamdev-server

Obwohl schon mehrfach Streaming howto's hier zu finden sind, hier noch einmal am Beispiel von DSL6000:

1) DSL Router konfigurieren
=====================================================================
1.1) Wake On LAN
Um den heimischen VDR aufzuwecken bietet sich natürlich WOL an. WOL benutzt UDP Port 9, deswegen muss der DSL Router diese Zugriffe an den VDR weiterleiten:

Source code

1
2
 Name--------IP Address---------- Protocol Private Port/Public Port     Inbound Filter   Schedule 		
 Wake-On-LAN 192.168.0.255        UDP                 9/9               Allow All        Always


siehe http://support.dlink.com/Emulators/dgl41…ual_Server.html


1.2) VDR für WOL einrichten
=====================================================================
Die meisten Netzwerkkarten-Treiber schalten das Feature WOL beim Laden aus, deswegen muss das feature bei jedem Boot erneut explizit eingeschaltet werden:

Source code

1
/usr/sbin/ethtool -s eth0 wol g


In meinem Fall erledigen die Startscripte das:
/etc/rc.d/init.d/network_wakeup

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#!/bin/sh

. /etc/sysconfig/rc
. $rc_functions
. /etc/sysconfig/network

case "$1" in
	start)
		# Start all network interfaces
        /usr/sbin/ethtool -s eth0 wol g 
	;;

	*)
		echo "Usage: $0 {start}"
		exit 1
	;;
esac

# End /etc/rc.d/init.d/network_wakeup


Source code

1
2
cd /etc/rc.d/rc3.d
ln -s ../init.d/network_wakeup S21network_wakeup


1.3) Dynamic DNS im Router einrichten
=====================================================================
Es gibt mehrere Anbieter im Netz die DynDNS anbieten, also es erlauben einen PC im Internet unter einem selbstvergebenen Namen zu finden. Ich nutze hier im Beispiel www.dyndns.org.
-> bei dyndns.org anmelden und account einrichten.
Im Router eintragen: Tools->Dynamic DNS

Source code

1
2
3
4
5
6
7
-------------Dynamic DNS---------------------
Enable Dynamic DNS : yes  
Server Address :  <www.DynDNS.org (Free)>  
Host Name : StreamingExample.dyndns.com <-- dein bei dyndns angegebener Hostname
Username or Key : myUsername   <-- dein dyndns angegebener Username
Password or Key : *****  <-- dein dyndns angegebenes Passwort
Verify Password or Key : *****

siehe http://support.dlink.com/Emulators/dgl41…ynamic_DNS.html


1.4) Test WOL aus dem Netz
=====================================================================
mit ether-wake (linux) oder Wol.exe (Win) ein Magic Packet an die dyndns Adresse mit der MAC Adresse der VDR-Netzwerkkarte schicken.
Wenn alles bis hierhin korrekt ist wacht der VDR auf. Ansonsten wieder zurück zu 1.1 und nachbessern oder mal nur im internen LAN ein wol packet absetzen.

Source code

1
ether-wake -p StreamingExample.dyndns.com 00:11:22:33:44:55

Natürlich Namen und MAC Adresse ersetzen. Die einzutragende MAC Adresse verrät ein

Source code

1
ifconfig eth0 | grep HWaddr

auf dem VDR.

1.5) Einrichten des Router für Streaming
=====================================================================

Anfrage aus dem Netz auf für den Streaming Port müssen an den VDR ins interne Netz weitergeleitet werden. Also eine zweite 'Virtual Server' Rule anlegen;

Source code

1
2
 Name--------IP Address---------- Protocol Private Port/Public Port     Inbound Filter   Schedule 		
 Video-Stream 192.168.0.2         TCP               3000/3000            Allow All        Always

siehe http://support.dlink.com/Emulators/dgl41…ual_Server.html


Hier im Beispiel ist der VDR die 192.168.0.2, fürs Internet wird Port 3000 benutzt. Der externe Port kann ohne weiteres geändert werden, würde ich sogar so vorschlagen.

2) VDR fürs Streamen einrichten
=====================================================================

2.1) streamdev Plugin installieren und streamdev-server Plugin mitstarten
=====================================================================
siehe http://www.vdr-wiki.de/wiki/index.php/Streamdev-plugin

2.2) $VDRCONFIG/plugins/streamdevhosts.conf anpassen:
=====================================================================

Source code

1
0.0.0.0/0            # any host on any net (USE THIS WITH CARE!)

Wie man hier sieht kann damit allerdings *jeder* aus dem Netz auf den Stream zugreifen.

2.3) /root/externremux.sh anlegen
=====================================================================

Source code

1
2
3
4
5
6
#!/bin/sh
IN=-
OUT=/tmp/out
rm -f $OUT.avi /tmp/out.log
/usr/bin/mkfifo $OUT.avi
cat $OUT.avi & /usr/local/bin/mencoder "$IN" -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=400 -oac mp3lame -lameopts cbr:preset=96:mode=0 -vf scale=576:324 -o $OUT.avi &>$OUT.log


Hier müssen Pfad zu mencoder, sowie Bitraten angepasst werden. Im Beispiel passt das für DSL 6000 ganz gut.

3. Testen
=====================================================================
Der Zugriff auf den Stream erfolgt dann über http://StreamingExample.dyndns.com/3000/Extern/1

Falls in 1.5 ein anderer externer Port angegeben wurde muss die 3000 in diese Nummer geändert werden. Namen an den bei dyndns angegebenen Namen anpassen, 1 ist der aktuelle Kanal.


Ich nutze zur Wiedergabe den SMPlayer, siehe http://smplayer.sourceforge.net/. Der ist ganz nett, siehe Abbildung von der sourceforge Seite:



Es macht Sinn in den Einstellungen den Buffer auf ca. 2,5MB zu erhöhen, damit läuft streaming ohne Aussetzer.

viel Spaß.. :)

This post has been edited 1 times, last edit by "wirbel" (Aug 9th 2008, 4:41pm)


Posts: 2,805

Location: Landkreis Dahme-Spreewald (LDS)

  • Send private message

2

Saturday, August 9th 2008, 12:19pm

Hallo

Zitat: Matzetronic

Das Problem wird bei den meisten sein, dass sie keine Möglichkeit haben, auf dem Router die MAC-Adresse des aufzuweckenden Clients fest einzutragen.

Das bedeutet, dass der Router eine ARP-Anfrage nach der zur IP gehörenden MAC-Adresse stellt - keine Antwort bekommt - und deshalb das WoL-Paket nicht zum Client übermittelt ...

------------------------

Fritz!Box

http://www.ip-phone-forum.de/showthread.…5&highlight=arp

LG Ronny

This post has been edited 1 times, last edit by "ronnykornexl" (Aug 9th 2008, 12:20pm)


wirbel

Im Forum Zuhause

  • "wirbel" started this thread

Posts: 9,859

Location: Berlin

  • Send private message

3

Saturday, August 9th 2008, 12:23pm

Der Router braucht die MAC nicht zu wissen, er sieht ein normales UDP Packet auf Port 9. Das wird an die angegebenen IPs weitergegeben.

Ein Magic Packet besteht übrigens lediglich aus 6xFF gefolgt von 16x MAC Adresse, ist also nix was von normalen Paketen abweicht.

Posts: 2,805

Location: Landkreis Dahme-Spreewald (LDS)

  • Send private message

4

Saturday, August 9th 2008, 12:30pm

Klappt hier nicht.

Erst nach setzen von nem permanenten Eintrag in der Tabelle ... auf der Fritz!Box (PERM)

Source code

1
2
shell> arp
crux (192.168.178.21) at 00:50:8B:F6:99:6A [ether] PERM on lan


Alle anderen Adressen, wirft die Box nach gewisser Zeit weg.

LG Ronny

This post has been edited 1 times, last edit by "ronnykornexl" (Aug 9th 2008, 12:30pm)


wirbel

Im Forum Zuhause

  • "wirbel" started this thread

Posts: 9,859

Location: Berlin

  • Send private message

5

Saturday, August 9th 2008, 12:41pm

Hast du die 192.168.178.21 oder die 192.168.178.255 im Router angegeben?

Posts: 2,805

Location: Landkreis Dahme-Spreewald (LDS)

  • Send private message

6

Saturday, August 9th 2008, 12:44pm

Quoted

Original von wirbel
Hast du die 192.168.178.21 oder die 192.168.178.255 im Router angegeben?


Ich teste, es gleich mal. (hatte immer die 192.168.178.21) eingetragen. (wäre ja ein Ding).

:ot

Hatte, auch mal eine Idee (zu [Announce] WakeMeUp - Server-0.14 / Client-0.9 von Matzetronic).

Und zwar, über den Service, die VDR Kiste wecken zu lassen.

http://www.rshut.com/products/wol/

Hier der Schnippsel.

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#!/bin/sh

# CONFIG START
  HOSTNAME=adress.dyndns.org

  HWADDR="" # hardware adress:  aa:bb:cc:dd:ee:ff

  #TIMEZONE=-12 # GMT -12:00
  #TIMEZONE=-11 # GMT -11:00
  #TIMEZONE=-10 # GMT -10:00
  #TIMEZONE=-9  # GMT -9:00
  #TIMEZONE=-8  # GMT -8:00
  #TIMEZONE=-7  # GMT -7:00
  #TIMEZONE=-6  # GMT -6:00
  #TIMEZONE=-5  # GMT -5:00
  #TIMEZONE=-4  # GMT -4:00
  #TIMEZONE=-3  # GMT -3:00
  #TIMEZONE=-2  # GMT -2:00
  #TIMEZONE=-1  # GMT -1:00
  #TIMEZONE=0   # GMT +0:00
  #TIMEZONE=1   # GMT +1:00
  TIMEZONE=2    # GMT +2:00
  #TIMEZONE=3   # GMT +3:00
  #TIMEZONE=4   # GMT +4:00
  #TIMEZONE=5   # GMT +5:00
  #TIMEZONE=6   # GMT +6:00
  #TIMEZONE=7   # GMT +7:00
  #TIMEZONE=8   # GMT +8:00
  #TIMEZONE=9   # GMT +9:00
  #TIMEZONE=10  # GMT +10:00
  #TIMEZONE=11  # GMT +11:00
  #TIMEZONE=12  # GMT +12:00
# CONFIG END

HWADDR=${HWADDR:-$(LANG=C ifconfig | awk '/HWaddr/ { print $NF }')}
ARGS=($(LANG=C date -d "1970-01-01 UTC $1 seconds" +"%m %d %g %I %M %p"))

# Your BASH have to be compiled with /dev/tcp/ support!
exec 5<>/dev/tcp/rshut.com/80
echo -e "GET /products/wol/?mobile=0&ip=$HOSTNAME&mac=${HWADDR//:/-}&schedule=$ARGS%2F${ARGS[1]}%2F${ARGS[2]}+${ARGS[3]}%3A${ARGS[4]}+${ARGS[5]}&timezone=$TIMEZONE HTTP/1.0\n" >&5
grep 'Wakeup is scheduled' <&5
exec 5>&1-
exec poweroff


Klappt auch alles Prima.

Aber, nur mit Modifiaktionen auf der Fritz!Box, sprich ARP Eintrag.

LG Ronny

Posts: 2,805

Location: Landkreis Dahme-Spreewald (LDS)

  • Send private message

7

Saturday, August 9th 2008, 12:55pm

Klappt nicht.

LG Ronny
ronnykornexl has attached the following image:
  • Bildschirmphoto2.png

wirbel

Im Forum Zuhause

  • "wirbel" started this thread

Posts: 9,859

Location: Berlin

  • Send private message

8

Saturday, August 9th 2008, 12:59pm

Tja, dann brauchst du nen besseren Router. :) Bei mir klappts bestens.

Posts: 2,805

Location: Landkreis Dahme-Spreewald (LDS)

  • Send private message

9

Saturday, August 9th 2008, 1:02pm

Quoted

Original von wirbel
Tja, dann brauchst du nen besseren Router. :) Bei mir klappts bestens.


:abgelehnt

Was hast Du denn, für einen?

LG Ronny

wirbel

Im Forum Zuhause

  • "wirbel" started this thread

Posts: 9,859

Location: Berlin

  • Send private message

10

Saturday, August 9th 2008, 1:06pm

DGL4100

Übrigens..

Quoted


Ziel-Netzwerk unterstützt "Directed Broadcasting"
Da ein ausgeschalteter Rechner im LAN keine IP-Adresse besitzt, kann das MagicPaket nur durch eine Broadcast-Nachricht innerhalb des lokalen Netzes verschickt werden. Die IP-Adresse für dieses Broadcasting endet auf ".255" (bei Netzwerken mit einer Subnetzmaske 255.255.255.0). Da das private Netz nicht über das Internet geroutet werden darf (es erscheint ja auch nur als einzelne öffentliche IP-Hostadresse), können natürlich auch keine Broadcast-Nachrichten für das private Netz direkt über das Internet (WAN) in das private Netz versendet werden: Der für die privaten Netze reservierte Adressbereich existiert im Internet per Definition schlichtweg nicht. ("Directed Broadcasting" im eigentlichen Sinne des Wortes) Auch das Senden von Directed Broadcasting Nachrichten an öffentliche Netze, was prinzipiell möglich ist, wird aus sicherheitstechnischen Gründen von den Routern im Internet im allgemeinen unterbunden. Das MagicPaket wird nun in eine (Unicast-)IP-Nachricht verpackt, und mittels "UDP" (weil ja das Ziel nicht antworten soll) an die (WAN-Host-)Adresse des (privaten) Zielnetzwerkes geschickt. Der Router muss nun die Funktionalität besitzten, die an dem definierten Port empfangene IP-Nachricht als Broadcast in das lokale Netz zu senden ("Directed Broadcasting" im übertragenen Sinne).

Hinweis:
Falls jemand bemerkt, eine Portweiterleitung auf die IP des Rechners funktioniert ja auch, sollte man bedenken, dass dies eher zufällig geschieht und von der Firmware des Routers abhängig nur befristet klappt. Das sind häufig nur einige Sekunden, es kann aber auch erheblich länger dauern. Das liegt an der Tatsache, dass die Router die Zuordnung von MAC- zu IP-Adressen eine gewisse Zeit vorhalten (ARP-Tabelle), um nicht permanent sogenannte "Who-Is"-Pakete ins Netz senden zu müssen. Das hat nichts mit der Zuordnung von Rechner zu IP in der Routerkonfiguration zu tun. Diese bewirkt nur, dass der Rechner beim Einschalten ("Ich bin wieder da, gib mir 'ne IP") jedesmal die gleiche bekommt. Die ARP wird deswegen niemals permanent gespeichert bleiben. Das wäre auch sinnlos, weil man trotzdem auch selbst dem Rechner eine IP verpassen, und diese nach belieben ändern kann.


http://ifatwww.et.uni-magdeburg.de/wol/

Posts: 2,805

Location: Landkreis Dahme-Spreewald (LDS)

  • Send private message

11

Saturday, August 9th 2008, 1:14pm

DHCP raus, feste IP rein (macht mir zuviel mosch, müßte 4 Kisten ändern ...).

Sch*** Fritz!Box, wieso kann man keine 255 eintragen?

Hier steht, es so ähnlich. (aber schon etwas älter das Posting)

http://www.ip-phone-forum.de/showthread.php?t=89999

LG Ronny

This post has been edited 1 times, last edit by "ronnykornexl" (Aug 9th 2008, 1:16pm)


wirbel

Im Forum Zuhause

  • "wirbel" started this thread

Posts: 9,859

Location: Berlin

  • Send private message

12

Saturday, August 9th 2008, 1:16pm

Du kannst auch nur einen Bereich des Subnetzes mit DHCP fahren. Zumindest geht das bei meinem Router. Dann bräuchtest du nur einen Rechner umstellen.

This post has been edited 1 times, last edit by "wirbel" (Aug 9th 2008, 1:16pm)


Posts: 2,805

Location: Landkreis Dahme-Spreewald (LDS)

  • Send private message

13

Saturday, August 9th 2008, 1:31pm

Quoted

Original von wirbel
Du kannst auch nur einen Bereich des Subnetzes mit DHCP fahren. Zumindest geht das bei meinem Router. Dann bräuchtest du nur einen Rechner umstellen.


Mal schauen.

Bei Deinem Router, scheint so und so einiges mehr zu gehen :]

--------------------

Meine Box (Fritz!Box Fon) ist auch von ANNO (Ebay 10,50 € inc Versand), obwohl die Firmware nicht so alt ist.

Source code

1
Version:  	   	06.04.33  	   	Datum:  	   	21.06.2007


Villeicht funktioniert das ganze ja mit neueren Boxen. (würde mich jedenfalls interessieren)

LG Ronny

This post has been edited 1 times, last edit by "ronnykornexl" (Aug 9th 2008, 1:38pm)


Posts: 2,805

Location: Landkreis Dahme-Spreewald (LDS)

  • Send private message

14

Saturday, August 9th 2008, 6:37pm

Nabend

Mal ein wenig gestöbert.

http://stephan.mestrona.net/wol

http://stephan.mestrona.net/wol/forum/index.php

Gibt da eine eine richtige Router Liste.

Wenn man sich ein paar Postings anschaut ... kurze Rede kurzer Sinn, jede Router-Schmiede scheint hier sein eigenes Süppchen zu kochen.

Staune, das es für solche Geschichten, keinen Standard zu geben scheint?

LG Ronny

wirbel

Im Forum Zuhause

  • "wirbel" started this thread

Posts: 9,859

Location: Berlin

  • Send private message

15

Sunday, August 10th 2008, 2:04am

Ich hab schon von vielen D-Link Routern gelesen dass es geht, meiner ist übrigens auch D-Link.

Tiroler

Professional

Posts: 692

Location: Tirol (Österreich)

  • Send private message

16

Thursday, October 9th 2008, 2:15pm

Ich häng mich mal an diesen Thread, da er gut passt...:
Das Streaming übers Internet läuft perfekt und ich wäre wunschlos glücklich, wenn mein Port 3000 nicht für alle offen wäre :tdw

Was gäbe es denn da für Möglichkeiten dies zu ändern?
Kann man irgendwo ein Passwort angeben? (so wie beim VDRAdmin-AM)

Die streamdevhosts anpassen bringt nichts, da mein VDR hinter dem Internetrouter (WRT54GL) hängt... extra ein VPN einrichten hätte ich für Overkill gehalten, vor allem weil ich oft von unterschiedlichen PCs aus arbeite...

Vielleicht hat ja jemand eine Idee für mich...
Server: 19" Rack - yaVDR 0.5, 4x DVB-S2
Server (Reserve): 19" Rack Server - Ubuntu 10.04 + yaVDR Repo (COMPUCASE 4HE, GIGABYTE 770TA-UD3, SNT-BA3151-1 Backplane, Athlon II X2 245e, 4 GB, 2x WD Caviar Green 2TB, 3x TT-budget S2-1600)
Client "Wohnzimmer": Zotac ZBOX (MLD 3.0.3)
Client "Schlafzimmer": Zotac ZBOX (MLD 3.0.3)
Client "Kinderzimmer": Asus EeeBox EB1012P-B0550 (yaVDR 0.5 Streaming Client)
Client "Fitness": Atom PC (yaVDR 0.5 Streaming Client)
Client "Küche": Asus EeeBox B202 (Lubuntu+VLC)
Client "Büro" (Lubuntu)
Client "Terrasse": NSLU2 (Debian, MPD)


wirbel

Im Forum Zuhause

  • "wirbel" started this thread

Posts: 9,859

Location: Berlin

  • Send private message

17

Thursday, October 9th 2008, 2:50pm

Du kannst doch den Router jeden andren Port von extern nach deinen internen umleiten. Oder die Freischaltung des Ports mit einem Request triggern.

Hängt eher davon ab, was du für nen Router hast.

Tiroler

Professional

Posts: 692

Location: Tirol (Österreich)

  • Send private message

18

Thursday, October 9th 2008, 3:22pm

Danke für die Antwort. Hmm, mein Router scheint ein recht einfaches Modell zu sein - ich will ihn aber ungern mit altenativer Firmware bestücken, da er ansonsten super stabil funktioniert...
Mein Linksys WRT54GL bietet die Möglichkeit des "Port Range Forward" (Port von/bis und Ziel IP) und einer "Port Triggerung":

Source code

1
2
 	  	 Triggered Range     	 	 Forwarded Range  	
Application 	Start Port 	End Port 	Start Port 	End Port 	Enable

Also Triggered Range (mit Start und End Port) und den dazugehörigen Forwarded Range (auch mit Start und End Port)

Nur kann ich damit nichts anfangen, da ich nicht verstehe, was die Funktion Port Triggerung macht(?)
Vielleicht kann ja jemand damit was anfangen... wäre sehr nett!
Server: 19" Rack - yaVDR 0.5, 4x DVB-S2
Server (Reserve): 19" Rack Server - Ubuntu 10.04 + yaVDR Repo (COMPUCASE 4HE, GIGABYTE 770TA-UD3, SNT-BA3151-1 Backplane, Athlon II X2 245e, 4 GB, 2x WD Caviar Green 2TB, 3x TT-budget S2-1600)
Client "Wohnzimmer": Zotac ZBOX (MLD 3.0.3)
Client "Schlafzimmer": Zotac ZBOX (MLD 3.0.3)
Client "Kinderzimmer": Asus EeeBox EB1012P-B0550 (yaVDR 0.5 Streaming Client)
Client "Fitness": Atom PC (yaVDR 0.5 Streaming Client)
Client "Küche": Asus EeeBox B202 (Lubuntu+VLC)
Client "Büro" (Lubuntu)
Client "Terrasse": NSLU2 (Debian, MPD)


schmirl

Professional

Posts: 1,268

Location: Nähe Augsburg

  • Send private message

19

Friday, October 10th 2008, 8:34am

Quoted

Original von Tiroler
Das Streaming übers Internet läuft perfekt und ich wäre wunschlos glücklich, wenn mein Port 3000 nicht für alle offen wäre :tdw

Was gäbe es denn da für Möglichkeiten dies zu ändern?
Kann man irgendwo ein Passwort angeben? (so wie beim VDRAdmin-AM)

Patch für Authentifizierung findest Du im Bugtracker. Wird die Tage eingecheckt - sobald ich ein bisschen Luft habe.

Tiroler

Professional

Posts: 692

Location: Tirol (Österreich)

  • Send private message

20

Friday, October 10th 2008, 9:01am

Toll dass du dir so viel Mühe gibst - kein Stress, ist "Nice to have" - rennt aber (mir) nicht weg...
Gerne teste ich deine Lösung aber durch, sobald du dein okay gibst...
Server: 19" Rack - yaVDR 0.5, 4x DVB-S2
Server (Reserve): 19" Rack Server - Ubuntu 10.04 + yaVDR Repo (COMPUCASE 4HE, GIGABYTE 770TA-UD3, SNT-BA3151-1 Backplane, Athlon II X2 245e, 4 GB, 2x WD Caviar Green 2TB, 3x TT-budget S2-1600)
Client "Wohnzimmer": Zotac ZBOX (MLD 3.0.3)
Client "Schlafzimmer": Zotac ZBOX (MLD 3.0.3)
Client "Kinderzimmer": Asus EeeBox EB1012P-B0550 (yaVDR 0.5 Streaming Client)
Client "Fitness": Atom PC (yaVDR 0.5 Streaming Client)
Client "Küche": Asus EeeBox B202 (Lubuntu+VLC)
Client "Büro" (Lubuntu)
Client "Terrasse": NSLU2 (Debian, MPD)