Eigener Nameserver auf dem Pi

Was ist eigentlich ein Nameserver?

Ein Nameserver ist im Grunde nur ein kleiner Dienst der einer IP Adresse einen Namen zu ordnet. Das gesamte Internet basiert auf Nameservern. Gibt man „google.de“ in die Adressleiste des Browsers ein, ist einer der ersten Schritte des Browsers einen Nameserver zu fragen welche IP Adresse hinter dieser Domain steht. Die Domainnamen werden also nur für uns Menschen gebraucht, da sie leichter lesbar sind.

Warum sollte man sich einen eigenen Nameserver auf einem Raspberry Pi installieren wollen?

Die Antworten dazu können vielseitig sein:

  • Ein lokaler Nameserver verringert die Zugriffszeiten beim surfen, da ein im Internet erreichbarer Nameserver weiter entfernt ist
  • Ein lokaler Nameserver kann von allen PCs, Handys, Konsolen etc im Netzwerk geteilt werden. Durch das Caching wird so eine Anfrage von „google.de“ von einem PC auch bei einem anderen PC deutlich schneller aus dem Cache des Nameservers beantwortet, da dieser die IP dazu bereits kennt.
  • Ein lokaler Nameserver bietet die Möglichkeit auch im eigenen Netzwerk feste Namen zu vergeben. So kann man einen PC z.b. statt mit der IP Adresse auch mit dem Namen aufrufen.
  • Ein lokaler Nameserver bietet die Möglichkeit einer lokalen IP Adresse einen PTR Eintrag hinzuzufügen (auch rDNS genannt).

Wie installiert man einen lokalen Nameserver?

Wir nutzen einen sehr verbreiteten Nameserver, bind9. Dieser lässt sich leicht installieren:

sudo apt-get install bind9

Wie wird der Nameserver konfiguriert?

Wir gehen davon aus das unser Raspberry Pi folgende feste IP Adresse hat 192.168.15.4 und wollen als Domain „.lan“ vergeben.

Folgende 4 Dateien müssen angepasst werden:

/etc/bind/db.lan (neu anlegen)

; BIND data file for domain lan
;
$TTL    604800

@       IN      SOA     ns.lan. root.localhost. (
                     2015121701         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;

@       IN      NS      ns.lan.
@       IN      A       192.168.15.4


ns              IN      A       192.168.15.4
localhost       IN      A       127.0.0.1
fritzbox        IN      A       192.168.15.1
pc1             IN      A       192.168.15.2
pc2             IN      A       192.168.15.3

/etc/bind/.db.15.168.192 (neu anlegen)

; BIND reverse data file for 178.168.192.in-addr.arpa
;
$TTL    604800

@       IN      SOA     ns.lan. root.localhost. (
                     2015121701         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;

@       IN      NS      ns.lan.
4       IN      PTR     rpi.lan.
1       IN      PTR     fritzbox.lan.
2       IN      PTR     pc1.lan.
3       IN      PTR     pc2.lan.

/etc/bind/named.conf.local

//
// Do any local configuration here
//

// Consider adding the 1918 zones here, if they are not used in your
// organization
//include "/etc/bind/zones.rfc1918";

zone "lan" {
        type master;
        file "/etc/bind/db.lan";
};

 zone "15.168.192.in-addr.arpa" {
        type master;
        notify no;
        file "/etc/bind/db.15.168.192";
};

/etc/bind/named.conf.options

options {
        directory "/var/cache/bind";

        // If there is a firewall between you and nameservers you want
        // to talk to, you may need to fix the firewall to allow multiple
        // ports to talk.  See http://www.kb.cert.org/vuls/id/800113 

        // If your ISP provided one or more IP addresses for stable
        // nameservers, you probably want to use them as forwarders.
        // Uncomment the following block, and insert the addresses replacing
        // the all-0's placeholder.

        forwarders {
                8.8.8.8;
                8.8.4.4;
        };

        //========================================================================
        // If BIND logs error messages about the root key being expired,
        // you will need to update your keys.  See https://www.isc.org/bind-keys
        //========================================================================

        dnssec-validation auto;
        auth-nxdomain no;    # conform to RFC1035
        listen-on-v6 { any; };
};

Wie wird der Nameserver verwendet?

Die Installation und Konfiguration ist nun abgeschlossen. Es ist wichtig das der Nameserver eine feste IP hat, sonst kann er von anderen Systemen nicht gefunden werden.

Um den Nameserver nun zu nutzen muss er noch in allen Geräten eingetragen werden. Das kann man über feste Einträge auf den Geräten erreichen oder über einen DHCP Server, der die Nameserver IP an alle Geräte verteilt.

Hinterlasse jetzt einen Kommentar

Kommentar hinterlassen

E-Mail Adresse wird nicht veröffentlicht.


*