Eigene Domäne mit DynDNS

10. März 2019

Wie in meine Hello-World-Beitrag geschrieben, wollte ich kein fertiges Hosting-Paket, sondern das Hosting selbst machen. Früher hatte ich eine gratis Domäne bei duckdns. Nun war es aber Zeit für etwas handfestes. Nachdem ich keine statische IP-Adresse habe, war es wichtig, dass der Anbieter DynDNS unterstützt. Daher habe ich mich für Strato entschieden. Meine .at-Domäne kostet € 10,89 im ersten Jahr und dann € 24.

Die Anmeldung hat ca. 5 Minuten gedauert. Ca. zwei Stunden später war die Domäne registriert. Im Kundenportal kann pro Domäne (man muss es auch für Subdomänen machen!) eingestellt werden, dass die Domäne DynDNS unterstützt. Gesagt, getan.

Nur wie wird die IP für die Domäne jetzt aktualisiert 🤷‍♂️? Nachdem ich ein bisschen gegoogelt habe hat sich herausgestellt, dass dies relativ einfach ist. Einfach einen GET-Request abstellen:

https://$USER:$PASSWORD@$dyndns.strato.com/nic/update?hostname=$HOSTNAME&myip=$IP

Bei $HOSTNAME können auch mehrere Hostnames übergeben werden, Komma getrennt. In meinem Fall als „codigo.at,wp.codigo.at“.

Das ganze wird dann jede Minute einmal ausgeführt und gut ist. DH im schlimmsten aller Fälle ist die Seite mal ne Minute nicht erreichbar.

Nachdem man die IP auch auch noch irgendwie kennen sollte, die man übermittelt, gibt es eine Seite auf die man ebenfalls einen GET-Request abstellt und die benötigte IP zurückbekommt: http://myexternalip.com/raw.

Aus alldem habe ich dann ein Docker-Image erstellt. Der auszuführende Code liegt in einem Shell-Skript.