DNS-Nameserver zurück
pk-applets

DNS - Nameserver

Manchmal benötigt man im Intranet einen DNS-Server, der die Namen auflöst.
Das meistverwendete Programm in der Unix-Welt ist bind, das wohl in jeder Distribution enthalten ist.

Die Konfigurationsdatei ist named.conf in /etc
Hier sind die folgenden Einträge wichtig:

directory "/var/lib/named";
Weitere Dateien mit relative Pfad-angaben, also vorne ohne /, sucht bind in diesem Verzeichnis.

forwarders { 192.168.0.1; 192.168.0.2; };
DNS-Anfragen werden an die IP's weitergeleitet. Dies könnten z.B. die IP's von Routern sein.

include "/etc/named.d/forwarders.conf";
Einbinden der Datei forwarders.conf, die eine Zeile wie oben enthält. Diese Datei wird vom PPPD
bearbeitet, der die IP's der Nameserver vom Provider enthält.

Mit diesen Einträgen, die bei der Installation von den meisten Distributionen automatisch geschrieben
werden, kann der DNS-Server bereits arbeiten:

Bei den Clients wird die IP des Linux-Servers ( 192.168.0.20) als DNS-Server eingetragen.

Bei der DSL-Einwahl verändert der PPPD-Deamon die Datei /etc/named.d/forwarders.conf
durch Eintrag der IP's der Name-Server des Providers

Jetzt diese IP's ermitteln und in die Konfiguration der Netzwerkkarte bzw vom TCP/IP-Protokoll eintragen,
sodass sie schon bei Systemstart zur Verfügung stehen.

Somit können Clients die IP's von Adressen aus dem WWW über den Linux-Server erhalten.

Soll der Linux-Server für das Intranet DNS-Abfragen bearbeiten, so ist etwas mehr
Arbeit nötig:

Die named.conf ergänzen mit
zone "ag2.de" in {
 file "ag2.de";
 type master;
};

zone "0.168.192.in-addr.arpa" in {
 file "0.168.192.in-addr.arpa";
 type master;
};

Damit ist der Server für alle Adressen der Form XXX.ag2.de und umgekehrt für alle IP's der Form
192.168.0.XXX zuständig. Dies wird durch type master bestimmt.

Der erste Eintrag dient dazu, für Computernamen die IP's zurückzugeben.
Die Bezeichnung der Zone gibt die sgn. Domäne an!
Durch zone "ag2.de" ist der Server für alle Adressen der Form
XXX.ag2.de oder YYY.XXX.ag2.de zuständig.
Entsprechend benötigen wir die Datei ag2.de im Verzeichnis /var/lib/named

Datei ag2.de
$TTL 2d
@  IN SOA  linux.ag2.de. root.linux.ag2.de. (
    2006072902 ; serial
    3h  ; refresh
    1h  ; retry
    1w  ; expiry
    1d )  ; minimum
             IN NS  linux.ag2.de.

linux      IN A  192.168.0.20
b1         IN A  192.168.0.22
b2         IN A  192.168.0.24
... etc

Kürzel:
$TTL     Zeit-Angabe über Verweilen den Daten in Caches
IN         Internetadresse
SOA     Rechner, der die Daten enthält und der Verwalter
NS        Nameserver
A          IP-Adresse
PTR      kommt von Pointer. Es folgt die Adresse.

Wichtig:
Vollständige Adressen werden mit einem Punkt am Ende gekennzeichnet.

Die Zuweisungen stehen in den letzten Zeilen
z.B.:
b1         IN A  192.168.0.22
b1 wird ergänzt zu b1.ag2.de und hat die IP 192.168.0.22
 
 

Der zweite Eintrag dient dazu, zu den IP's die Computernamen zu finden.
Die Bezeichnung der Zone beschreibt die IP's:
Durch zone"0.168.192.in-addr.arpa" ist der Server für alle IP's der Form 192.168.0.XXX zuständig.
Beachte die Umkehrung der Reihenfolge! in-addr.arpa ist zwingend vorgeschrieben.
Entsprechend benötigen wir die Datei 0.168.192.in-addr.arpa im Verzeichnis /var/lib/named!
 

Datei 0.168.192.in-addr.arpa
$TTL 2d
;**** TTL legt die Bearbeitungszeit fest 
@  IN SOA  linux.ag2.de. root.linux.ag2.de. (
    2006072900 ; serial
    3h  ; refresh
    1h  ; retry
    1w  ; expiry
    1d )  ; minimum

           IN NS  linux.ag2.de

20       IN PTR  linux.ag2.de.
22       IN PTR  b1.ag2.de.
24       IN PTR  b2.ag2.de.
... etc

Test des DNS-Servers!
Beim Starten mit dem Befehl
/etc/init.d/named start bzw restart  werden Fehlermeldungen in /var/log/messages ausgegeben.
Mit dem Programm nslookup
(Auzurufen in der Konsole von WinXP bzw Win2000) können die IP's zu den Aressen und umgekehrt abgefragt werden.