Benutzer-Werkzeuge

Webseiten-Werkzeuge


dyndns

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
dyndns [14.11.2016 18:58] – [Client] thoogedyndns [06.08.2017 09:46] (aktuell) thooge
Zeile 4: Zeile 4:
   * Diese Anleitung ist noch nicht vollständig!   * Diese Anleitung ist noch nicht vollständig!
   * IPv6 fehlt noch   * IPv6 fehlt noch
 +  * Weitere Details zum DNS gibt es auch im [[https://wiki.pinneberg.freifunk.net/dns|Wiki von Freifunk Pinneberg]]
  
 Es wird ein Server im Internet mit einem laufenden Nameserver "bind" benötigt. Es wird ein Server im Internet mit einem laufenden Nameserver "bind" benötigt.
Zeile 15: Zeile 16:
 werden, z.B. ''dyn.example.com'': werden, z.B. ''dyn.example.com'':
  
 +In der übergeordneten Zone
 +<file conf /etc/bind/example.com.zone>
 +[...]
 +dyn NS ns1.example.com.
 + NS ns2.example.com.
 +</file>
 +
 +Zonendatei für die Subdomain
 <file conf /etc/bind/dyn.example.com.zone> <file conf /etc/bind/dyn.example.com.zone>
 $ORIGIN dyn.example.com. $ORIGIN dyn.example.com.
 $TTL 90 ; seconds $TTL 90 ; seconds
-       IN      SOA     ns1.rowa-group.com. hostmaster.example.com. (+@ IN SOA ns1.example.com. hostmaster.example.com. (
                         2015122401      ; serial                         2015122401      ; serial
-                        3600            ; refresh +                        1h              ; refresh 
-                        1800            ; retry +                        20m             ; retry 
-                        4W              ; expire +                        4d              ; expire 
-                        1800            minimum cache TTL+                        15m             nxdomain ttl
                         )                         )
 + NS ns1.example.com.
 + NS ns2.example.com.
 + TXT "Dynamic Domain Example/Pinneberg, Germany"
 </file> </file>
  
Zeile 32: Zeile 44:
 </code> </code>
  
-Bekanntmachen der neuen Zone für den Nameserver in ''named.conf.local'':+Bekanntmachen der neuen Zone für den Nameserver in ''named.conf.local'' und 
 +Updates für die A- und AAAA-Records in der Subdomain ''dyn'' zulassen:
 <file conf named.conf.local> <file conf named.conf.local>
 // DynDNS in spezieller Subdomain bereitstellen // DynDNS in spezieller Subdomain bereitstellen
Zeile 40: Zeile 53:
     notify no;     notify no;
     update-policy {     update-policy {
-        grant ddns-key.example.com subdomain dyn.example.com. A;+        grant ddns-key.example.com subdomain dyn.example.com. A AAAA;
     };     };
 }; };
 </file> </file>
  
-Schlüssel anlegen+Schlüssel anlegen, daß die ''dyn''-Subdomain hier nicht enthalten ist, soll wirklich so sein!
 <code> <code>
   ddns-confgen -z example.com   ddns-confgen -z example.com
Zeile 55: Zeile 68:
   chmod 640 dyndns.keys   chmod 640 dyndns.keys
  
-Die Datei mut den Schlüsseldefinitionen muß vom Nameserver gelesen werden, dazu+Die Datei mit den Schlüsseldefinitionen muß vom Nameserver gelesen werden, dazu
 muß in der Datei ''named.conf'' folgende Anweisung enthalten sein: muß in der Datei ''named.conf'' folgende Anweisung enthalten sein:
   include "/etc/bind/dyndns.keys";   include "/etc/bind/dyndns.keys";
Zeile 63: Zeile 76:
 [[http://www.example.com/myip.php]] ein entsprechendes Programm  [[http://www.example.com/myip.php]] ein entsprechendes Programm 
 abgelegt. Die Funktion ist ''checkip.dyndns.org'' nachempfunden. abgelegt. Die Funktion ist ''checkip.dyndns.org'' nachempfunden.
-<code php>+<file php /var/www/myip.php>
 <html><head><title>Current IP Check</title></head><body><?php <html><head><title>Current IP Check</title></head><body><?php
 echo "Current IP Address: ", $_SERVER['REMOTE_ADDR']; echo "Current IP Address: ", $_SERVER['REMOTE_ADDR'];
 ?></body></html> ?></body></html>
-</code>+</file> 
 + 
 +==== Protokollierung ==== 
 + 
 +Zur Verbesserung der Übersicht können die Änderungsanforderungen in eine  
 +spezielle Logdatei geschrieben werden: ''var/log/named/update.log''
 + 
 +<file conf /etc/bind/named.conf.local> 
 +logging { 
 +[...] 
 +        channel update_file { 
 +                file "/var/log/named/update.log" versions 3 size 30m; 
 +                severity info; 
 +                print-time yes; 
 +        }; 
 +[...] 
 +        category update { 
 +                update_file;  
 +        }; 
 +        category update-security { 
 +                update_file;    
 +        }; 
 +[...] 
 +
 +</file> 
  
 ===== Client ===== ===== Client =====
Zeile 77: Zeile 115:
  
 Voraussetzungen Voraussetzungen
-  * ''curl'' benötigt +  * ''curl''  
-  * Programm: ''/usr/local/bin/ddns-update''+  * ''nsupdate''  aus dem paket ''dnsutils'' 
 +  * Programm: ''/usr/local/bin/ddns-update'' (Bash-Script)
  
 Die Konfiguration erfolgt über das Verzeichnis ''/etc/dyndns'' Die Konfiguration erfolgt über das Verzeichnis ''/etc/dyndns''
Zeile 94: Zeile 133:
 IPV4=1 IPV4=1
 IPV6=0 IPV6=0
-MYIPURL=www.example.com/myip.php+MYIPURL=https://www.example.com/myip.php
 CACHEFILE=/var/cache/ddclient/ddclient.cache CACHEFILE=/var/cache/ddclient/ddclient.cache
 </file> </file>
-  * Die Aktualisierung sollte regelmäßig, aber nicht zu oft stattfinden, wir realisieren das über einen  Cronjob:<file /etc/cron.d/dyndns>+  * Die Aktualisierung sollte regelmäßig, aber nicht zu oft stattfinden, wir realisieren das über einen  Cronjob:<file conf /etc/cron.d/dyndns>
 # /etc/cron.d/ddns: crontab fragment for ddns-update # /etc/cron.d/ddns: crontab fragment for ddns-update
  
dyndns.1479146289.txt.gz · Zuletzt geändert: 14.11.2016 18:58 von thooge

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki