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)

  1. DynDNS.php muss auf dem Webserver abgelegt werden. Eine Ablage in Unterverzeichnissen ist möglich
  2. Anpassen von DynDNS.php an eigenem Bedarf
  3. Der Zugriff auf diese Datei sollte mittels Basic-Authentication abgesichert werden. Die Zugangsdaten für diese Authentifizierung werden vom Router automatisch übermittelt.
  4. Test der URL in einem Browser.
    1. ermitteln der aktuellen WAN-IP (z.B. über dnstools.ch)
    2. 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.
    3. 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“