david777
Goto Top

Weg einer E-Mail

Hi ihr,

Ich hab mich nun ein bisschen mit Mails und ihrem Weg durchs Netz beschäftigt und wollte nun nur von euch wissen ob das, was ich bisher so rausgefunden habe stimmt:
Hab mal mit eigenen Worten geschrieben, wie das funktioniert:

Jana@gmx.de will Hans@yahoo.de eine Mail schreiben
Folgende Schritte werden gemacht:

1. Es wird eine DNS-Anfrage für mail.gmx.net gemacht, welche die IP des GMX
SMTP-Server zurückliefert.
2. Die Mail an Hans wird an diesen gesendet. [SMTP-Protokoll]
3. Der SMTP-Server macht einen MX-Record an einen Nameserver, welche alle Mailserver
für die Domain 'yahoo.de' zurückliefert. Der mit den geringsten Kosten wird genommen.
4. DNS-Anfrage an den zurückgelieferten Mailserver.
5. Die Mail wird an die vom Nameserver zurückgelieferte IP gesendet.[SMTP-Protokoll?]
6. Der Mailserver nimmt die Mails an und verteilt sie ans Postfach Hans.
7. Hans kann über pop3 die Mails herunterladen. [POP3-Protokoll]

Ganz besonders interessiert mich das mit den Protokollen.
Der Server holt sich per SMTP-die Mails vom Client und schickt sie per pop3 an den empfangenden Client.

Ist der Weg oben richtig?

cya
David

Content-ID: 87543

Url: https://administrator.de/contentid/87543

Ausgedruckt am: 16.11.2024 um 07:11 Uhr

SarekHL
SarekHL 14.05.2008 um 10:51:53 Uhr
Goto Top
OK, ich hoffe, daß ich jetzt keinen Mist erzähle:


1. Es wird eine DNS-Anfrage für mail.gmx.net gemacht, welche die IP des GMX SMTP-Server zurückliefert.

ok

2. Die Mail an Hans wird an diesen gesendet.
[SMTP-Protokoll]

richtig, wobei die eMails dabei in einer Art "virtuellem Umschlag" steckt, der natürlich auch die Empfängerangabe(n) enthält. Der GMX-Mailserver wertet diese Angaben dann für die Weiterverarbeitung aus.


3. Der SMTP-Server macht einen MX-Record an einen Nameserver, welche alle Mailserver für die Domain 'yahoo.de' zurückliefert. Der mit den geringsten Kosten wird genommen.

Naja, der SMTP-Server (von GMX) macht keinen MX-Eintrag, sondern er fragt den selbigen bei einem Nameserver ab. Der MX-Eintrag gibt an, welcher Server in der Domäne yahoo.de für die Annahme der eMails zuständig ist.


4. DNS-Anfrage an den zurückgelieferten Mailserver.

Nicht an den Mailserver, sondern an einen Nameserver. Den fragt er dann nach der IP-Adresse des Mailservers. Ich nehme an, Du meintest das richtige, es war aber mißverständlich ausgedrückt.


5. Die Mail wird an die vom Nameserver zurückgelieferte IP gesendet.[SMTP-Protokoll?]

Ja, wobei die Mail allerdings oftmals nicht direkt zum Ziel gelangt, sondern über mehrere SMTP-Server durchgeleitet wird. Den Sinn habe ich noch nie verstanden, aber man kann das in den Kopfzeilen einer empfangenen Mail schön nachvollziehen, da jeder SMTP-Server auf dem Weg sich dort verewigt ...


6. Der Mailserver nimmt die Mails an und verteilt sie ans Postfach Hans.
7. Hans kann über pop3 die Mails herunterladen. [POP3-Protokoll]

Richtig!


Ganz besonders interessiert mich das mit den Protokollen.
Der Server holt sich per SMTP-die Mails vom Client und schickt sie per pop3 an den empfangenden Client.

Nein, so eben nicht. Oben hast Du es richtig geschrieben. SMTP ist ein Push-Protokoll, das heißt die Mail wird verschickt. POP3 ist ein Poll-Protokoll, daß heißt, mit POP3 werden Mails von einem Client abgeholt.

POP3 ist übrigens nicht zwangsweise notwendig, es gibt auch andere Protokolle für das letzte Stück auf dem eMail-Postweg, also den Weg vom Mailserver des Empfängers bis zu seinem eMail-Programm. Da gäbe es zum Beispiel IMAP oder auch die Möglichkeit, mit einem Exchange-Server zu arbeiten.
gi-networx
gi-networx 14.05.2008 um 10:58:20 Uhr
Goto Top
Tag,

