DynDNS: Unterschied zwischen den Versionen
Lars (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Bernd (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 1: | Zeile 1: | ||
Das Problem eines Computers, der mit einer dynamischen Adresse im Internet hängt, teilt sich in die beiden Bereiche: Der zuständige DNS-Server muss wissen, wie die aktuelle IP des Rechners ist und diese in seinen DNS-Daten richtig eintragen. Und zweitens muss die Zeit, die die Daten im DNS-Zwischenspeicher bleiben drastisch reduziert werden. | |||
Das Problem eines Computers, der mit einer dynamischen Adresse im Internet hängt, teilt sich | |||
Ein Server, der diese beiden Dienste anbietet, nennt man DynDNS. | Ein Server, der diese beiden Dienste anbietet, nennt man DynDNS. | ||
Auf | Auf unseren Servern bieten wir diese Möglichkeit an. Dazu bekommt der Nutzer einen Zugang über den die jeweils aktuelle IP-Adresse zum Zeitpunkt der Wiedereinwahl aktualisiert werden kann. Aus diesen Daten wird dann ein Hostname im DNS-Server erstellt, der eine Gültigkeit von 120 Sekunden hat. Das bedeutet, nach spätestens 120 Sekunden muss jeder Nameserver im Internet wieder bei unserem Server nachfragen, ob die Adresse noch stimmt. | ||
Dadurch erreicht man eine sehr hohe Verfügbarkeit. | Dadurch erreicht man eine sehr hohe Verfügbarkeit. | ||
Zeile 25: | Zeile 13: | ||
Das Update der aktuellen Adresse erfolgt bequem per SSH mit einem [[Key-Login (OpenSSH)|SSH-Key]]. Sobald der Rechner mit dem passenden privaten Schlüssel (private-key) eine Verbindung zum Server aufbaut, wird die IP-Adresse aktualisiert. | Das Update der aktuellen Adresse erfolgt bequem per SSH mit einem [[Key-Login (OpenSSH)|SSH-Key]]. Sobald der Rechner mit dem passenden privaten Schlüssel (private-key) eine Verbindung zum Server aufbaut, wird die IP-Adresse aktualisiert. | ||
Dazu ist ein Key zu erstellen (geschickterweise ohne Passwort) und der nötige öffentliche Schlüssel (public-key) muss auf dem Server ( | Dazu ist ein Key zu erstellen (geschickterweise ohne Passwort) und der nötige öffentliche Schlüssel (public-key) muss auf dem Server (über unser Webinterface) eingefügt werden. | ||
Das Update selbst führt man am einfachsten aus, im dem man den Befehl | Das Update selbst führt man am einfachsten aus, im dem man den Befehl | ||
Zeile 37: | Zeile 25: | ||
===per HTTPS=== | ===per HTTPS=== | ||
Es kamen immer wieder Anfragen, ob man unsere DynDNS-Einträge auch per HTTPS aktualisieren kann. | Es kamen immer wieder Anfragen, ob man unsere DynDNS-Einträge auch per HTTPS aktualisieren kann. Das ist nützlich für Hardware-Router, die mit dem Service von dnydns.org kompatibel sind und trotzdem einen frei wählbaren update-Server-Name erlauben. | ||
Technisch funktioniert das so: | Technisch funktioniert das so: | ||
Zeile 46: | Zeile 32: | ||
aufgerufen. Dyndns.org kennt noch mehr Parameter, die sind für uns aber unerheblich. | aufgerufen. Dyndns.org kennt noch mehr Parameter, die sind für uns aber unerheblich. | ||
:'''[user]''' ist | :'''[user]''' ist der Name des DynDNS-Account, wie im Webinterface zu sehen. | ||
:'''[password]''' ist das Passwort, | :'''[password]''' ist das Passwort des DynDNS-Accounts, wie im Webinterface festgelegt. | ||
:'''[IP]''' ist die aktuelle IP des Clients. Der Parameter ist optional, wenn er angegeben wird hat er Priorität gegenüber dem was der Webserver als REMOTE_ADDR sagt. | :'''[IP]''' ist die aktuelle IP des Clients. Der Parameter ist optional, wenn er angegeben wird hat er Priorität gegenüber dem was der Webserver als REMOTE_ADDR sagt. | ||
Version vom 21. Mai 2012, 13:36 Uhr
Das Problem eines Computers, der mit einer dynamischen Adresse im Internet hängt, teilt sich in die beiden Bereiche: Der zuständige DNS-Server muss wissen, wie die aktuelle IP des Rechners ist und diese in seinen DNS-Daten richtig eintragen. Und zweitens muss die Zeit, die die Daten im DNS-Zwischenspeicher bleiben drastisch reduziert werden.
Ein Server, der diese beiden Dienste anbietet, nennt man DynDNS.
Auf unseren Servern bieten wir diese Möglichkeit an. Dazu bekommt der Nutzer einen Zugang über den die jeweils aktuelle IP-Adresse zum Zeitpunkt der Wiedereinwahl aktualisiert werden kann. Aus diesen Daten wird dann ein Hostname im DNS-Server erstellt, der eine Gültigkeit von 120 Sekunden hat. Das bedeutet, nach spätestens 120 Sekunden muss jeder Nameserver im Internet wieder bei unserem Server nachfragen, ob die Adresse noch stimmt.
Dadurch erreicht man eine sehr hohe Verfügbarkeit.
Das Update
per SSH
Das Update der aktuellen Adresse erfolgt bequem per SSH mit einem SSH-Key. Sobald der Rechner mit dem passenden privaten Schlüssel (private-key) eine Verbindung zum Server aufbaut, wird die IP-Adresse aktualisiert.
Dazu ist ein Key zu erstellen (geschickterweise ohne Passwort) und der nötige öffentliche Schlüssel (public-key) muss auf dem Server (über unser Webinterface) eingefügt werden.
Das Update selbst führt man am einfachsten aus, im dem man den Befehl
ssh -4 -q -T dyndns@zucker.schokokeks.org
bei jeder Einwahl ausführt.
Eventuell möchte man eine spezielle SSH-Key-Datei angeben, das macht man dann mit -i pfad/zur/id_rsa.
Unser DNS-Server meldet ein erfolgreiches Update mit der Meldung good ipadresse. Eventuell möchte man diese Meldung nicht sehen, sondern nur wenn das Update fehlgeschlagen ist. Dann kann man den Befehl noch um den Anhang | grep -v -e "good " erweitern.
per HTTPS
Es kamen immer wieder Anfragen, ob man unsere DynDNS-Einträge auch per HTTPS aktualisieren kann. Das ist nützlich für Hardware-Router, die mit dem Service von dnydns.org kompatibel sind und trotzdem einen frei wählbaren update-Server-Name erlauben.
Technisch funktioniert das so: Es wird die URL
- https://[user]:[password]@dyndns.schokokeks.org/nic/update?myip=[IP]
aufgerufen. Dyndns.org kennt noch mehr Parameter, die sind für uns aber unerheblich.
- [user] ist der Name des DynDNS-Account, wie im Webinterface zu sehen.
- [password] ist das Passwort des DynDNS-Accounts, wie im Webinterface festgelegt.
- [IP] ist die aktuelle IP des Clients. Der Parameter ist optional, wenn er angegeben wird hat er Priorität gegenüber dem was der Webserver als REMOTE_ADDR sagt.
Aufgrund der Tatsache, dass viele Hardware-Router das Update nur über HTTP und nicht über HTTPS durchführen können, wurde unsere Richtlinie in diesem Punkt etwas gelockert. Das Update darf nun auf gleiche Art und Weise auch über HTTP gemacht werden. Sofern HTTPS vom benutzen Gerät unterstützt wird, ist dies natürlich zu bevorzugen!
DynDNS-Update mit einem DD-WRT-Router
Sofern man einen Router mit der Linux-Firmware DD-WRT hat, kann man diesen für das DynDNS-Update benutzen. Dazu muss folgendes eingetragen werden:
DDNS-Service: DynDNS.org Nutzername: USERNAME Passwort: PASSWORT Hostname: HOSTNAME --dyndns_server_name dyndns.schokokeks.org --dyndns_server_url /nic/update?
Der Hostname wird nur gebraucht um herauszufinden ob ein Update nötig ist. Beachten Sie, dass die zusätzlichen Parameter mit in das Feld für den Hostname eingetragen werden müssen!
DynDNS-Update mit einem Router von AVM (und anderen)
Die meisten handelsüblichen DSL-Router haben eine DynDNS-Update-Möglichkeit eingebaut, der auch mit unserem DynDNS-Service genutzt werden kann. Das Kriterium dafür ist normalerweise ob ein eigener Update-Server-Name eingegeben werden kann. Oftmals kann man DynDNS-Anbieter auf "Benutzerdefiniert" setzen.
Geräte dieser Bauart können i.d.R. kein https-Update durchführen. Ausnahmsweise ist daher für DynDNS-Updates keine Verschlüsselung zwingend notwendig.
Am Beispiel einer AVM Fritz!Box müssen folgende Einstellungen gesetzt werden:
Feld | Eintrag in diesem Feld |
---|---|
Dynamic DNS-Anbieter | Benutzerdefiniert |
Update-URL | dyndns.schokokeks.org/nic/update?myip=<ipaddr> |
Domainname | Hier muss Ihr DynDNS-Hostname eingetragen werden. Der Router nutzt diesen Hostname um herauszufinden ob die Adresse geändert werden muss. |
Benutzername | Der Benutzername, der sich wie folgt zusammensetzt: loginname_dyndnsname |
Kennwort / Kennwortbestätigung | Ihr selbst vergebenes Kennwort für diesen DynDNS-Zugang. Nicht Ihr Login-Passwort! |
DynDNS-Update mit ddclient
ddclient ist ein simpler Dienst der sich auf Linux Rechnern installieren lässt. Die meisten Distributoren führen das Paket ddclient direkt in ihrer Paketverwaltung, d.h. lässt es sich einfach installieren. ddclient läuft im Hintergrund und überwacht regelmäßig ob die IP für die Domain noch aktuell ist. Dabei ist nur eine kleine Konfigurationsdatei nötig um den Schokokeks DynDNS zu nutzen:
# /etc/ddclient.conf ssl=yes protocol=dyndns2 use=web, if=whatismyip.org server=dyndns.schokokeks.org login=loginname_dyndnsname password='PASSWORT' machine.mydyndnsdomain.de
Das Beispiel wäre für die Domain machine.mydyndnsdomain.de als DynDNS Adresse. Es wird der Dienst whatismyip.com verwendet um die aktuelle öffentliche IP des Netzwerks (bzw. Routers) herauszubekommen.
Anmerkung: Die Datei heißt ddclient.conf und befindet sich entweder in /etc/ oder /etc/ddclient/. Gestartet wird der Dienst wie üblich mit '/etc/init.d/ddclient start'.
DynDNS-Update mit Synology DiskStation
Die DiskStation-Reihe von Synology setzt auf ein embedded Linux und erlaubt eine feste Liste von DynDNS-Anbietern. Darunter ist schokokeks.org bislang nicht. Mit etwas Aufwand, lässt sich schokokeks.org aber hinzufügen. Dazu muss man SSH aktivieren (unter Terminal-Dienste) und sich als root einloggen. Das geht mit dem gleichen Kennwort wie für den Webinterface-Benutzer "admin". Dann editiert man die Datei /etc.defaults/ddns_provider.conf und fügt folgenden Eintrag hinzu:
[schokokeks.org] modulepath=DynDNS queryurl=dyndns.schokokeks.org/nic/update?myip=__MYIP__