EDIT - 25.01.2015: Der Dienst dnsdynamic.org scheint nicht mehr zu existieren bzw. funktioniert nicht mehr.
Da meine Fritzox leider nicht immer zu 100% korrekt die IP-Adresse bei dnsdynamic.org aktualisiert habe ich jetzt zusätzlich auf meiner Ubuntu NAS das Paket ddclient installiert.
Der Plan ist, dass die NAS alle 5 min schaut ob die IP-Adresse noch stimmt und ggf. eine Aktualisierung bei dynamicdns.org vornimmt.
Die Installation von ddclient geht mit:
sudo apt-get install ddclient
Nach den Installation werden direkt die notwendigsten Daten, wie Zugangsdaten, Name des Hosts, etc abgefragt. Die Konfiguration wird in der Datei /etc/ddclient.conf gespeichert. Da bei der Konfiguration durch die Installation nicht ganz das eingestellt wurde, was ich benötige, wird die Konfiguration nochmal von Hand bearbeitet:
sudo nano /etc/ddclient.conf
In der Konfiguration habe ich das Überwachen des Interfaces eth0 entfernt und dafür das Prüfen der IP-Adresse über eine externe Website aktiviert.
# Configuration file for ddclient generated by debconf
#
# /etc/ddclient.conf
daemon=300 # check every 5 minutes
syslog=yes # log update msgs to syslog
mail=admin@mydomain.de # mail all msgs to root
mail-failure=admin@mydomain.de # mail failed update msgs to root
#use=if, if=eth0
use=web, web=myip.dnsdynamic.com # get ip from server.
server=www.dnsdynamic.org
login=my@registered-email.com
password='mysecrectpassword'
protocol=dyndns2
myhost.dnsdynamic.net
Zusätzlich habe ich über daemon=300 den Daemon Modus aktiviert, bei den ddclient alle 300 Sekunden prüft ob die IP-Adresse noch stimmt. Mit der Option syslog=yes loggt ddclient alle Aktionen nach /var/log/syslog.
Wenn man überprüfen möchte, was ddclient tut, bzw. ob alles glatt läuft ruft man ddcilent manuell auf:
ddclient -daemon=0 -debug -verbose -noquiet
Neustarten des ddclient deamons geht mit
sudo service ddclient restart
Damit sollte das Problem mit der sporadischen Fehlfunktion der FritzBox beim Aktualisieren der IP-Adresse beim Dyndns-Provider dnsdynamic.org eigentlich gelöst sein.