Kategorien
Tutorials

DynDNS für IPv6-Server hinter FRITZ!Box konfigurieren

Viele Artikel erklären wie man DynDNS in Zusammenhang mit IPv6 einrichtet. Allerdings gehen diese Artikel oftmals leider nur darauf ein, wie sich DynDNS für die IPv6-Adresse der FRITZ!Box, nicht aber für die IPv6-Adresse von einem Server hinter der FRITZ!Box einrichten lässt. Mit diesem Artikel möchte ich diese Lücke schließen.

Getestet wurde dieser Artikel mit der FRITZ!Box 6490 und FRITZ!OS 07.20.

Hintergrund

Einige Grundlagen zu dem Thema IPv6 und Erreichbarkeit im Internet habe ich bereits in dem Artikel Server im Heimnetz über FRITZ!Box mit DS-Lite aus dem Internet erreichen erklärt.

Wichtig zu wissen für diesen Artikel ist, dass der Router mit IPv6 nicht mehr nur eine Adresse, sondern einen ganzen Adressblock vom Internet Service Provider zugewiesen bekommt, sodass alle Geräte hinter dem Router über eine eigene öffentliche IPv6-Adresse (Global Unicast) erreichbar sein können, sofern entsprechende Firewallregeln im Router konfiguriert sind. Dieser IPv6-Adressblock (IPv6-Präfix) ändert sich bei den meisten Privatkunden von Zeit zu Zeit. Die öffentliche IPv6-Adresse eines Servers setzt sich aus dem IPv6-Präfix des Internet Service Providers (erster Teil der IPv6-Adresse) und der Interface-ID des IPv6-Servers (letzter Teil der IPv6-Adresse) zusammen: <IPv6-Präfix>:<Interface-ID>. Da sich das IPv6-Präfix des Internetanschlusses nun regelmäßig ändert, ändert sich damit auch die IPv6-Adresse des Heimservers. Entsprechend brauchen wir hier eine DynDNS-Lösung, damit der DNS-Eintrag für den Heimserver dynamisch aktualisiert werden kann.

Konfiguration in der Praxis

Ich verwende für diesen Artikel den kostenlosen Dienst dynv6, da die Oberfläche einfach aufgebaut ist und erforderliche Funktionen zur dynamischen Zusammensetzung der IPv6-Adresse aus dem IPv6-Präfix und der Interface-ID des Heimservers unkompliziert konfiguriert werden können. Der Anbieter dynv6 wirbt auch entsprechend mit dieser Funktion:

dynv6 DynDNS für Server hinter FRITZ!Box
dynv6 bietet eine Funktion an, um DynDNS für Server hinter der FRITZ!Box zu konfigurieren.

Wir werden uns mit diesem Dienst daher eine DynDNS-Update-URL zusammenbauen, die in der FRITZ!Box hinterlegt wird.

Neue Zone erstellen

Nach der Registrierung ist zunächst eine neue Zone zu erstellen: https://dynv6.com/zones/new

dynv6 Zone erstellen
In der Zonenverwaltung muss zunächst eine neue Zone für den DynDNS-Eintrag erstellt werden.

Der Name der Zone ist der DNS-Name (AAAA-Record), der später verwendet werden soll, um auf den Heimserver zuzugreifen. IPv4 Address lasse ich leer, weil ich einen Dual-Stack Lite Internetanschluss habe und DynDNS nur für IPv6 nutzen möchte bzw. kann. IPv6 prefix lasse ich ebenfalls leer, weil dieses später dynamisch gesetzt werden soll. Wenn die neue Zone erstellt ist, öffnen sich automatisch die Anweisungen zur Konfiguration von DynDNS auf der FRITZ!Box. Ansonsten sind die Anweisungen auch im Tab "Instructions" in der angelegten Zone zu finden:

dynv6 Installationsanweisungen
Nach Erstellung der Zone sind die Installationsanweisungen abzuarbeiten.

Update-URL zusammenbauen

In den Installationsanweisungen wird bereits die URL aufgeführt, welche für die DynDNS-Updates verwendet werden kann (zwei URLs, getrennt durch ein Leerzeichen): http://dynv6.com/api/update?hostname=<domain>&token=<username>&ipv4=<ipaddr> https://dynv6.com/api/update?hostname=<domain>&token=<username>&ipv6=<ip6addr>&ipv6prefix=<ip6lanprefix>

Im ersten Schritt entferne ich die erste URL, da sie für IPv4 ist und ich anfangs geschrieben habe, dass ich DynDNS nur für IPv6 nutzen werde (DS-Lite Internetanschluss) und ersetze das http durch ein https: https://dynv6.com/api/update?hostname=<domain>&token=<username>&ipv6=<ip6addr>&ipv6prefix=<ip6lanprefix>

