Die DNS-Records erklärt

Mit Hilfe des Domain Name Systems (DNS) kann beispielsweise Dein Computer herausfinden, welche IP-Adresse zu der Domain example.com gehört. Nur so können dann letztlich die gewünschten Inhalte angezeigt werden.

Als Besitzer oder Verwalter einer Domain kann über das DNS entschieden werden, welche IP-Adressen für welche (Sub-)Domains angefragt werden sollen und wie mit eingehenden E-Mails umgegangen wird.

Häufig kannst Du diese Einstellungen bei deinem Webhoster, der die Domain verwaltet, vornehmen und eigene Records anpassen. Doch welche Bedeutung haben diese Records (Einträge) und welche gibt es?

DNS-Records im Überblick

Ich habe einmal viele der möglichen Eintragstypen für Dich zusammengetragen. Einige Provider lassen übrigens nur begrenzt Änderungen zu, du hast aber in jedem Fall die Möglichkeit, den Provider zu wechseln.

  • Der A-Record
    Dies ist der Klassiker unter den Records. Damit weisen wir z.B. *.example.com – also allen Subdomains von example.com – eine IP-Adresse zu. Die IP-Adresse ist die des gewünschten Servers. Nur wenn die Domain auch auf dem Server eingerichtet wurde, wird er die gewünschten Inhalte zurückgeben. Außerdem unterstützt dieser Eintrag nur die Empfehlung einer IPv4-Adresse (also z.B. 123.456.789.0).
  • Der AAAA-Record
    Möchtest du hingegen auf eine IPv6-Adresse (z.B. 2001:0db8:85a3:08d3:1319:8a2e:0370:7344) verweisen, kannst Du dafür den AAAA-Record verwenden. Dieser funktioniert nach dem gleichen Prinzip. Auch hier entscheidest Du, ob die Regel eine Subdomain, alle Subdomains (*.example.com) oder die Hauptdomain (leeres Subdomain-Feld) betrifft.
  • Der CNAME-Record
    Der CNAME-Record akzeptiert nur Domainnamen und keine IP-Adressen und entspricht einer Weiterleitung, andere Methoden (z.B. die Weiterleitung mit PHP) sind aber zu bevorzugen. Lege ich also einen solchen Eintrag an: „test.www-coding.de IN CNAME 60tools.com“ würden die Besucher vermutlich beim Aufruf von test.www-coding.de auf 60tools.com weitergeleitet werden.
  • Der MX-Record
    Mal angenommen Du verschickst eine E-Mail an test@www-coding.de, woher wüsste dein E-Mail-Anbieter wohin er diese E-Mail schicken soll? Häufig sind die Mail-Server nämlich nicht unter der Hauptdomain (also in diesem Fall www-coding.de) zu erreichen, sondern zum Beispiel unter mail.meinhoster.de.Dafür ist der MX-Record da. Er legt fest, an welchen Mail-Server die E-Mails verschickt werden sollen. Hierbei dürfen keine IP-Adressen, sondern ausschließlich Hostnamen übergeben werden. Für den Fall, dass ein Server ausfallen sollte, können, damit die E-Mails nicht ins Leere gehen, mehrere Ersatz-Server mit unterschiedlicher Priorität festgelegt werden.
  • Der SRV-Record
    „Kleine“ Webmaster werden ihn vermutlich eher selten benötigen: den Service-Record. Mit einem solchen Eintrag kann die Domain darüber informieren, dass über Port x der Dienst y unterstützt wird. Es können also sowohl Port, Domain und die Dienstbezeichnung angegeben werden.
  • Der LOC-Record
    Interessant, aber nicht wichtig, ist auch der sogenannte LOC-Record. Hier können GPS-Koordinaten den Server-Standort angeben. Die Idee dahinter ist, dass so die Route eines IP-Pakets genau nachvollzogen werden kann.In der Realität kommt es aber kaum zum Einsatz. Anbieter wie Google, die sonst aus allen Bereichen Records liefern, verwenden diesen Eintragstyp jedenfalls nicht.
  • Der SOA-Record
    Informationen über den Provider und die Zonen enthält der SOA-Record („Start of Authority“). Für meine Domain gab es dort bisher Einträge wie: „mname: ns1.nshost2.de“ und „rname: hostmaster@webhostone.de“. In der Regel wird sich dein Hoster um das Befüllen dieses Eintrags kümmern.
  • Der TXT-Record
    Mal etwas ganz anderes ist der TXT-Record. Hier kann ein frei definierter Text für die Domain oder eine Subdomain gespeichert werden. Das können etwa Informationen über den Besitzer der Domain sein. Die meisten Domainbesitzer werden diesen Eintragstyp vermutlich nicht benötigen.
  • Der PTR-Record
    Achtung, hierbei handelt es sich um einen Sonderfall. PTR (für Pointer) kann nicht einer Domain zugeordnet werden. Stattdessen kann hiermit eine IP-Adresse eine Domain zugewiesen bekommen. Es ist also quasi das Gegenteil eines A-Records. Wenn Du bei deinem Anbieter über eine eigene IP verfügst, kann Du für diese eventuell einen festen Domainnamen festlegen. Dann wird der PTR-Record aktiv.

