MX-Record: Erklärung des DNS-Eintrags

Das Domain Name System (kurz: DNS) ist in erster Linie für die Namensauflösung bekannt. Denn erst diese erlaubt es Internet-Usern, eine einprägsame URL in den Browser einzugeben – andernfalls müssten sie über sperrige IP-Adressen durch das Web surfen. Für diese Namensauflösung verwendet das DNS A- und AAAA-Records – und unter Umständen auch CNAME-Records. Doch es gibt noch sehr viel mehr DNS-Record-Typen, durch die das System weitere Möglichkeiten bietet.

Hinweis

Das DNS kennt viele verschiedene Resource-Record-Typen, die unterschiedlichste Funktionen innerhalb des Systems ermöglichen. In unserem ausführlichen Überblicksartikel zum Thema DNS Records sind alle Eintrags-Typen tabellarisch aufgeführt.

Der MX-Record ist ein solcher Typ, der sich eben nicht auf das WWW bezieht, sondern die E-Mail-Kommunikation betrifft. Doch was genau hat es mit dem MX-Record auf sich?

MX-Record erklärt – mit Beispiel

DNS-Records befinden sich in Zonendateien – das sind einfache Textdateien, die alle Einträge zu einer Zone bündeln, für die der entsprechende Server verantwortlich ist. Stellt ein Client eine Anfrage, erhält der antwortende Server seine Informationen aus eben dieser Datei. Die unterschiedlichen Typen an Einträgen haben verschiedene Funktionen. Die Abkürzung MX steht für Mail Exchange und gibt somit schon einen Hinweis darauf, was mit dem Eintrag erreicht wird: Über den MX-Record erhält ein Client via DNS die Information, unter welcher Domain ein Mailserver zu erreichen ist.

Zu einer Domäne gehören in der Regel verschiedene Server. Neben dem Webserver, der die Website bereitstellt, beispielsweise oft auch FTP-Server und eben auch ein oder gar mehrere Mailserver. Alle sind über verschiedene Subdomains zu erreichen. Wie diese Subdomain lautet, lässt sich über den MX-Record erfragen. Dies erledigt der Mailserver, von dem aus die E-Mail versendet wird, in der Regel automatisch.

Felder und Syntax der Einträge

DNS-Records bestehen grundsätzlich aus mehreren Informationen, untergebracht in verschiedenen Feldern. Neben der Information wie der Mailserver einer bestimmten Domäne heißt, können so weitere Details übertragen werden:

  • <name>: Das erste Feld enthält den Namen der Domain.
  • <ttl>: Time to live gibt an, wie lange die Informationen garantiert ihre Gültigkeit behalten.
  • <class>: Das Klassenfeld spezifiziert die Netzwerkart.
  • <type>: Der DNS-Record-Type ist in diesem Fall MX.
  • <priority>: Je kleiner der Wert ist, umso höher ist auch die Priorität des Mailservers.
  • <rdata>: Resource Data definiert den Namen des Mailservers.

Domainnamen werden in allen Record-Typen immer in der Form der Fully Qualified Domain Names (FQDN) angegeben. Das bedeutet, dass vordergründig der Inhalt jedes Feldes mit einem Punkt abgeschlossen wird. Tatsächlich bilden FQDN den kompletten Pfad ab, von der kleinsten Einheit ganz links, zur größten ganz rechts – dem Rootserver. Die höchste Ebene ist allerdings unbenannt, weshalb nach dem ihr vorangegangen Punkt nichts mehr steht.

Die Time to live gibt an, wie lange der Anfragende die Information in seinem Cache halten und nutzen kann. Das soll garantieren, dass keine veralteten Einträge verwendet werden. Ist die Zeit abgelaufen, muss der Client den Record erneut vom Nameserver anfragen. Die Angabe der TTL erfolgt in Sekunden. Häufig taucht dieses Feld nicht im eigentlichen Eintrag auf. Stattdessen wird die Zeit am Anfang der Zonendatei für die komplette Zone definiert.

Das Klassenfeld ist optional, da inzwischen ohnehin nur noch das Internet in Frage kommt. Bei Einführung der Resource-Records waren allerdings auch noch die beiden Klassen Hesiod (HS) und Chaos (CH) möglich. Beide Netzwerke sind aber heute nicht mehr in Betrieb. Deshalb bleibt das Feld entweder leer oder enthält ausnahmslos das Kürzel IN.

