Fritzbox: Mehrere DynDNS-Adressen registrieren (mit Apache-Webserver)
Gelegentlich besteht Bedarf mehrere DynDNS-Adressen an die IP-Adresse des DSL-Anschluss zu binden. Klassisch führt ein Router eine DynDNS-Aktualisierung für eine 1. IP-Adresse durch, für weitere DynDNS-Hosts werden IP-Clients auf internen Hosts (z.B. Eisfair-Server) betrieben. Letzteres führt dazu, dass bei einem Wechsel der WAN-IP ein DynDNS-Host für mehrere Minuten nicht erreichbar ist. In der Kombination eines externen Apache-Webserver und einem Router (z.B. Fritzbox) kann dieser Zeitraum deutlich verkürzt werden.
Diese Dokumentation beschreibt ein Update mehrerer DynDNS-Clients mit einem Apache-Webserver der direkt von einer Fritzbox getriggert wird. Das Beispiel ist auch für andere Router mit integrierten DDNS-Client anwendbar.
Voraussetzung
- Apache-Webserver (mit PHP) aus dem Internet erreichbar
- Router mit integriertem DynDNS-Client (z.B. Fritzbox)
Funktionsweise
In Router integrierte DDNS-Clients aktualisieren DynDNS-Adressen bei jeder Änderung der IP-Adresse des DSL-Anschluss nahezu verzögerungsfrei. Dafür verwenden Sie i.d.R. normale Web-URLs (http oder https) mit definierten Parametern für Zugangsdaten, neuer IP-Adresse und einiges mehr. Diese Dokumentation beruht darauf, dass mit der Web-URL ein eigener Web-Server angesprochen wird und ein PHP-Script auf diesem Server direkt eine Aktualisierung einer beliebigen Anzahl DynDNS-Adressen durchführt.
Schritt-für-Schritt-Anleitung
Vorbereitung des Webservers
Theoretisch ist es möglich, dass ein Router, nachdem er eine neue WAN-IP erhalten hat, einen internen Web-Server für die Aktualisierung der DynDNS-Adressen verwendet. Im Falle einer Fritzbox 7590 mit Firmware 7.12 funktioniert das leider nicht. Eine IP in einer URL wie z.B. „http://<ipaddr>/…“ wird durch die Fritzbox nicht durch eine neue WAN-IP ersetzt. In der Folge erhält der interne Web-Server keine Anfrage. Bei anderen Routern kann das anders sein. Im Falle einer Fritzbox bleibt hier nur der Weg über einen externen Webserver (z.B. beim DSL-Provider)
- DynDNS.php muss auf dem Webserver abgelegt werden. Eine Ablage in Unterverzeichnissen ist möglich
- Anpassen von DynDNS.php an eigenem Bedarf
- Der Zugriff auf diese Datei sollte mittels Basic-Authentication abgesichert werden. Die Zugangsdaten für diese Authentifizierung werden vom Router automatisch übermittelt.
- Test der URL in einem Browser.
- ermitteln der aktuellen WAN-IP (z.B. über dnstools.ch)
- Aufruf von DynDNS.php mit einem Browser mit Parameter
Beispiel: „https://myServer/DynDNS.php?myip=<ipaddr>&debug=true“ wobei <ipaddr> durch die eigene WAN-IP zu ersetzen ist. - der Browser sollte für jede eingerichtete Domain das Ergebnis der Aktualisierung ausgeben („nochg …“)
Konfiguration des Routers (hier Fritzbox 7590)
- Update-URL: ist die URL zu DynDNS.php auf dem ext. Webserver (ggf. mit Unterverzeichnis), gefolgt vom Parameter „?myip=<ipaddr>„
<ipaddr> ist ein Platzhalter, der durch die Fritzbox automatisch mit der neuen WAN-IP gefüllt wird.
Weitere mögliche Parameter sind in der Dokumentation des Routers zu finden, zur Verarbeitung kann DynDNS.php entsprechend erweitert werden - Domainname: beliebiger FQDN (z.B. „irgendwas.de“) - ist aber irrelevant weil im php-Script definiert.
- Benutzername: wird für Basic-Auth des Webservers verwendet
- Kennwort: wird für Basic-Auth des Webservers verwendet
Ergebnis
Direkt nach Erhalt einer neuen WAN-IP ruft der Router DynDNS.php nahezu verzögerungsfrei auf. Die Aktualisierung der DynDNS-Adressen erfolgt umgehend.
Test
- Erneuern der WAN-Verbindung des Routers (Fritzbox: Internet → Online-Monitor → neu verbinden)
- Nach Erhalt der WAN-IP wechselt der Status in der Fritzbox „DynDNS: aktiviert, irrelevant.de, IPv4-Status: angemeldet“