Welche Protokolle und Server beteiligt sind, senden Sie eine E-Mail, und was sind die Schritte?

StackOverflow https://stackoverflow.com/questions/32744

  •  09-06-2019
  •  | 
  •  

Frage

Für die letzten paar Wochen, die ich versucht habe zu erfahren, wie E-Mail funktioniert.Ich verstehe den Prozess von einem client empfangen von E-Mails von einem server mit POP ziemlich gut.Ich verstehe auch, wie Sie einen client-computer können Sie mithilfe von SMTP zu bitten, einen SMTP-server, eine Nachricht zu senden.Ich bin aber etwas fehlt noch...

Die Art, wie ich es verstehe, werden ausgehende E-Mails hat drei Ausflüge:

  1. Client (gmail-Benutzer mit Thunderbird) auf einem server (Google Mail)
  2. Erste-server (Gmail) auf den zweiten server (Hotmail)
  3. Zweiten server (Hotmail) auf den zweiten client (hotmail-Benutzer mit OS X E-Mail)

Wie ich es verstehe, Schritt eins verwendet SMTP für den Kunden zu kommunizieren.Der client authentifiziert sich irgendwie (vielleicht mit USER und PASS), und sendet dann eine Nachricht an die gmail-server.

Aber ich verstehe nicht, wie die gmail-server leitet die Nachricht an den hotmail-server.

Für Schritt drei, ich bin mir ziemlich sicher, das hotmail-server POP verwendet, um die Nachricht zu senden, um den hotmail-client (Authentifizierung, wieder).

Also, die große Frage ist: wenn ich auf E-Mail senden sendet meine Botschaft an meine gmail-server, wie kann mein gmail-server leitet die Nachricht auf, sagen wir, einen hotmail-server so, mein Freund, können erhalten es?

Danke so viel!

~Jason


Danke, das ist hilfreich war so weit.

Wie ich es verstehe, der erste client sendet die Nachricht an den ersten server mit SMTP, oft an eine Adresse wie smtp.mail.SOMESERVER.com auf port 25 (in der Regel).

Dann, SOMESERVER verwendet SMTP erneut, um die Nachricht zu senden RECEIVESERVER.com auf port 25 (nicht smtp.mail.RECEIVESERVER.com oder etwas Phantasie).

Dann, wenn der Empfänger fragt RECEIVESERVER für seine E-mail, mit POP, s/er erhält die Nachricht,...Recht?

Nochmals vielen Dank (vor allem an dr-jan),

Jason

War es hilfreich?

Lösung

Der SMTP-server an Google Mail (die akzeptierte die Meldung von Thunderbird) leitet die Nachricht an den Empfänger.

Es tut dies durch die mithilfe von DNS zu finden, der MX-Eintrag (mail exchanger) für die domain-name-Teil des Ziel-E-Mail-Adresse (hotmail.com in dieses Beispiel).Der DNS-server wird eine IP-Adresse zurückgegeben, die die Nachricht gesendet werden soll.Der server auf dem Ziel-IP-Adresse wird hoffentlich läuft SMTP (auf dem standard-port 25), so es kann erhalten die eingehenden Nachrichten.

Sobald die Nachricht empfangen wurde, wird vom hotmail-server, es ist gespeichert, bis der entsprechende Benutzer sich anmeldet und ruft Ihre Nachrichten über die POP-oder IMAP).

Jason - zur Beantwortung Ihrer follow-up -...

Dann, SOMESERVER verwendet SMTP erneut, um die Nachricht zu senden RECEIVESERVER.com auf port 25 (nicht smtp.mail.RECEIVESERVER.com oder etwas Phantasie).

Das ist richtig - der name der Domäne zu senden, werden als alles, was nach dem " @ " in der E-Mail-Adresse des Empfängers ein.Oft, RECEIVESERVER.com ist ein alias für etwas konkretes, etwas sagen wie incoming.RECEIVESERVER.com (oder, in der Tat, smtp.mail.RECEIVESERVER.com).

Können Sie mit nslookup Abfragen DNS-Server (dies funktioniert in Linux und in einer Windows-cmd-Fenster):

nslookup
> set type=mx
> stackoverflow.com
Server:         158.155.25.16
Address:        158.155.25.16#53

Non-authoritative answer:
stackoverflow.com       mail exchanger = 10 aspmx.l.google.com.
stackoverflow.com       mail exchanger = 20 alt1.aspmx.l.google.com.
stackoverflow.com       mail exchanger = 30 alt2.aspmx.l.google.com.
stackoverflow.com       mail exchanger = 40 aspmx2.googlemail.com.
stackoverflow.com       mail exchanger = 50 aspmx3.googlemail.com.

Authoritative answers can be found from:
aspmx.l.google.com      internet address = 64.233.183.114
aspmx.l.google.com      internet address = 64.233.183.27
>                  

Dies zeigt uns, dass die E-Mail an jemanden in der stackoverflow.com sollten versendet werden, um eine der gmail-Servern, die oben gezeigt.

