SMTP belsejében

Hogyan működik az internetes e-mail?

Elgondolkodott már arról, mi történik, ha megnyomja a Küldés gombot az e-mail programban? Valószínűleg nem, azt hiszem - mindaddig, amíg működik. Pontosan ez az oka annak, hogy csodálkozzon. Abban az esetben, ha valami nem működik, akkor jó tudni, hogy mi nem működik. Általában ez a megoldás fele.

Amikor elküldi az e-mailt, az SMTP jön létre. Az SMTP rövidítése a Simple Mail Transfer Protocol protokollhoz hasonlóan, az RFC 5321: Simple Mail Transfer Protocol protokoll szerint. Az e- mail kliens az SMTP szerverrel beszél ebben a tiszta és egyszerű eljárással, hogy e-maileket kapjon az egyik helyről a másikra.

A flörtölés

Az e-mail programod SMTP kliens lesz, csatlakozik a levélkiszolgáló 25. portjához (általában az SMTP porthoz ) és - mondja az EHLO . A számítógépek, végül, csak emberiek, és számít az, hogy udvarias akar lenni. Valójában nem igyekszik udvariasnak lenni, hanem későbbi kiegészítéseket használni az SMTP-hez, amelyek két későbbi HELO parancsot hoztak létre (az SMTP parancs általában négy karakterből áll).

A HELO két íze

Az EHLO, mivel ez a legfrissebb, a szerver az összes további funkciót (pl. A kézbesítési állapot értesítését vagy a biztonságos ASCII karaktereket nem tartalmazó üzenetek továbbítására képes) hirdetni képes.

Nem minden kiszolgáló engedélyezi ezt az üdvözlést, de el kell fogadnia egy egyszerű HELO-t, amely természetesen feltételezi, hogy nincsenek további funkciók. Mind a hello parancsok megkövetelik, hogy az ügyfél adja meg domainjét a ** LO után. A gyakorlatban ez úgy néz ki, mint:

220 mail.domain.net ESMTP szerver
HELLÓ
A 501 HELO domain cím szükséges
HELO localhost
250 mail.domain.net Hello localhost [127.0.0.1], örülök, hogy találkoztunk

(Az inputom dőlt betűvel , a kiszolgálók kimenete fekete, az 5 sorral kezdődő sorok hibát jeleznek.)

A küldő

A protokoll fennmaradó része valóban megérdemli az attribútum egyszerűségét. Ha e-mailt szeretne küldeni, a MAIL FROM: kulcsszavakkal indul. Ezt követően a feladó e-mail címe érkezik. Ne felejtsd el a címek körül a zárójeleket (például ). Folytatva a példaünket:

MAIL FROM:
250 sender@example.com ... Feladó oké

A címzett

Miután a szerver elfogadta a feladó címét, az ügyfél megadhatja a címzett címét. A művelet parancsja, az RCPT TO: ismét nagyon szuggesztív. Mailt akarok küldeni magamnak :

RCPT TO: recipient@example.com
250 support@lifewireguide.com ... A címzett rendben van (sor kerülni fog)

Az, hogy a szerver sorban áll, csak azt jelenti: helyileg mentheti az e-mailt, és időközönként (pl. 30 percenként) elküldi a többi sorba rendezett levélnek. Ez a viselkedés függ a konfigurációtól, és a kiszolgáló azonnal elküldheti az e-mailt.

Már majdnem kész. Ami még mindig hiányzik, a fontos rész: az aktuális üzenet.

Az üzenet

Most, hogy befejeződött a "boríték", az e-mail üzenetének éppen úgy, ahogyan ez megtörténhet. Ez az "adat" tartalmazza az e-mail testét , valamint a fejléc mezőket .

Az a parancs, hogy elindítsa azt az állapotot, amely a kiszolgálót elfogadja az üzenet DATA . Ezután minden az e-mail üzenet fejléc mezeire, majd a testre, amely mindössze egy nagy szövegtömböt (vagy adatot) tartalmaz. A kiszolgálónak, hogy a bemenet befejeződött, egy vonalon lévő pontot használ (\ r \ n. \ R \ n). Szóval elküldöm az üzenetet:

ADAT
354 Írja be az e-mailt, végül a "." egy sorban önmagában
Üzenet-azonosító:
Dátum: Sun, 17 Aug 1997 18:48:15 +0200
Feladó: Heinz Tschabitscher
Címzett: Heinz Tschabitscher
Tárgy: A Summarize-Proust versenyre

Ki a Swan's World!
.
250 SAA19153 Üzenet elfogadva a szállításhoz

Igen, ez azt jelenti, hogy teljesen más nevet adhat meg, mint amit az e-mail a To: mezőbe ér. Például a " Címzettlista elnyomva" .

Vége

Mostantól annyi e-mailt küldhet, amennyit meg akarja ismételni a lépéseket a MAIL FROM: -tól . . Ha befejezte ezt a műveletet, kiléphet a kiszolgálóról a QUIT paranccsal, és ez az, amit teszünk:

QUIT
221 Viszlát

Hogyan tehetem ezt?

A nem triviális megoldás a telnet a kimenő levelező kiszolgálóhoz (megtalálhatja a címét az e-mail kliens fiókbeállításaiban ) a 25. porton.

A könnyebb az a mód, ha ezt a Java-kisalkalmazást használja, amely megpróbálja utánozni az SMTP protokollt, és a dialóguson keresztül vezet.