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. Anleitung folgt!

Mit dieser Anleitung sollte

ddclient

korrekt installiert und eingerichtet sein.

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