DynDNS

Einführung

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.

Update über den Router

AVM Fritz!Box

Ubiquiti: UniFi

Update mit ddclient (Linux Server)

ddclient
GitHub

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.

Installation ddclient

Schritt 1: Installation von ddclient

System aktualisieren

sudo apt update && sudo apt upgrade -y

ddclient installieren

sudo apt install ddclient -y

Installation prüfen

ddclient --version

Schritt 2: Konfiguration von ddclient

Konfigurationsdatei öffnen

Die Hauptkonfigurationsdatei befindet sich unter

/etc/ddclient.conf

.

sudo nano /etc/ddclient.conf

Inhalt der Datei anpassen

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

Datei speichern und schließen

Drücke

Ctrl + O

, dann

Enter

, um zu speichern, und

Ctrl + X

, um den Editor zu schließen.

Schritt 3: Cache zurücksetzen (optional)

Falls Änderungen an der Konfiguration vorgenommen wurden, sollte der Cache geleert werden:

sudo rm -f /var/cache/ddclient/ddclient.cache

Schritt 4: Dienst aktivieren und starten

ddclient als Dienst starten

sudo systemctl enable ddclient
sudo systemctl start ddclient

Status überprüfen

sudo systemctl status ddclient

Schritt 5: Testlauf durchführen

Du kannst

ddclient

manuell im Debug-Modus ausführen, um sicherzustellen, dass alles korrekt funktioniert:

sudo ddclient -daemon=0 -debug -verbose -noquiet

Schritt 6: Logs überprüfen

Wenn Probleme auftreten, überprüfe die Logs:

sudo tail -f /var/log/syslog

Schritt 7: Anpassung der Web-IP-Abfrage (optional)

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.

Mit dieser Anleitung sollte

ddclient

korrekt installiert und eingerichtet sein. Bei weiteren Fragen oder Problemen stehe ich gerne zur Verfügung!

Konfiguration / Befehle

sudo nano /etc/ddclient.conf
sudo service ddclient restart
sudo ddclient -daemon=0 -debug -verbose -noquiet -force

STRATO Config

# 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 (Standardempfänger ist "root") mail=root # Sende allgemeine Benachrichtigungen an den root-Benutzer mail-failure=root # Sende Fehlerbenachrichtigungen ebenfalls an root # Speicherort für die PID-Datei, um sicherzustellen, dass nicht mehrere Instanzen von ddclient laufen pid=/var/run/ddclient.pid # Aktiviere SSL/TLS für sichere Verbindungen ssl=yes # Methode zur Ermittlung der externen IP-Adresse use=web # Hole die öffentliche IP-Adresse von einem Webdienst (Standard: checkip.dyndns.com) web=checkip.dyndns.com/ # Webseite zur Abfrage der öffentlichen IP web-skip=IP Address # Textmuster, um die IP-Adresse zu extrahieren # DynDNS-Server, der aktualisiert werden soll server=dyndns.strato.com # DynDNS-Server von Strato # Verwendetes Protokoll für den DynDNS-Server protocol=dyndns2 # DynDNS2-Protokoll für die Kommunikation mit Strato # Anmeldedaten für den DynDNS-Server login=domain.de # Benutzername (oft die Domain) password='password' # Passwort für die Authentifizierung (achte auf Anführungszeichen bei Sonderzeichen) # Hostname, der aktualisiert werden soll subdomain.domain.de # Die spezifische Domoin und/oder Subdomain, die beim DynDNS-Dienst aktualisiert werden soll