DNS-Abfrage

Dein Rechner kümmert sich automatisch um die DNS-Abfrage. Möchtest Du selbst die Werte für eine Domain herausfinden, kannst du das DNS-Tool von heise oder experte.de verwenden.

Linux-Nutzer können über die Konsole die Einträge abfragen:

host -t a www-coding.de // liefert A-Records für www-coding.de
host -t aaaa google.com // liefert AAAA-Records für google.com

Auch für Windows-Nutzer gibt es einen solchen Befehl:

nslookup -q=mx wikipedia.org // Abfrage der MX-Einträge für wikipedia.org
nslookup -q=mx wikipedia.org 8.8.8.8 // Abfrage selbiger über den DNS-Server 8.8.8.8

Solltest Du dich wundern, dass google.com über 10 A-Records zurückgibt, so sollte dir gesagt sein, dass dein Rechner somit einen zufällig auswählen wird. Quasi eine Lastverteilung per DNS.

Die DNS-Server

Nun, irgendwie müssen ja die Einträge für deine Domain zu dem Benutzer kommen. Aber woher soll sich der Benutzer die Daten holen?

Dafür gibt es ein recht komplexes DNS-System. die DNS-Server kommunizieren untereinander. Einige verwalten nur wenige Domains, wie z.B. der DNS-Server, der deine Domain verwaltet, und leiten diese Einträge an die Server der höheren Ebene weiter. Diese tauschen sich wiederum ebenfalls mit anderen Servern aus, z.B. auch mit denen, die am Ende von deinem Rechner angefragt werden.

Wichtig ist wohl auch noch zu wissen, dass die Domain-Organisationen (z.B. die DENIC für .de-Domains) über eigene DNS-Server für ihren jeweiligen Adressraum verfügen. Insgesamt also ein komplexes System, was sich auch dank des Zwischenspeicherns und der Hierarchien als sehr stabil erwiesen hat.

Die TTL (Time to live)

Zwischenspeichern? Ja, genau. Die meisten DNS-Server wären vermutlich überlastet, würdest Du jedes Mal, wenn du die Domain example.com aufrufst, nach der IP fragen. Stattdessen speichern die DNS-Server die Einträge für eine gewisse Zeit, sogar dein Computer speichert die Einträge noch.

Mit der TTL kann für jeden Record die Zeit in Sekunden festgelegt werden. Doch da, wie schon gesagt, mehrere DNS-Server zwischen dem Benutzer und dem DNS deiner Domain stehen, kann es dennoch länger dauern – häufig bis zu 24-48 Stunden – bis alle Rechner die aktuelle IP-Adresse kennen und verwenden.

Da DNS-Einträge allerdings nicht allzu häufig verändert werden, lässt sich diese Latenz-Zeit durchaus hinnehmen.

Fazit

Jede Menge Fachbegriffe, wie MX, A, AAAA, DNS & TTL gehören bei dem Domain Name System dazu. Dennoch sind die meisten Einträge gut zu verstehen.

Und wer Änderungen für seine Domain durchführen will, wird häufig nur A-, AAAA-, MX- oder CNAME-Records benötigen. Doch schadet es nicht auch von den anderen Eintragstypen von DNS zu wissen.