Listing 4
$ ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
+imap.immobilien .PPS. 1 u 41 64 1 79.383 -0.553 1.211
+195.50.171.101 145.253.2.212 2 u 5 64 1 11.553 -1.133 1.247
*stratum2-4.NTP. 129.70.130.70 2 u 9 64 1 17.939 -1.059 0.146
-ntp.uni-oldenbu 192.53.103.104 2 u 40 64 1 24.178 -0.018 0.811
Nameserver
Die Namensauflösung über einen eigenen Server gelingt mehr als drei Mal so schnell wie die über externe Nameserver – vor allem deshalb, weil der lokale DNS wiederholte Anfragen aus dem eigenen Cache beantwortet. Um das zu demonstrieren, fragen die Aufrufe in Listing 5 tausend Mal die Auflösung eines Domain-Namens ab, zuerst via Internet und danach lokal.
Listing 5
$ time (for i in `seq 1 1000`; do dig google.com @8.8.8.8 > /dev/null 2>>/dev/null; done) real 0m24.156s user 0m4.825s sys 0m3.517s $ time (for i in `seq 1 1000`; do dig google.com @127.0.0.1 > /dev/null 2>>/dev/null; done) real 0m7.632s user 0m4.305s sys 0m2.736s
Freilich dauert die Namensauflösung einzelner Adressen nur Millisekunden, sodass deren Dauer für ein Heimnetzwerk eigentlich keine große Rolle spielt. Es spricht aber trotzdem ein gutes Argument für den eigenen Nameserver: Er macht es möglich, die Geräte im eigenen Netz über einprägsame Namen anzusprechen statt über mehr oder minder kryptische IP-Adressen.
Für die Namensauflösung ist in unserem Szenario der Berkeley Internet Name Domain Server Bind 9 zuständig. Sie richten ihn mittels des Kommandos aus der ersten Zeile von Listing 6 auf dem RasPi ein. Wichtig ist dabei, dass der Pi über eine ausreichend große SD-Karte verfügt; sie sollte mindestens 4 GByte, im optimalen Fall aber besser 16 GByte Kapazität bieten.
Listing 6
$ sudo apt-get install bind9 $ sudo apt-get install dnsutils
Mit dem Befehl aus der zweiten Zeile von Listing 6 installieren Sie zusätzlich die DNS-Utilities. Damit stehen Ihnen so nützliche Befehle zur Verfügung wie Nslookup und Dig. Eine Prüfung mit Nslookup zeigt, dass der RasPi derzeit über den Gateway den DNS-Dienst Ihres Providers als Master benutzt (Listing 7).
Listing 7
$ nslookup www.telekom.de Server: 192.168.100.1 Address: 192.168.100.1#53 Non-authoritative answer: Name: www.telekom.de Address: 217.150.151.99
Um das zu ändern, passen Sie die Datei /etc/resolv.conf wie in Listing 8 beschrieben an. Adressen von freien Nameservern [2], wie sie das Beispiel bereits enthält, finden Sie auf diversen Seiten im Web [3]. Nach dem Anpassen der resolv.conf sieht ein Aufruf von Nslookup so aus wie in Listing 9.
Listing 8
domain heimnetz.local search heimnetz.local nameserver 127.0.0.1 nameserver 194.187.164.20 [...] nameserver 213.30.253.65 nameserver 141.2.1.3
Listing 9
$ nslookup www.telekom.de Server: 127.0.0.1 Address: 127.0.0.1#53 Non-authoritative answer: Name: www.telekom.de Address: 217.150.151.99
Die lokale Zone
Damit der Nameserver auch die Namen der Geräte im lokalen Netz versteht, gilt es, eine lokale Zone einzurichten. Zunächst fügen Sie im Verzeichnis /etc/bind in die Datei named.conf.options die Zeile listen-on port 53 { any; } ein, in die Datei named.conf die Verweise auf die beiden neuen Zonen-Dateien aus Listing 10.
Listing 10
zone "heimnetz.local"
{
type master ;
file "/etc/bind/zone.heimnetz.local" ;
} ;
//
zone "0.100.168.192.in-addr.arpa"
{
type master ;
notify no ;
file "/etc/bind/zone.0.100.168.192.in-addr.arpa" ;
} ;
Danach erstellen Sie ebenfalls in /etc/bind die Zonendatei zone.heimnetz.local mit den Namen und IP-Adressen aller Geräte in Ihrem LAN (Listing 11) sowie die dazugehörige Reverse-Zonendatei zone.0.100.168.192.in-addr.arpa (Listing 12). Wichtig sind in vielen Zeilen die abschließenden Punkte hinter Adressen und Namen: Fehlen diese, hängt das System den Domänen-Namen (heimnetz.local) an, womit die Namen nicht mehr stimmen.





