DNS mit bind9
Installation
aptitude install bind9
Konfiguration von bind9
Hauptkonfiguration
Standardmäßig ist die Konfiguration von bind9 auf mehrere Dateien aufgeteilt:
- /etc/bind/named.conf
- /etc/bind/named.conf.locale
- /etc/bind/named.conf.options
- /etc/bind/named.conf.default-zones
Man kann aber nach belieben auch nur die hauptdatei named.conf benutzen.
Eine Zusammengelegte named.conf sieht so aus:
options { directory "/var/lib/bind"; // forwarders { 0.0.0.0; }; auth-nxdomain no; # conform to RFC1035 listen-on { any; }; }; // prime the server with knowledge of the root servers zone "." { type hint; file "/etc/bind/db.root"; }; // be authoritative for the localhost forward and reverse zones, and for // broadcast zones as per RFC 1912 zone "localhost" { type master; file "/etc/bind/db.local"; }; zone "127.in-addr.arpa" { type master; file "/etc/bind/db.127"; }; zone "0.in-addr.arpa" { type master; file "/etc/bind/db.0"; }; zone "255.in-addr.arpa" { type master; file "/etc/bind/db.255"; }; zone "vulkan.int" { type master; file "vulkan.int"; notify no; }; zone "81.168.192.in-addr.arpa" { type master; file "81.168.192.in-addr.arpa"; allow-transfer { 192.168.249.121 }; };
Am unteren Ende beschreiben wir die neue Zone für die unser Nameserver verantwortlich ist.
Zonen Datei
Die Zonendatei enthält die Informationen zu den Adressen, und sieht folgendermaßen aus:
$TTL 300 ; 5 minutes @ IN SOA ns.vulkan.int. technik.xunix.de. ( 2011090204 ; serial 14400 ; refresh (4 hours) 3600 ; retry (1 hour) 3600000 ; expire (5 weeks 6 days 16 hours) 86400 ; minimum (1 day) ) NS ns.vulkan.int. ns.vulkan.int. IN A 192.168.81.21
Sekundärer Nameserver
Um Ausfallsicherheit zu gewährleisten, kann es sinnvoll sein, mehrere DNS-Server zu betreiben.
Dazu muss man in der named.conf des sekundären Nameservers die Zone die man Spiegeln will mit folgender Konfiguration hinzufügen:
zone "vulkan.int" { type slave; file "vulkan.int"; masters { 192.168.81.21; }; };
Notify
Notify ermöglicht dem primären Nameserver dem sekundären Server mitzuteilen das sich möglicherweise Dateien geändert haben, woraufhin dieser ein Update verlangt
Dazu muss in der Zonen-Datei der Sekundäre Nameserver in den NS-Records eingetragen werden:
$TTL 300 ; 5 minutes @ IN SOA ns.vulkan.int. technik.xunix.de. ( 2011090604 ; serial 14400 ; refresh (4 hours) 3600 ; retry (1 hour) 3600000 ; expire (5 weeks 6 days 16 hours) 86400 ; minimum (1 day) ) IN NS ns.vulkan.int. IN NS tunesien.alpha.quadrant. ns.vulkan.int. IN A 192.168.81.21 www IN A 192.168.81.43
Forward Zone
Damit in diesem Beispiel unser Primärer Domain Server den Sekundären findet und auch noch im rest des Netzwerkes die Rechner kennt müssen wir eine Forward Zone einrichten die zurück auf unseren Top-Level-Domain Name-Server zeigt:
zone "alpha.quadrant" IN { type forward; forwarders { 192.168.240.21; }; };