DynDNS (Dynamic DNS) ist ein Dienst, der es ermöglicht, einen festen Domainnamen mit einer sich ändernden IP-Adresse zu verknüpfen. Das ist praktisch, wenn man auf Geräte oder Server in einem Netzwerk mit dynamischer IP-Adresse (z. B. bei Heimanschlüssen) zugreifen möchte. Der Dienst aktualisiert automatisch den DNS-Eintrag, sobald sich die öffentliche IP-Adresse ändert, sodass der Domainname immer erreichbar bleibt.
ddclient ist ein Open-Source-Dienstprogramm, das verwendet wird, um Dynamic DNS (DDNS)-Einträge zu aktualisieren. Es wird hauptsächlich genutzt, um eine Domain mit einer dynamischen IP-Adresse zu verknüpfen. Dies ist besonders hilfreich für Nutzer, die keine statische IP-Adresse haben (wie sie oft von Internetanbietern für Privatanschlüsse bereitgestellt wird), aber dennoch von außen auf ihre Geräte oder Netzwerke zugreifen möchten.
sudo apt update && sudo apt upgrade -y
sudo apt install ddclient -y
ddclient --version
Die Hauptkonfigurationsdatei befindet sich unter
/etc/ddclient.conf
.
sudo nano /etc/ddclient.conf
Beispiel für Strato (Dynamic DNS):
daemon=300 # Aktualisierungsintervall in Sekunden syslog=yes # Logs in syslog speichern mail=root # Mail bei Problemen an root senden mail-failure=root # Fehlerberichte an root senden pid=/var/run/ddclient.pid # Speicherort der PID-Datei ssl=yes # SSL-Verschlüsselung verwenden use=web # Öffentliche IP von einer Webquelle abrufen web=checkip.dyndns.com/ # Webseite zur Abfrage der öffentlichen IP web-skip=IP Address # Textmuster, um die IP-Adresse zu extrahieren server=dyndns.strato.com # Strato-DNS-Server protocol=dyndns2 # Protokolltyp login=deine_domain.de # Benutzername (Domainname) password='dein_passwort' # Passwort für die Strato-DNS-Verwaltung deine_domain.de # Die zu aktualisierende Domain
Drücke
Ctrl + O
, dann
Enter
, um zu speichern, und
Ctrl + X
, um den Editor zu schließen.
Falls Änderungen an der Konfiguration vorgenommen wurden, sollte der Cache geleert werden:
sudo rm -f /var/cache/ddclient/ddclient.cache
sudo systemctl enable ddclient sudo systemctl start ddclient
sudo systemctl status ddclient
Du kannst
ddclient
manuell im Debug-Modus ausführen, um sicherzustellen, dass alles korrekt funktioniert:
sudo ddclient -daemon=0 -debug -verbose -noquiet
Wenn Probleme auftreten, überprüfe die Logs:
sudo tail -f /var/log/syslog
Falls du die öffentliche IP nicht von einer Webquelle wie
checkip.dyndns.com
abrufen möchtest, kannst du:
- Einen anderen Webdienst angeben: Passe die Zeile
web=...
in der Konfiguration an. - Die IP vom Router abrufen: Verwende
use=cmd
und ein benutzerdefiniertes Skript, um die IP direkt vom Router abzurufen. Anleitung folgt!
Mit dieser Anleitung sollte
ddclient
korrekt installiert und eingerichtet sein.
sudo nano /etc/ddclient.conf
sudo service ddclient restart
sudo ddclient -daemon=0 -debug -verbose -noquiet -force
# Configuration file for ddclient generated by debconf # Pfad: /etc/ddclient.conf # Interval in Sekunden, in dem ddclient ausgeführt wird, um die IP-Adresse zu überprüfen und zu aktualisieren daemon=300 # Alle 5 Minuten # Schreibe Ereignisse in das Systemlog (/var/log/syslog) syslog=yes # E-Mail-Benachrichtigungen senden (St