im Großen und Ganzen hast Du Recht, dass ganze läuft konkret so ab:

Der Mailclient von Jana (z.B. Outlook) verbindet sich zu dem Mailserver den Jana in ihrem Mailclient konfiguriert hat (in diesem Fall wohl wirklich mail.gmx.de). Falls dieser mittels einer Domain angegeben ist wird die Adresse vorher von Janas Computer per DNS in eine IP-Adresse aufgelöst.

Janas Mailclient sendet die E-Mail an den Mailserver. Falls der Mailserver Authentifizierung erfordert (SPAM!) weist sich Janas Mailclient je nach Auth-Methode vorher beim SMTP-Server aus (Username/Password oder z.B. mit einem Zertifikat) oder meldet sich kurz beim POP3-Server an (POP before SMTP).

Der SMTP-Server von GMX macht einen Lookup auf den MX-Record von yahoo.de - er bekommt daraufhin eine Liste der Mail-Exchanger für diese Domain. Der Eintrag mit dem niedrigsten Preference-Wert hat hier die höchste Priorität. Die Serveradresse des Eintrags mit der höchsten Prio wird jetzt per DNS in eine IP-Adresse aufgelöst und sich dorthin verbunden.

Der SMTP-Server von GMX schickt die Mail von Jana jetzt an den SMTP-Server von Yahoo mit dem er sich je nach Prio und Verfügbarkeit verbunden hat. Kann er _keinen_ der Mail-Exchanger von Yahoo erreichen wird er das senden nach einer bestimmten Zeit wieder versuchen und den Absender ggf. darüber benachrichtigen ("Message delayed"). Klappt es nach dem x. mal immer noch nicht bekommst Du eine Unzustellbarkeitsmeldung vom Mailer-Daemon. Wenn der Empfänger auf dem Server von Yahoo nicht existiert teilt dieser das entweder direkt dem Server von GMX bei der Übermittlung mit oder er selbst sendet Dir wiederum eine Unzustellbarkeitsnachricht.

Wenn der SMTP-Server von Yahoo die Mail bekommen hat verteilt er sie in das entsprechende Postfach von wo aus sie dann per POP3 oder IMAP abgerufen werden kann.

Das wars eigentlich im Groben. Allerdings wird es in der Praxis eher so sein das Deine E-Mail z.B. bei GMX durch einen Loadbalancer intern nochmal von einem zum anderen Server geschoben wird...

Gruß

Michl
David777
David777 14.05.2008 um 12:53:47 Uhr
Goto Top
Okay- danke für eure Hilfe.
Der letzte Beitrag hat dann ja nochmal in Worten das wiedergegeben, was SarekHL geschrieben hatte.
Von wegen der Authentifizierung am SMTP-Server von yahoo: würde ich weder Pop3 vor SMTP noch eine Authentifizierung haben hätte ich ja ein offenes MailRelais.
Wenn ich selbst mir einen SMTP-Server zu Hause hinstelle: z.B. MDeamon oder so- und ich würde keins von beidem aktivieren hätte ich ein offenes Relais- wär das verboten?

cya
David
SarekHL
SarekHL 14.05.2008 um 12:59:51 Uhr
Goto Top
Wenn ich selbst mir einen SMTP-Server zu Hause hinstelle: z.B. MDeamon oder so- und ich würde keins von beidem aktivieren hätte ich ein offenes Relais- wär das verboten?

Verboten wohl nicht, denn dieser Bereich ist ja (leider) kaum reglementiert. Ja, ich sage bewußt leider, denn wenn es weniger offene Mailrelais geben würde, würde es meiner Ansicht nach auch weniger Spam geben. Die meisten Spammer benutzen offene Mailrelais zum versenden ihrer Mails ...
David777
David777 14.05.2008 um 13:39:53 Uhr
Goto Top
Aber dann wäre es ja für jedermann möglich sich einfach einen MDeamon oder irgendeine Mailsoftware zu Hause hinzustellen und ein offens Mailrelais über das dann auch Spam gehen kann zu installieren.
SarekHL
SarekHL 14.05.2008 um 13:45:10 Uhr
Goto Top
Ich muß gestehen, daß ich keine Ahnung habe, ob und wie sich die Mailserver untereinander authentifizieren. Also sprich, ob der Mailserver von Yahoo Nachrichten von Deinem zuhause aufgesetzten SMTP-Relay überhaupt annehmen würde ...
David777
David777 14.05.2008 um 13:53:04 Uhr
Goto Top
Naja gibt ja auch ne Menge Firmen auf der Welt, die in ihrer EDV einen Mailserver haben. Diese Mails müssen ja auch ankommen- und yahoo kann ja nicht zwischen den Firmen und meinen privaten Mailservern unterscheiden?
gi-networx
gi-networx 14.05.2008 um 14:13:34 Uhr
Goto Top
Hallo,

