Auch genannt: DNS
Das Domain Name System (DNS) ist ein weltweit verteiltes Namenssystem. Seine bekannteste Aufgabe ist, einen lesbaren Namen wie www.beispiel.de in technische Informationen aufzulösen, vor allem in eine IP-Adresse. DNS ist aber nicht nur ein „Telefonbuch des Internets“: Es organisiert Namen hierarchisch, verteilt Zuständigkeiten und liefert verschiedene Arten von Datensätzen für Dienste wie Web, E-Mail und Sicherheitsrichtlinien.
Menschen merken sich Namen leichter als Zahlenfolgen, Computer benötigen für die Kommunikation im Internet jedoch Adressen. DNS vermittelt zwischen beiden Ebenen. Wenn ein Browser eine Website öffnen soll, fragt das Betriebssystem oder der Browser gewöhnlich einen Resolver nach den zugehörigen Daten. Der Resolver kann eine passende Antwort bereits zwischengespeichert haben. Andernfalls ermittelt er schrittweise, welche Nameserver für den Namen zuständig sind.
Die Daten sind nicht in einer einzigen globalen Datenbank abgelegt. Das Namenssystem ist als Baum organisiert: Am oberen Ende steht die Root-Zone, darunter liegen Top-Level-Domains wie .de oder .org und darunter die einzelnen Domains. Die grundlegenden Konzepte – Namensraum, Resource Records und Nameserver – beschreibt RFC 1034. Eine Domain bezeichnet dabei einen abgegrenzten Teil dieses Namensraums; DNS ist das System, das die Informationen zu solchen Namen bereitstellt und auffindbar macht.
Eine DNS-Anfrage enthält mindestens den gesuchten Namen und die gewünschte Art der Information. Für die Zuordnung zu einer IPv4-Adresse wird typischerweise ein A-Record abgefragt, für IPv6 ein AAAA-Record. Weitere geläufige Record-Typen sind MX für die Zuordnung von Mailservern, NS für zuständige Nameserver, CNAME für einen Alias und TXT für textuelle Angaben. Die grundlegenden Datenformate und mehrere dieser Record-Typen sind in RFC 1035 festgelegt.
Ist ein Resolver nicht schon im Besitz einer brauchbaren Antwort, beginnt er nicht mit einer Suche über das gesamte Internet. Er fragt zunächst, welche Server für die nächsthöhere Ebene zuständig sind. Eine Root-Antwort verweist etwa auf die Nameserver einer Top-Level-Domain; von dort folgt die Delegation zu den autoritativen Nameservern der konkreten Domain. Autoritativ bedeutet: Diese Server veröffentlichen die maßgeblichen Zonendaten für ihren Zuständigkeitsbereich. Eine Zone ist deshalb nicht einfach dasselbe wie eine Domain. Sie ist der administrativ gepflegte Ausschnitt des Namensraums, den ein bestimmter Satz von Nameservern ausliefert.
Resolver speichern Antworten für eine begrenzte Zeit im Cache. Die Time to Live (TTL) eines Datensatzes gibt an, wie lange eine Antwort zwischengespeichert werden darf. Caching entlastet autoritative Server und beschleunigt wiederholte Abfragen. Es führt aber auch dazu, dass Änderungen an DNS-Einträgen nicht gleichzeitig an allen Orten sichtbar werden. Auch negative Antworten können zeitweise gespeichert werden; RFC 2308 regelt das Caching von Antworten wie NXDOMAIN, wenn ein angefragter Name nicht existiert.
Eine Organisation möchte ihre Website unter portal.beispiel.de erreichbar machen. Sie hinterlegt in ihrer DNS-Zone einen A-Record, der den Namen einer IPv4-Adresse zuordnet, und gegebenenfalls zusätzlich einen AAAA-Record für IPv6. Ruft jemand den Namen im Browser auf, fragt dessen Resolver nach diesen Datensätzen. Liegt die Antwort nicht im Cache, erhält der Resolver über die Hierarchie Hinweise auf die autoritativen Nameserver von beispiel.de und fragt diese schließlich nach portal.beispiel.de.
Ändert die Organisation später den Server, muss sie den betreffenden Record anpassen. Die neue Adresse kann dann erst bei Resolvern erscheinen, wenn ältere Cache-Einträge abgelaufen sind. Deshalb ist es sinnvoll, DNS-Änderungen geplant vorzunehmen und die festgelegte TTL zu berücksichtigen. Das ist kein Beleg für eine feste „Wartezeit“: Die praktische Sichtbarkeit hängt unter anderem von bisherigen Cache-Einträgen, Resolvern und der korrekten Veröffentlichung der Zone ab.
DNS wird für weit mehr als das Öffnen einer Website eingesetzt. Mailserver nutzen MX-Records, um den Zielserver einer E-Mail-Domain zu bestimmen. NS-Records machen Delegationen und damit die verteilte Verwaltung möglich. CNAME-Records können einen Namen auf einen anderen kanonischen Namen verweisen. TXT-Records werden unter anderem für domainbezogene Konfigurationen verwendet; ihre Bedeutung ergibt sich nicht allein aus dem Record-Typ, sondern aus der jeweiligen Anwendung.
Auch der Betrieb moderner Webangebote hängt von sauberem DNS ab. Ein Webserver, ein Zertifikat und das Protokoll HTTPS lösen unterschiedliche Aufgaben: DNS liefert nicht automatisch eine verschlüsselte Verbindung und bestätigt auch nicht, dass der Inhalt einer Website vertrauenswürdig ist. Erst die jeweils eingesetzten Transport- und Sicherheitsmechanismen schaffen diese Eigenschaften. Umgekehrt funktioniert eine korrekt konfigurierte HTTPS-Verbindung nicht unter dem erwarteten Namen, wenn die Namensauflösung fehlgeht.
Für Unternehmen ist DNS zudem eine Schnittstelle zwischen Fachverantwortung und Betrieb: Domains, Zonen, Delegationen und Änderungen müssen nachvollziehbar verwaltet werden. Fehler bei einem einzelnen Record können Webzugriffe oder E-Mail-Zustellung beeinträchtigen, obwohl die dahinterliegenden Systeme selbst laufen.
Die Telefonbuch-Analogie hilft beim Einstieg, bleibt aber unvollständig. DNS „findet“ nicht beliebige Webseiten und ist keine Suchmaschine. Es beantwortet Anfragen nach veröffentlichten Datensätzen. Ob ein Dienst hinter einer Adresse verfügbar, sicher oder inhaltlich richtig ist, prüft DNS grundsätzlich nicht.
Ein weiterer Irrtum ist, dass DNS-Daten unveränderlich oder überall sofort gleich seien. Zonendaten können geändert werden; Caches und TTLs sorgen gerade dafür, dass Antworten verteilt und zeitlich begrenzt wiederverwendet werden. Eine lange TTL ist daher weder generell gut noch generell schlecht: Sie reduziert wiederholte Abfragen, erschwert aber die rasche Verbreitung einer Änderung.
DNS ist auch nicht automatisch gegen Manipulation geschützt. Klassisches DNS bietet eine Namensauflösung, aber keine allgemeine Zusicherung, dass jede Antwort beim Empfänger kryptografisch überprüft wurde. Erweiterungen und zusätzliche Sicherheitsmechanismen können Risiken adressieren; ihre Einführung, Validierung und ihr Nutzen hängen jedoch von der jeweiligen Konfiguration und Unterstützung entlang des Auflösungswegs ab.
Eine Domain ist ein Name beziehungsweise ein Bereich im hierarchischen Namensraum; DNS ist die Infrastruktur aus Regeln, Daten und Servern, die Informationen zu diesem Namen bereitstellt. Ein Nameserver ist ein einzelner Server oder Dienst, der DNS-Anfragen beantwortet; das DNS umfasst dagegen die gesamte Architektur und ihre Datenmodelle. Eine IP-Adresse ist eine technische Adresse für die Kommunikation im Netzwerk, nicht der DNS-Name selbst.