Domain mittels Dynamischen DNS mit einem Netzwerk mit wechselnder IP verbinden (Linux)
Bitte verwenden sie die "Drucken" Funktion am Seitenende, um ein PDF zu erstellen.
Hinweis für Besitzer von AVM FRITZ!Box Routern
Wenn Sie Dynamisches DNS nutzen möchten und Ihr Heim- oder Firmennetzwerk über eine FRITZ!Box mit dem Internet verbunden ist, empfehlen wir Ihnen, Ihre FRITZ!Box als DDNS-Client zu verwenden. Der Vorteil ist für Sie ist, dass diese Geräte in der Regel rund um die Uhr in Betrieb sind und Änderungen an der IP-Adresse daher immer zeitnah erkannt werden können. Wie Sie Ihre FRITZ!Box für den DDNS-Dienst von IONOS konfigurieren, zeigen wir Ihnen im Artikel Dynamisches DNS einrichten bei IONOS.
Wenn man von außen auf sein Heimnetzwerk oder kleines Firmennetzwerk zugreifen möchte, hat man oft folgendes Problem: Das Netzwerk ist über einen DSL-Anschluss mit dem Internet verbunden, dessen IP-Adresse sich regelmäßig ändert. Um auf das Netzwerk zugreifen zu können, müsste daher jeder stets die aktuelle IP-Adresse kennen.
Da IP-Adressen schwer zu merken sind und ihre Verwendung daher von vielen als unpraktisch empfunden wird - vor allem wenn sie sich regelmäßig ändern- ist es ratsam, für diesen Zweck eine Domain zu verwenden. Doch wie kann man sicherstellen, dass die Domain immer auf die richtige, d.h. aktuelle, IP-Adresse verweist? Die Lösung heißt: Dynamisches DNS
Was ist Dynamisches DNS?
Dynamisches DNS (Dynamic Domain Name System, kurz DDNS) ist eine Technik, die es ermöglicht, die sich ständig ändernden IP-Adressen im DNS-Eintrag der Domain automatisch zu ändern, so dass Ihr Heimnetzwerk permanent unter Ihrer Domain erreichbar ist.
So funktioniert Dynamisches DNS bei IONOS
Um Dynamisches DNS zu verwenden, installieren Sie den Multiplattform-Client von IONOS auf einem Rechner, der sich in Ihrem Netzwerk befindet. Dieser Multiplattform-Client ist in Python geschrieben.
Im Folgenden zeigen wir Ihnen, wie Sie Python und den Multiplattform-Client auf Ihrem Computer installieren und verwenden können.
Voraussetzungen
Für diese Anleitung benötigen Sie folgendes:
- Eine bei IONOS registrierte Domain. Sie müssen aber nicht diese Domain Zugriff auf Ihr Netzwerk verwenden, sondern können dazu auch eine Subdomain erstellen.
- Ein Computer/Gerät mit Linux-Betriebssystem, auf dem die Programmiersprache Python installiert werden kann.
- Der Computer/das Gerät muss dieselbe öffentliche IP-Adresse verwenden wie das Netzwerk, für das Sie Dynamisches DNS einrichten möchten. Das heißt, das Gerät muss Teil des entsprechenden Netzwerks sein.
- Der Computer/das Gerät und der Internet-Router müssen ausgehende über Port 443 (HTTPS) erlauben. Dies ist jedoch bei den meisten Systemen standardmäßig der Fall. Darüber hinaus ist keine weitere Konfiguration des Netzwerks erforderlich.
Python auf einem Computer mit dem Betriebssystem Ubuntu installieren
Wie Sie Python auf einem Computer mit dem Betriebssystem Ubuntu installieren, zeigt Ihnen die folgende Schritt-für-Schritt-Anleitung.
Installation überprüfen
Prüfen Sie, ob Python bereits installiert ist. Geben Sie hierzu den folgenden Befehl ein:
python3 --version
Um zu prüfen, ob pip korrekt installiert ist, geben Sie den folgenden Befehl ein:
pip3 --version
Python installieren
Um Python 3.x zu installieren, geben Sie die folgenden Befehle ein.
sudo apt update
sudo apt upgrade
sudo apt install software-properties-common
sudo apt install python3Um pip zu installieren, geben Sie den folgenden Befehl ein:
sudo apt install python3-pip
Multiplattform-Client installieren
Um den Multiplattform-Client zu installieren, geben Sie den folgenden Befehl ein:
sudo pip3 install domain-connect-dyndns
Um die Domain hinzuzufügen, deren DNS-Einstellungen automatisch aktualisiert werden sollen, geben Sie den folgenden Befehl ein:
sudo domain-connect-dyndns setup --domain NAME_DER_DOMAIN
Beispiel:
sudo domain-connect-dyndns setup --domain example.com
Kopieren Sie die URL und fügen Sie diese in Ihrem Browser ein.
Loggen Sie sich in IONOS ein.
Klicken Sie auf Erlauben.
Notieren Sie den angezeigten Code.
Öffnen Sie die Eingabeaufforderung und geben Sie den Code ein.
Um alle Domains zu aktualisieren, geben Sie den folgenden Befehl ein:
sudo domain-connect-dyndns update --all
Nach der Eingabe des Befehls wird z. B. die folgende Meldung angezeigt:
[root@localhost ~]# sudo domain-connect-dyndns update --all
Read example.com config.
IP 217.160.25.20 found in A record
New IP: 217.160.25.20
A record up to date.Damit die IP-Adresse regelmäßig im DNS-Record aktualisiert wird, muss ein Cronjob konfiguriert werden. Um die Crontab-Datei zu editieren, geben Sie den folgenden Befehl ein:
crontab -e
Hinweise
Cronjobs werden vom Cron-Deamon ausgeführt. Der Cron-Deamon ist ein Dienst, mit dem Sie Skripte und Programme zeitbasiert ausführen können. Die auszuführenden Befehle werden in einer Tabelle gespeichert. Diese Tabelle wird Crontab genannt.
Informationen zum Editieren und zum Aufbau der Crontab-Datei und -Syntax finden Sie im Artikel Cron
Fügen Sie den unten aufgeführten Cronjob ein:
*/1 * * * * /usr/bin/flock -n /tmp/ipupdate.lck /usr/local/bin/domain-connect-dyndns update --all --config /root/dyndns/settings.txt
Wenn der Multiplattform-Client ausgeführt wird, ermittelt er die aktuelle öffentliche IP-Adresse des Netzwerks (dies geschieht durch Senden einer HTTPS-Anfrage an ipify.org). Wenn sich die IP geändert hat, wird ein entsprechendes Update der DNS-Zone veranlasst.