SMTP iekšpuse

Kā darbojas interneta e-pasts

Vai esat kādreiz prātojies, kas notiek, kad jūs nospiedīsiet pogu Sūtīt savā e-pasta programmā? Iespējams, nē, es domāju - tik ilgi, kamēr tas darbojas. Tas ir tieši iemesls, kāpēc jums vajadzētu brīnīties, lai gan. Ja kaut kas nedarbojas, ir labi zināt, kas nedarbojas. Parasti tas ir puse risinājuma.

Kad jūs sūtiet e-pasta ziņojumu, SMTP sāks darboties. Vienkāršā pasta pārsūtīšanas protokola SMTP ir īss, kā noteikts RFC 5321: vienkāršs pasta pārsūtīšanas protokols. Jūsu pasta klients runā ar SMTP serveri, izmantojot šo tīru un vienkāršu procedūru, lai saņemtu e-pastu no vienas vietas uz otru.

Flirts

Jūsu e-pasta programma kļūst par SMTP klientu , savienojumu ar pasta servera portu 25 (parasti SMTP portu ) un - saka EHLO . Datori, galu galā, ir tikai cilvēki, un tas ir tas, ka vēlas būt pieklājīgs. Faktiski tas nemēģina būt pieklājīgs, bet izmantot vēlākus SMTP papildinājumus, kas ir radījuši divus jaunākās HELO komandas iezīmes (SMTP komandā parasti ir četras rakstzīmes).

Divi HELO aromāti

EHLO, kas ir vēl nesen, serveris reklamē visas papildu funkcijas (piemēram, paziņojumu par piegādes statusu vai iespēju pārvadāt ziņojumus, kas satur ne tikai drošās ASCII rakstzīmes), ko tā atbalsta.

Ne katrs serveris ļaus šo sveicienu, bet ir jāpieņem vienkāršs HELO, kas, protams, pieņem, ka nepastāv papildu funkcijas. Abas labās komandas prasa, lai klients noteiktu savu domēnu pēc ** LO, tomēr. Praksē tas izskatās kā:

220 mail.domain.net ESMTP serveris
SVEIKI
501 HELO pieprasa domēna adresi
HELO localhost
250 mail.domain.net Hello localhost [127.0.0.1], ar prieku satikties ar jums

(Mana ievade ir kursīvā , serveru izlaide ir melna, līnijas, kas sākas ar 5, norāda kļūdu .)

Sūtītājs

Protokola atlikums patiešām pelna atribūtu vienkāršu. Ja vēlaties nosūtīt e-pastu, sākat ar atslēgvārdiem PAĒDIET NO:. Pēc tam tiek parādīta sūtītāja e-pasta adrese , kā to iesaka no. Lai gan (piemēram, ), neaizmirstiet ielīmēt kvadrātiekavas pa adresi. Turpinot mūsu piemēru, mums ir:

Pasta no:
250 sender@example.com ... sūtītājs ok

Saņēmējs

Pēc tam, kad serveris ir pieņēmis sūtītāja adresi, klients var norādīt saņēmēja adresi. Šīs darbības komandu RCPT TO: atkal ir diezgan domīgs. Es gribu nosūtīt vēstuli sev :

RCPT TO: recipient@example.com
250 support@lifewireguide.com ... Labuma guvējs (būs rindā)

Tas, ka serveris būs rindā, nozīmē tikai to: tas lokāli saglabās pastu un nosūtīs to kopā ar visiem pārējiem rindā esošajiem pasta ziņojumiem intervālos (piemēram, ik pēc 30 minūtēm). Šī uzvedība ir atkarīga no konfigurācijas, un serveris var arī piegādāt pastu uzreiz.

Mēs esam gandrīz pabeigti. Tomēr joprojām trūkst svarīgas daļas: faktiskā ziņa.

Ziņa

Tagad, kad "aploksne" ir pabeigta, e-pasta ziņas dati tāpat kā tie var sekot. Šie "dati" sastāv no e-pasta ķermeņa, kā arī ar galvenes laukiem .

Komandu, lai uzsāktu stāvokli, kas serveri pieņem ziņojumu, ir DATA . Pēc tam visi e-pasta ziņojuma galvenie lauki un pēc tam ķermenis, abi veido vienu lielu teksta (vai datu) bloku. Lai informētu serveri, ka ievadne ir pabeigta, tiek izmantots punkts uz līnijas pats (\ r \ n. \ R \ n). Tāpēc es sūtu savu ziņojumu:

DATI
354 Ievadiet pastu, beidzot ar "." uz līnijas pats par sevi
Ziņojuma ID:
Datums: Sestdien, 17 augustā 1997 18:48:15 +0200
No: Heinz Tschabitscher
Uz: Heinz Tschabitscher
Temats: konkursam "Summarize-Proust"

Izslēgts uz Swan's World!
.
250 SAA19153 Ziņojums pieņemts piegādei

Jā, tas nozīmē, ka jūs varat norādīt nosaukumu, kas pilnīgi atšķiras no tā, uz kuru e-pasts tiek nosūtīts laukā Kam :. Piemēram, jūs varat izmantot "Saņemto adresātu sarakstu " .

Beigas

Tagad varat nosūtīt tik daudz e-pasta ziņojumu, cik vēlaties, atkārtoti veicot darbības no MAIL FROM: to . . Ja esat pabeidzis to, jūs varat pamest serveri ar komandu QUIT, un tas ir tieši tas, ko mēs darām:

QUIT
221 Labprātam

Kā es varu to izdarīt?

Vienkāršs risinājums ir pieslēgties pie sava izejošā pasta servera (tā adresi varat atrast e-pasta klienta konta iestatījumos ) 25. ostā.

Vieglāk ir izmantot šo Java sīklietotni , kas mēģina atdarināt SMTP protokolu un palīdz jums caur dialoglodziņu.