ddclient IP Update Problem mit einem Bash-Script einfach lösen
Ich glaube jeder kennt das Problem, dass der Ddclient z.B. nach einem Update einfach die IP bei diversen Dynamic-DNS-Services nicht mehr updaten will. Wenn auch Änderungen der Konfigurationsdatei nicht mehr zum Erfolg führen, ist diese Anleitung, welche beschreibt wie ihr das Problem mit Hilfe eines Scripts ein für alle Mal lösen könnt genau richtig für euch.
Das Skript überprüft mittels Ping, ob die Adresse erreichbar ist und zwingt den Ddclient bei Nichterreichbarkeit zum Update. Dieses Bash-Script kann man dann ganz einfach als Cronjob alle 10 Minuten ausführen lassen.
Man könnte natürlich auch alle 10 Minuten ein Update durchführen, dadurch kann es aber passieren, dass euer Account aufgrund von “Spammerei” gesperrt wird.
Voraussetzung für das Script ist, dass der Ddclient konfiguriert ist und ein erzwungenes Update auch funktioniert.
sudo ddclient -force
Skript
Das Skript pingt die angegebene Adresse. Ist diese nicht erreichbar, wird der Ddclient mit der Option “force” ausgeführt.
Bevor ihr es verwendet, fügt eure DDNS-Adresse ein und wählt das gewünschte Loglevel. Ebenfalls muss die Datei mit dem “chmod”-Befehl ausführbar gemacht werden.
sudo chmod +x ddhelper.sh
Download: ddhelper.sh
#!/bin/bash # check if ddns is reachable otherwise force ddclient update #CONFIG #address for dynamic IP ADDRESS="yourdnsaddress.com" #number of pings (default 1) PINGS=1 #pause between pings (default 3) PAUSE=3 #logtype: #0 disable log #1 only on IP-change #2 everything LOGTYPE=1 #path to logfile LOGFILE="/var/log/ddhelper.log" #SCRIPT if [ $LOGTYPE -ge 0 ]; then touch $LOGFILE fi ping -c $PINGS -i $PAUSE $ADDRESS > /dev/null if [ $? -eq 0 ]; then if [ $LOGTYPE -eq 2 ]; then echo "[--]" `date` "-" $ADDRESS "is reachable, nothing to do." >> $LOGFILE; fi else if [ $LOGTYPE -ge 0 ]; then echo "[XX]" `date` "-" $ADDRESS "is not reachable, forcing update." >> $LOGFILE; fi sudo ddclient --force fi
Cronjob erstellen
Damit das Script alle 10 Minuten läuft erstellen wir einen Cronjob im Crontab des Roots um es mit Administratorrechten auszuführen. Man öffnet die Datei mit …
sudo crontab -e
… und fügt folgende Zeile am Ende der Datei ein.
*/10 * * * * /PFAD/ZUM/SCRIPT/ddhelper.sh
Jetzt noch speichern und das Skript wird alle 10 Minuten gestartet.
Der eine Ping alle 10 Minuten sollte nicht allzuviele zusätzliche Ressourcen fressen und man erhält dadurch die Sicherheit, dass die IP trotz etwaiger Änderungen durch Updates oder auch Konfiguratiosfehler eingetragen wird.
3 Kommentare zu “ddclient IP Update Problem mit einem Bash-Script einfach lösen”
Kommentar abgeben
Kategorien
- Allgemein (9)
- Anderes (6)
- DIY Anleitungen (8)
- Downloads (22)
- HTC (16)
- Linux (35)
- Server (29)
- Windows (8)
Neueste Beiträge
- Tor Relay auf Ubuntu 14.04 zur Verfügung stellen
- Sogo Upgrade von Version 2 auf Version 3 auf Ubuntu 14.04
- Download: Lustige und sinnlose Feiertage im November 2012 als ICS Datei
- Skype-Symbol auf Windows 7 aus der Taskleiste verschwinden lassen
- Statische IP ab Ubuntu Server 12.04 LTS Precise Pangolin
Folge uns auch via
Archiv
WERBUNG
Featured Video
Kalender
M | D | M | D | F | S | S |
---|---|---|---|---|---|---|
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 |
Meta
Unterstützt mich
futurezone.at – Newsfeed
- Apple iMac M4 im Test: Schön, stark und trotzdem nicht perfekt 21. Dezember 2024
- Windows 11 blendet unerwünschte Werbung ein 20. Dezember 2024
- Indien testet Mars-Basis am Himalaya 20. Dezember 2024
- Forscher bauen Virtual Reality Headset für Mäuse 20. Dezember 2024
- Tandem-Solarzelle mit Weltrekord-Effizienz soll bald serienreif sein 20. Dezember 2024
DANKE! Alles hab ich in der Conf versucht aber nichts hat geholfen. Script rein Cronjob rein und endlich sichere IP Updates.
Wie geil ist das denn? Es funktioniert endlich!!! Dankeschön auch von mir!
danke! funktioniert super