DNS – Domain Name System

Was ist das DNS

Das DNS ist einer der momentan wichtigsten Dienste, die in einem IT-Netzwerk angeboten werden. Die Abkürzung DNS steht dabei für Domain Name System d.h. die Hauptaufgabe des Systems ist es, Computernamen in IP-Adressen aufzulösen und umgekehrt. Dieser Dienst ist nötig, um einen Server im Internet ansteuern zu können: zur Adressierung eines solchen Servers wird die jeweilige IP-Adresse benötigt. Diese Adresse ist dem Anwender aber in den allermeisten Fällen nicht bekannt. Üblicherweise kennt der Anwender den Domain-Namen oder den Computernamen.

Das DNS ist weltweit auf tausenden von Servern verteilt. Der Namensraum des Internets ist dabei in verschiedenen Zonen aufgeteilt. Für jede Zone ist jeweils ein unabhängiger Administrator verantwortlich. In Firmen oder ähnlichen lokalen Netzwerken können auch eigene DNS implementiert werden, die unabhängig vom Internet einen Namensraum definieren und hier die Adressauflösung durchzuführen.

Funktionsweise des DNS

Da dem Anwender nur der Domain-Name bekannt ist, sendet er diesen als Anfrage an das Internet. Ein Domain-Name ist zum Beispiel eine allgemeine Webadresse wie www.example.com. Diese wird auch als URL bezeichnet. Sie wird im Internet in die dazugehörige Anschlussnummer im Internet umgewandelt. Diese Anschlussnummer ist dann die IP-Adresse des gesuchten Rechners. Rechner können zwei verschiedenen Standards des Internet Protokolls verwenden: entweder IPv4 oder IPv6. Die IP-Adresse liegt bei beiden in unterschiedlichen Formaten vor. Somit kann anhand der IP-Adresse auch das zugehörige Netzwerkprotokoll eines Rechners identifiziert werden. Wenn das DNS zur Umsetzung von Domain-Namen in IP-Adressen verwendet wird, wird das als forward lookup bezeichnet. Dieses Vorgehensweise wird oft mit dem Nachschlagen einer Telefonnummer in einem Telefonbuch verglichen: dabei wird der Namen des Teilnehmers sozusagen in seine Telefonnummer aufgelöst. Eine andere Möglichkeit, das DNS zu nutzen, ist das sogenannte reverse lookup. Dabei werden IP-Adressen in Namen und nicht Namen in IP-Adressen umgewandelt. Im Vergleich zum Telefonbuch entspricht dieses System der Strategie, eine Telefonnummer zu kennen und den dazu gehörenden Teilnehmer ausfindig zu machen. Dieses Verfahren wird auch als Inverssuche bezeichnet.

Vorteile des DNS

Der erste Vorteil, der sich dem Anwender bietet, ist, dass dieser sich keine Zahlenfolge sondern stattdessen nur einen Namen merken muss – was im Allgemeinen leichter fällt. Zudem können IP-Adressen relativ risikofrei geändert werden, da sich diese Veränderungen gar nicht in der Anwenderebene auswirken. Außerdem zeichnet sich das DNS durch eine Reihe von weiteren Vorteilen aus, die dem Anwender oft noch bewusst gemacht werden müssen. Zu diesen Vorteilen gehören die dezentrale Verwaltung, die Eindeutigkeit der Namen, die hierarchische Strukturierung und die prinzipielle und tatsächliche Erweiterbarkeit des DNS.

Geschichtlicher Überblick

Die ersten Grundzüge des DNS standen schon im Jahr 1983 fest. Diese wurden zuerst von Paul Mockapetris im RFC 882 und RFC 883 festgehalten. Deren ursprüngliche Aufgabe war es, die bis dato für die Namensauflösung zuständigen Host-Dateien zu ersetzen, die sich durch Überlastung nicht mehr effektiv einsetzen ließen. Diese beiden ersten Standards wurden danach aber bereits mehrfach überarbeitet und sind heute durch den RFC 1034 und den RFC 1035 ersetzt worden. Außerdem ist auch eine Vielzahl weiterer Standards hinzugekommen. Diese erhöhen zum einen die Sicherheit des Systems und stärken zum anderen auch die Effizienz der Vorgänge. Da das DNS sowohl seine Flexibilität als auch seine Zuverlässigkeit bereits in ausreichendem Maße bewiesen hat, wurde und wird es ständig erweitert durch die Integration weiterer Datenbestände in die bereits bestehenden Zonen.

Komponenten des DNS

Das DNS besteht grundsätzlich aus vier verschiedenen Komponenten:

  • Der Domain-Namensraum
  • Der Namensserver
  • Der Resolver
  • Das Protokoll
  1. Der Domain-Namensraum ist aufgebaut wie ein Baum. Die einzelnen Blätter und Verzweigungen werden als Labels bezeichnet. Verkettet man alle diese Labels, die ein Objekt auf seinem Pfad durchläuft, erhält man den spezifischen Domainnamen des Objekts. Jedes Label ist eine Kette aus mindestens einem und maximal 63 Zeichen. Die einzelnen Labels werden im Domainnamen durch Punkte voneinander abgetrennt. Der gesamte Domainname wird auch durch einen Punkt abgeschlossen und darf nicht länger sein als 255 Zeichen. Dann liegt ein Fully Qualified Domain Name vor – ein vollständiger Domainname. In der Realität wird der letzte Punkt aber meistens weggelassen. Jeder Domainname wird von rechts nach links delegiert und auch wieder aufgelöst.
  2. Ein Nameserver ist jeder Server, der die Auflösung eines Namens anbietet. Der Großteil aller Nameserver ist Teil des DNS. Es gibt aber auch Server, die unabhängig vom DNS agieren.
  3. Resolver sind spezielle Softwarekomponenten. Diese können Informationen von Nameservern abrufen. Sie sind also die für den Anwender fast wichtigsten Komponenten, und auf dem eigenen Rechner eines Teilnehmers implementiert. Im rekursiven Verfahren schickt der Resolver eine Anfrage der Anwendung an einen einzelnen Nameserver und überlässt diesem die Suche nach den gewünschten Informationen. Im iterativen Verfahren erhält der Resolver auch Informationen über alternativ anzusteuernde Nameserver, die er einem nach dem anderen befragt - solange bis er eine Antwort erhält.
  4. Das zentral benötigte Protokoll ist das UDP, da über dieses die Anfragen verschickt werden. TCP wird dabei zur Unterstützung benötigt - wenn Antworten zum Beispiel sehr groß sind.