Der Wikipedia-Artikel erwähnt (http://en.wikipedia.org/wiki/Mx_record) beschreibt die Priorität zahlen, die oben gezeigt (10, 20, ..., 50).

Andere Tipps

Sie sind auf der Suche für den Mail Transfer Agent-Wikipedia hat ein schöner Artikel auf das Thema.

In Internet message handling services (MHS), a message transfer agent oder mail transfer agent (MTA) oder E-mail-relay-software, die transfers electronic mail-Nachrichten von einem computer zum anderen über ein client–server-Anwendung-Architektur.Ein MTA implementiert sowohl client (senden) und server (Empfang) Teile des Simple Mail Transfer Protocol.

Die Begriffe E-mail-server, mail-exchanger und MX-host kann beziehen sich auch auf einem computer ausführen der MTA-Funktion.Das Domain Name System (DNS) ordnet einen mail-server zu einer domain mit der mail-exchanger (MX) resource records mit der domain-name der host-providing-MTA-Dienste.

Sie könnten auch interessiert sein zu wissen, warum die GMail-HotMail-link verwendet SMTP -, so wie in Ihrem Thunderbird-client.In anderen Worten, da Ihre Kunden senden können E-Mails über SMTP, und es kann die Verwendung von DNS zu erhalten, die Sie den MX-Eintrag für die hotmail.com, warum nicht senden Sie es, direkt dort, skipping gmail.com insgesamt?

Es gibt ein paar Gründe, einige historische und einige für die Sicherheit.In der ursprünglichen Frage, es wurde davon ausgegangen, dass Ihr Thunderbird-client meldet sich mit einem Benutzernamen und das Passwort ein.Dies ist oft nicht der Fall.SMTP eigentlich nicht erfordern, dass eine Anmeldung senden Sie eine E-mail.Und SMTP hat keine Möglichkeit zu sagen, wer wirklich das senden der E-mail.Also, spam war geboren!

Es gibt leider immer noch viele SMTP-Server gibt, die es ermöglichen, alle und jeden zu verbinden und senden von E-mail, blind Vertrauen, dass der Absender, wer Sie vorgeben zu sein.Diese Server werden als "offene relays" und werden routinemäßig schwarz-aufgeführt von smarter Administratoren von anderen mail-Servern, da der spam, die Sie ausstoßen.

Verantwortlich SMTP-server-Administratoren, Ihre server akzeptieren E-mail für die Zustellung nur in besonderen Fällen 1) die mail kommt von "eigenen" Netz, oder 2) die E-mail gesendet wird, um die "eigenen" Netz, oder 3) der Benutzer gibt die Anmeldeinformationen, die ihn so identifiziert, als eine Vertrauenswürdige Absender.Fall #1 ist wohl, was passiert, wenn Sie senden E-mail von der Arbeit;Ihre Maschine ist auf dem vertrauenswürdigen Netzwerk, so dass Sie können senden E-mail zu jeder.Eine Menge von Firmen-mail-Server immer noch nicht, die eine Authentifizierung erfordern, so kann man als jemand anderes in Ihrem Büro.Spaß!Fall #2 ist, wenn jemand sendet Ihnen E-mail.Und Fall #3 ist wahrscheinlich, was passiert mit Ihrem Google Mail-Beispiel.Du bist nicht aus einer vertrauenswürdigen Netzwerk, Ihr nur auf das Internet mit die Spammer.Aber durch die Verwendung eines Kennworts können Sie beweisen, GMail, dass Sie sind, wer Sie sagen, Sie sind.

Der historische Aspekt ist, dass in den alten Tagen, die Verbindung zwischen Google Mail und hotmail war wahrscheinlich intermittierend sein.Durch queuing Ihre E-mail-bis auf einen lokalen server verwenden, können Sie waschen Sie Ihre Hände, wohl wissend, dass, wenn ein link eingerichtet wurde, wird der lokale server übertragen konnte Ihre Nachrichten an den remote-server, die halten würde, die Nachricht, bis der Empfänger s agent hob es auf.

Der erste server schauen DNS für ein MX-Datensatz der Hotmail-server.MX ist eine spezielle Platte, die definiert, eine E-mail-server für eine bestimmte Domäne.Zu wissen, die IP-Adresse von Hotmail-server, GMail-server wird gesendet die Nachricht über SMTP-Protokoll und auf eine Antwort warten.Wenn Hotmail-server down geht, GMail-server wiil versuchen, die Mitteilung zu senden (abhängig von server-software-Konfiguration).Wenn der Prozess beendet ist, ok, dann ok, wenn nicht, GMail-server benachrichtigt Sie, dass er nicht in der Lage, die Nachricht zu übermitteln.

Wenn Sie wirklich wollen, zu wissen, wie E-Mail funktioniert, Sie Lesen konnte die SMTP-RFC oder POP3 RFC.

Alle E-Mails werden mittels SMTP (oder ESMTP).
Die wichtige Sache zu verstehen ist, dass, wenn Sie Nachricht senden someguy@hotmail.com diese Meldung Ziel ist nicht sein PC.Das Ziel ist someguy Ordner "Eingang" an hotmail.com server.
Nachdem die Nachricht am Ziel.Der Benutzer kann überprüfen, ob er neue Nachrichten auf seinem Konto bei hotmail-server und abrufen über POP3

Es wäre auch möglich, die Nachricht zu senden, ohne über gmail-server, indem Sie ihn direkt von Ihrem PC auf hotmail SMTP.

Schritt 2 bis 3 (alsoGmail, Hotmail) normalerweise geschehen würde, durch (SMTP oder ESMTP - extended SMTP).

Hotmail senden nichts zu ein client über POP3.Es ist wichtig zu verstehen, einige der Nuancen hier.Der client Kontakt Hotmail via POP3 und fordert Ihre E-mail.(d.h.der client initiiert die Diskussion).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top