Das Feld bezüglich der Priorität ist eine Besonderheit für MX-Records. Viele Administratoren – insbesondere die größerer Projekte – lassen mehrere Mailserver parallel laufen. Damit lassen sich Ausfälle und Belastungsspitzen ausgleichen und die E-Mail-Kommunikation droht nicht, plötzlich auszufallen. Dabei soll aber die Verteilung nicht unbedingt gleichmäßig erfolgen. Aus diesem Grund vergibt man Prioritäten. Der Server mit dem geringsten Wert hat die höchste Priorität und wird demnach als erstes angesteuert. Ist er nicht verfügbar, wird der Server mit dem nächsthöheren Wert ausgewählt.

Das Data-Feld schließlich enthält den Namen des Mailservers. Auch dieser wird in Form des FQDN angegeben. Im Eintrag folgen alle Felder innerhalb einer Zeile aufeinander. Man beendet den Eintrag nicht durch ein bestimmtes Zeichen – ein Zeilenumbruch genügt.

<name> <ttl> <class> <type> <priority> <rdata>

In der Praxis tauchen die beiden Felder TTL und Class selten in Einträgen auf.

MX-Record-Beispiel

Als Beispiel nutzen wir den fiktiven Mailserver von example.com. Eine passende E-Mail-Adresse dazu wäre beispielsweise user@example.com. Der Webserver des Absenders würde seine DNS-Anfrage also zur Domain example.com senden. Die entsprechenden Einträge in der Zonendatei des Nameservers sähen dann folgendermaßen aus:

$TTL 1200
example.com.	IN	A		93.184.216.34
example.com.	IN	MX	10	mail1.example.com.
example.com.	IN	MX	10	mail2.example.com.
example.com.	IN	MX	50	mail3.example.com.

Wie man hier sehen kann, gilt die Haltbarkeit der Informationen für die komplette Zone. In die einzelnen Einträge braucht das Feld daher nicht mehr integriert sein. In diesem Beispiel haben wir zunächst einen A-Record, der die Domain mit einer IP-Adresse verknüpft. Dann folgen drei MX-Records. Man erkennt, dass sich diese nur in den Subdomains unterscheiden.

Die ersten beiden Mailserver haben in diesem Beispiel die gleichen Prioritätsstufen. Also werden die Aufgaben gleichmäßig auf beide verteilt. Mailserver 3 wird erst dann angesprochen, wenn die anderen beiden die Last – zum Beispiel aufgrund eines Ausfalls – nicht mehr bewältigen können.

MX-Record checken: So geht’s!

Um einen MX-Record-Lookup durchzuführen, kann man auf verschiedene Webdienste zurückgreifen. Sehr komfortabel und einfach zu bedienen ist Public DNS von Google. Auf der Startseite gibt man jene Domain ein, deren MX-Records man checken möchte. Auf der folgenden Seite muss dann der Record-Type von A auf MX geändert werden. Die beiden Optionen EDNS Client Subnet und DNSSEC braucht man nicht ändern. Erstere soll die Bereitstellung von DNS-Informationen beschleunigen. Letztere garantiert, dass die Informationen nicht durch einen kriminellen Dritten manipuliert wurden.

In der Beispielsuche erkennt man unter „Answers“ die verschiedenen Mailserver. Den FQDN, unter dem diese zu erreichen sind, findet man unter dem Punkt Data. Dort ist auch die Priorität angegeben: Die Einträge in diesem Ausschnitt bewegen sich im Bereich von 10 bis 50. Da die TTL bei jedem Eintrag gleich ist, kann man davon ausgehen, dass die Haltbarkeit der Informationen für die komplette Zone eingestellt wurde. Unter Typ befindet sich immer die gleiche Zahl: 15. Dies entspricht einem MX-Record. Die Internet Assigned Numbers Authority (IANA) hat nämlich jedem DNS-Record-Typ einen Wert zugeordnet und die Eintragsarten auf diese Weise durchnummeriert.

Tipp

Wer lieber einen Dienst abseits vom Internetriesen benutzen möchte, der kann auch auf das Angebot von Heise Online zurückgreifen. Denn auch das deutsche Fachmagazin bietet einen MX-Record-Check an.


Auf dem Laufenden bleiben?

Jetzt für unseren Newsletter anmelden und gratis Online-Marketing Whitepaper für lokale Anbieter sichern!