Ich verstehe Sie nicht einen MX - Eintrag zu einer IP - Adresse direkt zeigen, aber soll es stattdessen auf einen Punkt A
Datensatz, der in Kurven, die IP - Adresse verweist auf Ihrem E - Mail - Server.
Aber warum ist das im Prinzip erforderlich?
Ich verstehe Sie nicht einen MX - Eintrag zu einer IP - Adresse direkt zeigen, aber soll es stattdessen auf einen Punkt A
Datensatz, der in Kurven, die IP - Adresse verweist auf Ihrem E - Mail - Server.
Aber warum ist das im Prinzip erforderlich?
Antworten:
Die gesamte Idee hinter dem MX-Eintrag besteht darin, einen Host oder Hosts anzugeben , die E-Mails für eine Domain akzeptieren können. Wie in RFC 1035 angegeben , enthält der MX-Eintrag einen Domänennamen. Es muss also auf einen Host verweisen, der selbst im DNS aufgelöst werden kann. Eine IP-Adresse kann nicht verwendet werden, da sie als nicht qualifizierter Domänenname interpretiert wird, der nicht aufgelöst werden kann.
Die Gründe dafür in den 1980er Jahren, als die Spezifikationen ursprünglich geschrieben wurden, sind fast dieselben wie heute: Ein Host kann mit mehreren Netzwerken verbunden sein und mehrere Protokolle verwenden.
In den 80er Jahren war es nicht ungewöhnlich, Mail-Gateways zu haben, die sowohl mit dem (relativ neuen) Internet, das TCP / IP verwendete, als auch mit anderen Legacy-Netzwerken, die häufig andere Protokolle verwendeten, verbunden waren. Wenn Sie MX auf diese Weise angeben, sind DNS-Einträge zulässig, die angeben, wie ein solcher Host in einem anderen Netzwerk als dem Internet, z. B. Chaosnet, erreicht werden kann . In der Praxis passierte dies jedoch so gut wie nie. Praktisch jeder hat seine Netzwerke überarbeitet, um stattdessen Teil des Internets zu werden.
Heutzutage kann ein Host über mehrere Protokolle (IPv4 und IPv6) und über mehrere IP-Adressen in jedem Protokoll erreicht werden. Ein einzelner MX-Eintrag kann möglicherweise nicht mehr als eine Adresse auflisten. Daher besteht die einzige Möglichkeit darin, auf einen Host zu verweisen, auf dem alle Adressen dieses Hosts nachgeschlagen werden können. (Zur Leistungsoptimierung sendet der DNS-Server die Adressdatensätze für den Host im zusätzlichen Antwortabschnitt mit, wenn er über autorisierende Datensätze verfügt, wodurch ein Roundtrip gespeichert wird.)
Es gibt auch eine Situation, in der Ihre Mail-Austauscher von Dritten (z. B. Google Apps oder Office 365) bereitgestellt werden. Sie verweisen Ihre MX-Einträge auf ihre Hostnamen, aber es kann vorkommen, dass der Dienstanbieter die IP-Adressen der Mailserver ändern muss. Da Sie auf einen Host hingewiesen haben, kann der Dienstanbieter dies transparent ausführen und Sie müssen keine Änderungen an Ihren Datensätzen vornehmen.
DNS als Protokoll hat verschiedene Arten von Werten, die nicht austauschbar sind.
Es ist wichtig zu beachten, dass DNS ein binäres Protokoll mit strengen Zuordnungen zwischen dem Datensatztyp und dem Datentyp ist, den ein solcher Datensatz enthält.
Beispiel:
Ein A
Datensatz enthält eine IPv4-Adresse (4 Datenbytes, feste Länge).
Ein AAAA
Datensatz enthält eine IPv6-Adresse (16 Byte Daten, feste Länge).
Ein MX
Datensatz enthält dagegen einen Namen (eine Folge von Bezeichnungen im Format <int number of bytes> <label> <int number of bytes> <label> <int 0>
, variable Länge).
Es ist nicht möglich, dass ein MX
Datensatz eine IP-Adresse als Daten hat.
NXDOMAIN
).
MX
tatsächlich auf der Welt vorhandenen Datensätze verwendet werden können oder sollten.
Ich werde dies als eine Vermutung werfen. Natürlich bin ich mit der Grippe zuhause, also bin ich vielleicht verrückt.
RFC 974 besagt:
Der erste Schritt für den Mailer bei LOCAL ist die Abfrage von MX-RRs für REMOTE. Es wird dringend empfohlen, diesen Schritt jedes Mal durchzuführen, wenn ein Mailer versucht, die Nachricht zu senden. Die Hoffnung ist, dass Änderungen in der Domänendatenbank von Mailern schnell verwendet werden und Domänenadministratoren so in der Lage sind, Nachrichten während der Übertragung für defekte Hosts umzuleiten, indem sie einfach ihre Domänendatenbanken ändern.
Durch die Forderung nach einem Namen anstelle von IP wird diese Praxis nachdrücklich gefördert. Die Namen können gleich bleiben, und im Falle eines Lastenausgleichs oder einer DR müssen Sie sich nicht darum kümmern, den MX-Eintrag selbst zu ändern und auf die DNS-Weitergabe zu warten.
Einige E-Mail-Server (z. B. exim) erlauben das Senden an MX-Einträge, die auf eine reine IP-Adresse verweisen, nicht. Sie müssen daher einen vollqualifizierten Domänennamen verwenden, um die Konformität zu gewährleisten. Dies liegt daran, dass die meisten Server erwarten, dass der MX-Eintrag einen Hostnamen und keine IP-Adresse enthält (wofür sind A-Einträge gedacht).
Bearbeiten: Im DNS hat jeder Datensatz strenge Anforderungen an die Art der Daten, die jeder Datensatz enthalten kann. Im Fall von MX - Records, dann ist es ein Hostname nur .
MX
Datensatz möglicherweise keine IP-Adresse als Wert haben kann.
IN RFC 1025 zeigen MX-Einträge nur auf einen RR (Ressourceneintrag) eines A-Eintrags oder eines CNAME.
Der Mail-Server, der die Mail sendet, fragt nach dem RR eines MX-Eintrags, der mx-Eintrag listet A-Einträge von Servern auf, der Mail-Server führt eine Forward-Suche durch, um einen A-Eintrag zu erhalten, und leitet die Mail dann über smtp an den Service-Host weiter, der als aufgeführt ist Ein Mailserver, der Mail für diese Domain empfangen möchte.
Viele der geltenden Regeln für E-Mails wurden weiterentwickelt, um das Vertrauen zwischen den Domänen zu wahren, in denen die hin und her gesendeten Nachrichten tatsächlich gültig sind. All dies soll letztendlich SPAM reduzieren.
All diese wesentlichen Komponenten für eine Grundlage, auf der ein Mail-Server aufgebaut werden kann, bestehen zumindest aus einer kleinen Komponente, die darauf beruht, eine vertrauenswürdige Kommunikation herzustellen und nicht vertrauenswürdige Kommunikation zu reduzieren.
Der Zweck von MX
Aufzeichnungen besteht darin, dass eine Anwendung (E-Mail-Übertragung) Informationen über den zu verwendenden Host erhalten kann. Auf Anwendungsebene, Host - Namen sind genau das Richtige (nicht IP addresss) zu verwenden.
Das Hinzufügen des Konzepts eines Variantentypdatensatzes zu DNS führt außerdem zu einer gewissen Komplikation und damit zu einem Einstiegspunkt für Probleme, Implementierungspannen und Sicherheitsherausforderungen. Zum Beispiel 1.2.3.4.example.com.
ist es ein gültiger Hostname (ja, auch im Lichte von RFC1034, 3.5). Das Angeben dieses Hosts MX
in einer Bindekonfigurationsdatei für example.com könnte folgendermaßen aussehen
. MX 10 1.2.3.4
und vermutlich ist das genau das gleiche, wie ein MX-Eintrag mit einer IP aussehen sollte. Und selbst um die Informationen in ein DNS-Datagramm zu übertragen, sind einige skurrile Zusatzinformationen erforderlich. Der einfachste Weg wäre die Einführung eines neuen Ressourceneintragstyps MXA
, beispielsweise zur Disambiguierung. Aber warum dann die Bürde so einen neuen Rekordtyp einführen, wenn
. MXA 10 5.6.7.8
könnte immer durch ersetzt werden
. MX 10 dummy
dummy A 5.6.7.8
(und würde auch von DNS-Clients unterstützt, die nichts über MXA
Datensätze wissen )?