Wie DNS beim Mail-Versand hilft
Ich habe letztens darüber nachgedacht, ob E-Mail ein ähnliches Ende erfährt wie SMS. Noch überwiegt die dezentrale und offene Technologie bei Behörden- und Geschäftskommunikation.
Im privaten Umfeld sieht das ja anders aus. Die Messaging-Apps (Facebook, Whatsapp) haben sich, einmal mit toller Optik und den Emoticons, aber auch durch Gebührenfreiheit, bei den Usern eingenistet. Dabei gibt es tolle Alternativen.
Telegram soll gut sein und ich verwende häufig Signal. Leider sind das auch keine standardisierten Protokolle und man ist auf die zentralisierte Infrastruktur eines Anbieters angewiesen. Dezentral ist Tox. Das habe ich vor einigen Jahren in frühem Entwicklungsstadium ausprobiert und war damals natürlich noch nicht reif für die Empfehlung in den Freundeskreis. Jetzt könnte es anders aussehen. Muss ich bald mal wieder ausprobieren. Wann kommt die Kurve zur E-Mail? Jetzt ;-)
Alle diese Messagingdienste verwenden das Domain Name System (DNS) obwohl der Großteil es wegen der Infrastrukturzentralisierung gar nicht müsste. Kurz erklärt adressiert DNS die Datenpakete über den Domain-Namen an die richtigen Empfänger. Dort ist also für Rechner die Straße, Hausnummer, Postleitzahl und Ort zum Rechnernamen hinterlegt. Aus Rechnername wird Internet-Protokoll-Adresse (IP). Es gibt dann im Internet auch noch die entsprechenden Kartendienste, dass der Weg zur Adresse gefunden wird.
Der MX Eintrag
Im E-Mail-Verkehr ist das DNS verpflichtend. Dort ist über den sog. MX Eintrag hinterlegt welcher Server für den Empfang einer E-Mail für eine bestimmte Domain zuständig ist.
Eine Abfrage für die t-online.de-Domain liefert z.B.
t-online.de. 7200 IN MX 10 mx02.t-online.de.
t-online.de. 7200 IN MX 10 mx00.t-online.de.
t-online.de. 7200 IN MX 10 mx03.t-online.de.
t-online.de. 7200 IN MX 10 mx01.t-online.de.
Die E-Mails landen also bei einem der mx<N>.t-online.de Server. Diese sind gleichberechtigt und die Einzelauswahl findet zufällig statt.
Aus dem E-Mail-Programm oder auch Gmail werden die E-Mails aber zunächst einem Postausgangs-Server oder auch Relay-/Submission-Server zugestellt. Für t-online ist das z.B. securesmtp.t-online.de
Für t-online muss das alles manuell ins E-Mail Programm eingetragen werden.
SRV _submission._tcp
Verwendet man eine gmail.com Adresse hat sich das bei modernen E-Mail-Programmen mit der Angabe der E-Mail-Adresse erledigt. Google stellt einen sog. SRV Eintrag im DNS zur Verfügung:
_submission._tcp.gmail.com. 86400 IN SRV 5 0 587 smtp.gmail.com.
Das Programm kann darüber feststellen, dass Mails an smtp.gmail.com gesendet werden müssen und stellt es für das E-Mail-Konto als Ausgangsserver ein.
SRV _imaps._tcp und _pop3s._tcp
Entsprechende Service Einträge gibt es auch für die IMAP und POP3 Server worüber das E-Mail-Programm Zugriff auf empfangene E-Mails bekommt. Die bietet t-online wieder nicht an. Bei Google:
_imaps._tcp.gmail.com. 86400 IN SRV 5 0 993 imap.gmail.com.
_pop3s._tcp.gmail.com. 86400 IN SRV 20 0 995 pop.gmail.com.
_imap._tcp.gmail.com. 86400 IN SRV 0 0 0 .
_pop3._tcp.gmail.com. 86400 IN SRV 0 0 0 .
Die unverschlüsselten Varianten sind empfehlenswerter Weise deaktiviert.
Der E-Mail-Benutzer muss also nur E-Mail-Adresse und evt. ein Passwort angeben. Alles andere kann von den Systemen übernommen werden. Das ist doch super.
RFC6181 Use of SRV Records for Locating Email Submission/Access Services
So heißt der offizielle Internet Engineering Task Force Standard dazu. Nachlesen kann man das im IETF RFC6181.
RFC6181 wurde vor kurzer Zeit durch den RFC8314 bzgl. der bald verpflichtenden Verschlüsselung zwischen den Mailservern aktualisiert. Es gibt daher auch einen DNS SRV Eintrag für _submissions._tcp
. Mehr dazu folgt bald in einem neuen Beitrag.