Aber dann wäre es ja für jedermann möglich sich einfach einen MDeamon oder irgendeine >Mailsoftware zu Hause hinzustellen und ein offens Mailrelais über das dann auch Spam >gehen kann zu installieren.

Das ist theoretisch möglich wird aber in der Praxis nicht funktionieren.
SMTP-Server sprechen unter sich genauso wie Dein Outlook mit dem SMTP-Server von Deinem Provider. Das bedeutet, dass Der Server Deines Providers genauso sein EHLO/HELO und MAIL FROM: <> usw. an den Empfängerserver schickt wie es Dein Outlook bei dem Server Deines Providers tut.

SMTP-Server von Providern unter sich authentifizieren sich in der Regel überhaupt nicht, deswegen wäre es rein theroretisch möglich, dass Du Dir zu Hause auf Deinem Rechner einen Mailsever installierst über den Du Mails schickst und über den man Spam senden könnte falls Du ihn als offenes Relay konfigurierst.
In der Praxis sieht es aber so aus, dass 99% der Empfänger-SMTP-Server keine Verbindungen von Deinem Mailserver annehmen werden. Das liegt daran, dass diese Server erkennen das die Verbindung von einer dynamisch zugeteilten IP-Adresse stammt. "Echte" Mailserver sind i.d.R. unter einer festen IP-Adresse zu erreichen.

Das ganze kannst du ganz leicht ausprobieren, indem Du mit Telnet oder z.B. puTTY eine Verbindung zu z.B. mail.gmx.net auf Port 25 aufbaust - normalerweise wirst Du keine Verbindung bekommen. Wenn du das ganze hingegen z.B. von einem vServer oder Rootserver aus probierst müsste die Verbindung funktionieren und der .

Viele Grüße

Michl
David777
David777 14.05.2008 um 14:29:08 Uhr
Goto Top
Ich hab das Ganze schon ausprobiert.
Bin mit telnet auf mail.gmx.net 25 gegangen und die Verbindung hat funktioniert - das hab ich von der Firma aus gemacht und die hat ja immer die selbe IP denk ich.
Wenn sich jetzt irgendwer ne feste IP von zu Hause kaufen würde würde es ja auch funktionieren- dann würde genau diese feste IP vermutlich auf einer Blacklist landen, oder?
51705
51705 14.05.2008 um 19:34:17 Uhr
Goto Top
Hallo,

In der Praxis sieht es aber so aus, dass 99%
der Empfänger-SMTP-Server keine
Verbindungen von Deinem Mailserver annehmen
werden. Das liegt daran, dass diese Server
erkennen das die Verbindung von einer
dynamisch zugeteilten IP-Adresse stammt.

Das liegt eher daran, daß der Revers Lookup nicht funktioniert.

Grüße, Steffen
gi-networx
gi-networx 14.05.2008 um 20:32:25 Uhr
Goto Top
Das liegt eher daran, daß der Revers Lookup nicht funktioniert

Das stimmt soweit ich weiß nur teilweise, vor einem Reverse-Lookup wird die Client-IP gegen einen Pool von bekannten dynamischen-Ranges geprüft.
Das hat den Grund das es schlicht und einfach für die Mailserver von großen Providern die Millionen von Mails am Tag transportieren nicht möglich ist jedes mal einen Reverse-Lookup zu machen.
51705
51705 14.05.2008 um 20:57:09 Uhr
Goto Top
Hallo Michl,

>Das liegt eher daran, daß der
>Revers Lookup nicht funktioniert

Das stimmt soweit ich weiß nur
teilweise, vor einem Reverse-Lookup wird die
Client-IP gegen einen Pool von bekannten
dynamischen-Ranges geprüft.
Das hat den Grund das es schlicht und
einfach für die Mailserver von
großen Providern die Millionen von
Mails am Tag transportieren nicht
möglich ist jedes mal einen
Reverse-Lookup zu machen.

Laut RFC ist ein MX nicht an eine 'feste' IP gebunden. Dein Einwand ist jedoch bedingt richtig, da einige Provider falsch filtern. Generell ist jedoch der Revers Lookup das Problem (richtigerweise).

Grüße, Steffen (soviel Zeit muß sein).