Dies ist eine alte Version des Dokuments!
Inhaltsverzeichnis
Dyndns selber aufsetzen
Es wird ein Server im Internet mit einem laufenden Nameserver „bind“ benötigt. Zusätzlich ist ein laufender Webserver erforderlich, der für die Adreßermittlung zuständig ist.
Server
Der Nameserver sollte für eine neu angelegte Subdomain eingerichtet
werden, z.B. dyn.example.com
:
- /etc/bind/dyn.example.com.zone
$ORIGIN dyn.example.com. $TTL 90 ; seconds @ IN SOA ns1.rowa-group.com. hostmaster.example.com. ( 2015122401 ; serial 3600 ; refresh 1800 ; retry 4W ; expire 1800 ; minimum cache TTL )
Bind muß Schreibberechtigung auf diese Datei bekommen.
chmod g+w dyn.example.com.zone
Bekanntmachen der neuen Zone für den Nameserver in named.conf.local
:
- named.conf.local
// DynDNS in spezieller Subdomain bereitstellen zone "dyn.example.com" IN { type master; file "/etc/bind/dyn.example.com.zone"; notify no; update-policy { grant ddns-key.example.com subdomain dyn.example.com. A; }; };
Schlüssel anlegen
ddns-confgen -z example.com
Den ersten Teil der Ausgabe in eine Datei namens dyndns.keys
eintragen.
Werden für verschiedene Clients unterschiedliche Schlüssel verwendet, kann
die Datei dann entsprechend erweitert werden.
chmod 640 dyndns.keys
Die Datei mut den Schlüsseldefinitionen muß vom Nameserver gelesen werden, dazu
muß in der Datei named.conf
folgende Anweisung enthalten sein:
include "/etc/bind/dyndns.keys";
Damit die Clients ihre Adresse ermitteln können ist auf unter der Adresse
http://www.example.com/myip.php ein entsprechendes Programm
abgelegt. Die Funktion ist checkip.dyndns.org
nachempfunden.
<html><head><title>Current IP Check</title></head><body><?php echo "Current IP Address: ", $_SERVER['REMOTE_ADDR']; ?></body></html>
Client
curl
benötigt
- Programm:
/usr/local/bin/ddns-update
- Konfiguration:
/etc/dyndns/ddns.key
→ Ausgabe vonddns-confgen -z
chmod 600 /etc/dyndns/ddns.key
/etc/dyndns/ddns.conf
- /etc/dyndns/ddns.conf
# # Configuration for ddns-update script # KEYFILE=/etc/dyndns/ddns.key HOST=homeserver ZONE=example.com TIMEOUT=90 MAXAGE=86400 MYIPURL=www.example.com/myip.php CACHEFILE=/var/cache/ddclient/ddclient.cache