Digital Eliteboard - Das Digitale Technik Forum

Registriere dich noch heute kostenloses um Mitglied zu werden! Sobald du angemeldet bist, kannst du auf unserer Seite aktiv teilnehmen, indem du deine eigenen Themen und Beiträge erstellst und dich über deinen eigenen Posteingang mit anderen Mitgliedern unterhalten kannst! Zudem bekommst du Zutritt zu Bereiche, welche für Gäste verwehrt bleiben

dynDNS update script (kompatible zu allen embedded linux's also receiver, fitz etc)

r00t

Hacker
Registriert
17. August 2010
Beiträge
379
Reaktionspunkte
74
Punkte
28
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)
Code:
Du musst dich Anmelden oder Registrieren um den Inhalt der Codes zu sehen!
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:
Code:
Du musst dich Anmelden oder Registrieren um den Inhalt der Codes zu sehen!

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)
 
Zuletzt bearbeitet:
AW: dynDNS update script (kompatible zu allen embedded linux's also receiver, fitz et

Die aktuelle Scriptversion pingt den DynDNS Host an und vergleicht diese IP mit der IP die von
Du musst dich Anmelden oder Registrieren um diesen link zusehen!
zurück gegeben wird und bei Abweichung wird der DynDNS Host aktuallisiert
 
AW: dynDNS update script (kompatible zu allen embedded linux's also receiver, fitz et

bei linux reciver haste den ort angegeben wo kommt sie bei fritz hin
 
AW: dynDNS update script (kompatible zu allen embedded linux's also receiver, fitz et

das kannst du dir aussuchen :)
 
AW: dynDNS update script (kompatible zu allen embedded linux's also receiver, fitz et

ja, eigentlich ist es generell egal.
es sollte nur nicht in /tmp gelegt werden aber ansonsten kann man es sich aussuchen, ob /bin oder /var/bin oder /home/bla ... :)

nachher (1-2h) kommt aber noch ne neue version von dem script - hab noch ein paar bugs gefunden bzw behoben
 
AW: dynDNS update script (kompatible zu allen embedded linux's also receiver, fitz et

Es wird leider schon etwas grösser das Script, ursprünglich 970Byte, mittlerweile 4,1kB :)

An der Version 0.4 habe ich das beenden vom Script im Hintergerund verbessert - jetzt versucht er mind. 5x das Script zu beenden (es klappt leider nicht immer beim ersten mal)
Und was mir auch noch sehr wichtig war, ist eine alternative URL um die aktuelle IP herraus zu finden.
Falls http://checkip.dyndns.org/ jetzt mal nicht reagiert wird stattdessen http://www.myip.ch/ abgefragt

Ausserdem wird mit './dyndnsupdater.sh help' eine kleine Kommando-Hilfe angezeigt und mit './dyndnsupdater.sh auto' lässt sich das script in den Hintergrund parken (quasi identisch zu './dyndnsupdater.sh &')
 
AW: dynDNS update script (kompatible zu allen embedded linux's also receiver, fitz et

dieser script soll doch bestimmt auf den usb stick und wohin ?
auf die fritz kann sie wohl nicht kopiert werden?
kann mann als editor auch crimson nehmen?
 
AW: dynDNS update script (kompatible zu allen embedded linux's also receiver, fitz et

Probier es doch einfach mal aus?

Wie ich bereits sagte ist der Ort wo das Script letzlich abgelegt wird, völlig wumpe - hauptsache es ist ausführbar und auch richtig ins Startupscript eingebunden


Meiner Meinung nach trifft das für alle Scripts zu, die nicht in irgendeiner Form auf einem receiver übers Fernbedienungsmenue oder ähnlich angesprochen werden müssen


Wenn du nicht weisst ob dein Editor "crimson" Linux kompatible ist, benutz lieber nano oder vi (vim) auf deiner Box oder besorg dir UltraEdit oder Proton
(ich kenne nicht jeden editor)
 
AW: dynDNS update script (kompatible zu allen embedded linux's also receiver, fitz et

Hi, ich möchte auch gerne das Script nutzen. Kann mir jemand sagen, wo ich den Eintrag: /bin/dyndnsupdater.sh & einfügen muss?
Ich hab einen DM 800 mit Gemini 5.1 drauf. In welches Startscript kann man ihn integrieren? :emoticon-0122-itwas

Vielen Dank.
 
AW: dynDNS update script (kompatible zu allen embedded linux's also receiver, fitz et

Hi, nein, habe ich nicht. Es gibt verschiede Ordner: rc0, rc1, rc 2 usw. aber eine Datei rc-lokal finde ich niergendwo.
 
AW: dynDNS update script (kompatible zu allen embedded linux's also receiver, fitz et

Wedernoch ? Das kann eigentlich nicht sein :)
(rc.local nicht rc-lokal)

Und sonst erstell sie neu: vi /etc/rc.local

/var/etc/init.d/start_neutrino gäbe aber wie gesagt auch noch ;)
 
AW: dynDNS update script (kompatible zu allen embedded linux's also receiver, fitz et

Im init.d gibt es keine Datei die mit Start anfängt. Neutrino wohl gar nicht, weil es Enigma ist.
Kann ich die rc.local nur mit dem Start-Befehl anlegen oder muss da noch was rein?

Danke!

Edit:
Ich hab gerade in anderem Forum erfahren, dass die Datei es nicht auf der Dreambox gibt. Man muss den Startbefehl ans
Ende der /etc/init.d/bootup, anhängen!
 
Zuletzt bearbeitet:
AW: dynDNS update script (kompatible zu allen embedded linux's also receiver, fitz et

Hi, ich nochmal.

Ich hätte eine Frage, was bedeutet dieser Satz (rot eingezeichnet):

"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)".

Soll man das "auto" irgendwo einfügen?

Vielen Dank.
 
Zurück
Oben