Linux-Arbeitskreis Hamburg

DNS - Der Domain Name Service

Grundlagen

DNS ist ein Protokoll, das zur Namensauflösung im Internet dient, also dazu Namen wie www.gyloh.de in IP-Addressen (135.37.209.130) umzuwandeln und umgekehrt.

Wenn ein Computer eine Internet-Adresse aufzulösen hat und diese sich nicht in seiner hosts-Datei findet, so nimmt er zu dem DNS-Server Kontakt auf, dessen Nummer er entweder in seiner Konfiguration findet oder beim Booten per DHCP übermittelt bekommen hat. Der DNS-Server schaut nun in seinen Dateien nach, ob er die gesuchte Adresse kennt, und fragt ggf. weitere DNS-Server.

Der bei unserer Lösung eingesetzte Nameserver hat folgende Aufgaben:

Die eigentliche Zuordnung zwischen den Namen und den IP-Adressen erfolgt bei BIND in den Zonendateien. Für jede Domain (z.B. gyloh.hh.schule.de) wird eine eigene Zonendatei benötigt, in der Regel langt eine Domain. Auch die umgekehrte Zuordnung erfolgt über Zonendateien, hier enthält der Pseudo-Domainname dann die ersten Stellen des IP-Adressbereiches.
Zusätzlich sollte auf jedem Rechner noch der Name localhost zu 127.0.0.1 auflösbar sein und umgekehrt. Man braucht also in der Regel vier Zonendateien.
Dazu kommt dann noch eine Datei mit Adressen von Root-Nameservern. Diese werden nur dann befragt, wenn keiner der eingestellten Nameserver reagiert.

Server-Konfiguration

In den Beispiel-Angaben bekommt der Server die IP-Adresse 192.168.1.1 und den Namen boss.gyloh.hh.schule.de.
/usr/sbin/named Das Binärfile des Nameservers.
/etc/init.d/named Das Startscript für den Nameserver.
/etc/named.conf Die Hauptkonfigurationsdatei von Bind.
/var/named/root.hint Adressen der öffentlichen Root-Nameserver
/var/named/named.Lan Datei für die Auflösung der lokalen Namen in IP-Adressen.
/var/named/named.NAL Datei für die Rückwärts-Auflösung von IP-Adressen in lokale Namen
/var/named/named.local Datei für die Auflösund des Namens localhost in die IP-Adresse 127.0.0.1
/var/named/named.lacol Datei für die Auflösund der IP-Adresse 127.0.0.1 in den Namen localhost

Damit der Nameserver auch starten kann muss in der SuSE-Konfigurationsdatei rc.config der Eintrag START_NAMED="yes" gesetzt sein.

Script zur automatischen Konfiguration

Das Script nameserver.conf.pl erledigt die serverseitige Konfiguration automatisch. Zum Laden und Ausführen sind folgende Schritte sinnvoll:

damit wechselt man in das Verzeichnis /tmp, lädt das Script mit den Programm wget von seiner Homepage, macht es ausführbar und führt es dann aus. Das Script wertet den Rechnernamen und die IP-Adresse aus, um die richtigen Einstellungen vornehmen zu können.

Diagnose

Wenn die Namensauflösung nicht funktioniert, liegt das meist an Problemen mit den DNS-Dateien. In /var/log/messages findet man Meldungen des DNS für Fehler, die beim Einlesen der Dateien auftraten.


Kritik, Anregungen und Ergänzungen willkommen. Zusammengestellt von Uwe Debacher und Bernd Burre, letzte Änderung am 27.01.2006
Impressum