dynDNS update script (kompatible zu allen embedded linux's also receiver, fritz etc)
Dieses Script
pingt regelmässig die
IP der DynDNS-host
und vergleicht sie mit der
aktuellen IP des Internetanschlusses und eine
aktuallisierung (update) erfolgt
nur wenn diese voneinander abweichen also
unterschiedlich sind.
Bei Bedarf kann von der Aktuallisierung auch ein Logfile in /tmp geschrieben werden.
Für den IP Abgleich werden 2 verschiedene Adressen abgefragt; falls die Hauptadresse von DynDNS nicht zu erreichen ist, wird stattdessen myip.ch abgefragt.
Es besteht somit
nicht die Gefahr von DynDNS wegen Flood gesperrt zu werden wie es bei anderen Scripts/Plugins leider vorkommt
Usage: dyndnsupdater.sh [now|auto|kill|help]
Damit das Script funktioniert, muss man mit einem Linux fähigen Editor (zb Ultra Edit) den Header bearbeiten. Dort muss die dyndns Host, Username und Passwort eingetragen werden.
Erstellt eine neue, ausführbare Datei mit folgendem Inhalt:
(zum Beispiel
/bin/dyndnsupdater.sh , wo das Script letzlich liegt ist egal)
ACHTUNG: $EVERY sollte man auf keinen fall unter 2min (120sec) stellen, ansonsten wird die Host evtl. von DynDNS gesperrt wegen abuse (Missbrauch)!
Damit das Script automatisch beim Hochfahren der Box auch gestartet wird, muss noch der Eintrag:
/bin/dyndnsupdater.sh &
in euer Startscript wie zb:
/var/etc/init.d/start_neutrino
oder
/etc/rc.local
oder bei der Dreambox in
/etc/init.d/bootup
eingetragen werden, aber auf jednfall
vor dem
exit 0
(Danke incognito23 für den Dreambox-Hinweis)
Bei dem start_neutrino File am besten hinter den Aufruf von "timerd" und
vor "neutrino" eintragen und das "
&" ist Wichtig und darf nicht weggelassen werden, sonst bootet die Box nicht weiter! (oder seit v0.4 gegen ein "auto" austauschen)
Das
Ende des Startup-Scripts sollte dann ungefähr so aussehen:
Um es auszuprobieren oder manuell updaten zu lassen könnt ihr das Script so aufrufen:
dyndnsupdater.sh now
Wenn ihr das LOG an habt, sähe das Ergebnis ungefähr so aus:
30.08.2010 21:09:24: HOSTIP: 84.xxx.xxx.42 - CURRENTIP: 84.xxx.xxx.79 - DynDNS answer: good 84.xxx.xxx.79
31.08.2010 21:10:22: HOSTIP: 84.xxx.xxx.79 - CURRENTIP: 84.xxx.xxx.43 - DynDNS answer: good 84.xxx.xxx.43
01.09.2010 21:09:24: HOSTIP: 84.xxx.xxx.43 - CURRENTIP: 84.xxx.xxx.110 - DynDNS answer: good 84.xxx.xxx.110
02.09.2010 21:09:13: HOSTIP: 84.xxx.xxx.110 - CURRENTIP: 84.xxx.xxx.113 - DynDNS answer: good 84.xxx.xxx.113
Das Script müsste eigentlich auf allen receivern mit embedded linux (linux allg.) etc funktionieren.
Falls dennoch Probleme auftauchen bitte kurz bescheid geben!
Danke
Letztes Script-Update: 31.08.2010 (~12:30)