Alles in den eckigen Klammern ist ein Platzhalter. Einen der vier Platzhalter passen wir jetzt an: <ip6addr>. Wird der Parameter <ip6addr> einfach so belassen, wird die FRITZ!Box später ihre IPv6-Adresse an den DynDNS-Dienst übermitteln. Aber genau das möchten wir ja nicht. Daher ist für <ip6addr> die IPv6 Interface-ID des Heimservers einzutragen, für den DynDNS genutzt werden soll. Die Interface-ID entspricht der zweiten Hälfte (letzten 64-Bit bzw. letzten vier Blöcken) der IPv6-Adresse. Sie kann aber auch eingesehen werden, indem in der FRITZ!Box unter "Heimnetz" -> "Netzwerk" auf das Bearbeiten-Symbol bei dem entsprechenden Gerät geklickt wird:

FRITZ!Box IPv6 Interface-ID ablesen
In der FRITZ!Box kann die benötigte IPv6 Interface-ID abgelesen werden.

Die Update-URL sieht schließlich wie folgt aus: https://dynv6.com/api/update?hostname=<domain>&token=<username>&ipv6=::xxxx:xxxx:xxxx:xxxx&ipv6prefix=<ip6lanprefix>

Bei der Interface-ID müssen die zwei Doppelpunkte am Anfang mit angegeben werden.

Der Parameter <ip6lanprefix> wird nicht angepasst, weil dieser von der FRITZ!Box dynamisch an den DynDNS-Dienst übermittelt werden soll.

Jetzt haben wir aber noch ein Problem: Mit dieser URL scheint die FRITZ!Box die Daten nicht an den DynDNS-Dienst zu übermitteln. Bei meinen Tests klappte die Übermittlung nur, wenn wir in der Update-URL zwingend den Platzhalter <ip6addr> verwenden. Aber genau den wollen wir ja eigentlich mit der IPv6 Interface-ID austauschen... Die Lösung des Problems ist relativ einfach: Wir hängen an der Update-URL einfach noch "&trash=<ip6addr>" an. Durch diesen Trick darf die FRITZ!Box die IPv6-Adresse übertragen, wenn sie es denn unbedingt möchte und dynv6 ignoriert den unbekannten Parameter "trash" einfach. Die fertige Update-URL sieht dann wie folgt aus:

https://dynv6.com/api/update?hostname=<domain>&token=<username>&ipv6=::xxxx:xxxx:xxxx:xxxx&ipv6prefix=<ip6lanprefix>&trash=<ip6addr>

Ob die Update-URL grundsätzlich funktioniert, kann überprüft werden, indem man sie einfach in den Browser einfügt. Die Parameter <domain>, <username> und <ip6lanprefix> sind dann natürlich entsprechend manuell anzupassen. Der Wert für <ip6lanprefix> kann in der FRITZ!Box unter "Internet" -> "Online-Monitor" -> "IPv6-Präfix" abgelesen werden. Ein AAAA-Record sollte dann automatisch im Reiter "Records" in der Zonenverwaltung bei dynv6 angelegt bzw. aktualisiert werden.

Konfiguration in der FRITZ!Box

In der FRITZ!Box unter "Internet" -> "Freigaben" -> "DynDNS" ist DynDNS schließlich zu konfigurieren:

FRITZ!Box DynDNS aktivieren
Über den Reiter "DynDNS" in der FRITZ!Box kann DynDNS aktiviert und konfiguriert werden.

Die Werte für "Domainname", "Benutzername" und "Kennwort" sind bei dynv6 in der Verwaltung der entsprechenden Zone im Reiter "Instructions" zu finden:

dynv6 Update-URL
Die erforderlichen Konfigurationsdaten für dynv6 sind in den Installationsanweisungen zu finden.
Weitere Informationen zur Konfiguration von DynDNS in der FRITZ!Box sind in der offiziellen Dokumentation zu finden: https://service.avm.de/help/de/FRITZ-Box-6490-Cable-lgi/019/hilfe_dyndns

Eigenen DNS-Namen verwenden

Der dynamische DNS-Eintrag funktioniert jetzt. Wer möchte, kann noch eine eigene Domain für den Zugriff auf den Heimserver konfigurieren. Es muss lediglich ein CNAME (für eine Subdomain) oder eine Weiterleitung (für eine Hauptdomain) angelegt werden, die auf den DynDNS-Eintrag zeigt. Wie das geht, habe ich bereits hier erklärt. Der CNAME in der DNS-Verwaltung sieht schließlich wie folgt aus:

IONOS CNAME anlegen
Am Beispiel von IONOS erstelle ich einen Alias (CNAME) für den DynDNS-Eintrag.

Weiterführende Links
https://dynv6.com/docs/apis

Quellen
https://de.wikipedia.org/wiki/IPv6#Adressaufbau_von_IPv6
https://www.ionos.de/hilfe/server-cloud-infrastructure/ip-adressen/ipv6-grundlagen/

Seit mehreren Jahren begeistere ich mich privat und beruflich für die IT. Das habe ich dann auch zum Anlass genommen, diesen Blog ins Leben zu rufen, um dort praxisnahe Tutorials über verschiedene IT-Themen zu schreiben und meine selbst geschriebene Software zu veröffentlichen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.