DNS mit bind9

Aus xinux.net
Zur Navigation springen Zur Suche springen

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. Dieses Verhalten ist von default her aktiv, gilt bei Masterservern

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; };
};