Das Domain Name System

Das Domain Name System allgemein

Das Domain Name System (kurz DNS) ist ein wichtiger Dienst in IP-basierten Netzwerken (wie z. B. dem Internet), der die Aufgabe hat, für Menschen verständliche Domain-Namen in für Computer verständliche IP-Adressen zu übersetzen. Der Zugriff auf Server im Internet (z. B. auf Webserver) erfolgt mit Hilfe von IP-Adressen (z. B. „54.229.130.208“). Da diese Adressen aber schwer für Menschen zu merken sind, gibt es auch die Möglichkeit mit Hilfe von sog. Domain-Namen Server zu adressieren. Die Namensauflösung, d. h. die Übersetzung eines DNS-Namen in eine IP-Adresse, übernehmen die DNS-Server. Das „Domain Name System“ besteht aus tausenden von weltweit verteilten Servern, die den hierarchisch aufgebauten Namensraum des Internets verwalten.

Was ist ein Namensraum?

Der Begriff „Namensraum“ kommt aus dem Bereich der Software-Programmierung und dient dazu, eine hierarchisch Aufgebaute Struktur von Objekten zu benennen und zu identifizieren. Mit Namensräumen können gleiche bzw. gleichnamige Objekte verschiedener Gruppen eindeutig identifiziert werden. So kann z. B. mit der Bezeichnung „Muster.Max.Auto“ (Nachname.Vorname.Objekt) das Auto von Max Muster eindeutig identifiziert werden. Das Auto seiner Schwester könnt mit „Muster.Maria.Auto“ und das Auto eines anderen Max mit „Meier.Max.Auto“ eindeutig bezeichnet werden.

DNS-Namensraum

Der Namensraum des Internets wird von rechts nach links aufgebaut und besteht aus sog. Domains. Weiter rechts stehende Domains liegen also in der hierarchischen Struktur des DNS weiter oben als weiter links stehende Domains. Die höchste Domain im DNS sind also die ganz rechts stehenden Endungen wie z. B. „.de“, „.com“ etc. Diese Domains werden auch als „Top-Level-Domain“ (kurz TLD) bezeichnet und gruppieren Domain-Namen auf höchster Ebene in die verschiedenen Regionen (z. B. „.de“) oder Rubriken (z. B. „.info“). Die nächste Ebene, d. h. die zweite Domain von rechts, bezeichnet den Host, d. h. die Webseite oder den Dienst (z. B. facebook, youtube, etc.). Die zweite Ebene wird auch als „Second-Level-Domain“ bezeichnet. Danach können noch weitere Ebenen folgen. Die nächste Ebene, d. h. die „Third-Level-Domain“, wird häufig verwendet, wenn eine Seite in mehreren Sprachen angeboten wird (z. B. „de-de.facebook.com“). Der gesamte DNS-Name wird als „Fully Qualified Domain Name“ (kurz FQDN) bezeichnet und ist im gesamten Internet einmalig und eindeutig.

Der Vollständigkeit halber sei hier erwähnt, dass die Baumdarstellung des DNS-Namensraums mit einem Punkt beginnt, der als „root“ (Wurzel) bezeichnet wird, aber nicht in der Adresszeile des Browsers mit angegeben werden muss!

DNS-Server

DNS-Server (auch als Nameserver bezeichnet) sind Server, die in einem IP-Netzwerk (z. B. dem Internet) die Namensauflösung, d. h. die Übersetzung von DNS-Namen in IP-Adressen, übernehmen. Für das DNS im Internet gibt es tausende von verteilten DNS-Server, die jeweils eine sog. Zone verwalten. Eine Zone ist ein Teil des DNS, für den ein primärer DNS-Server verantwortlich ist. Zur Sicherheit gibt es für eine Zone meistens zusätzlich mehrere sekundäre DNS-Server, welche die Informationen des primären DNS-Servers spiegeln. Falls ein primärer DNS-Server ausfällt, können Anfragen zur Namensauflösung an diese Zone, dann von den sekundären Servern beantwortet werden.

Da die DNS-Server nur einen Teil des DNS kennen, befragen sich die DNS-Server gegenseitig. So entsteht eine Baumstruktur von DNS-Servern ähnlich der Baumstruktur des DNS-Namensraums. Auf oberster Ebene stehen die Root-Server, die Informationen darüber haben, welcher DNS-Server für welche „Top-Level-Domain“ zuständig ist. Kann ein DNS-Server eine Anfrage nicht beantworten, befragt er seine untergeordneten Subdomain-DNS-Server (Delegierung), andere DNS-Server auf gleicher Ebene (Weiterleitung) oder einen Root-Server.

DNS-Resolver

Das Programm, welches die Anfrage zur Namensauflösung an einen DNS-Server stellt, nennt sich Resolver. Ein Resolver ist ein Software-Modul, dass die Anfrage von einem Programm (z. B. einem Webbrowser) entgegennimmt, sie an einen fest zugewiesenen DNS-Server übermittelt und die Antwort (IP-Adresse) an das anfragende Programm zurückgibt. Dabei arbeiten Resolver entweder rekursiv oder iterativ. Bei einer rekursiven Anfrage, stellt der Resolver die Anfrage nur einmal an einen DNS-Server. Hat der DNS-Server die Antwort nicht, stellt er seinerseits eine Anfrage an einen anderen DNS-Server. Bei einer iterativen Anfrage bekommt der Resolver entweder die richtige Antwort oder einen Verweis auf einen anderen DNS-Server, an den er seine Anfrage erneut stellt. Auf Computer installierte Resolver arbeiten i. d. R. rekursiv. Die eigenen Resolver von DNS-Servern arbeiten hingegen meistens iterativ.

Quellen