1. 程式人生 > >電子郵件傳送和接收過程 一一 SMTP、POP3、IMAP

電子郵件傳送和接收過程 一一 SMTP、POP3、IMAP

電子郵件傳送協議主要是SMTP,收件協議主要是POP3和IMAP;

SMTP 的全稱是“Simple Mail Transfer Protocol”,即簡單郵件傳輸協議。它是一組用於從源地址到目的地址傳輸郵件的規範,通過它來控制郵件的中轉方式。SMTP 協議屬於 TCP/IP 協議簇,它幫助每臺計算機在傳送或中轉信件時找到下一個目的地。SMTP 伺服器就是遵循 SMTP 協議的傳送郵件伺服器。 

POP3是Post Office Protocol 3的簡稱,即郵局協議的第3個版本,它規定怎樣將個人計算機連線到Internet的郵件伺服器和下載電子郵件的電子協議。它是因特網電子郵件的第一個離線協議標準,POP3允許使用者從伺服器上把郵件儲存到本地主機(即自己的計算機)上,同時刪除儲存在郵件伺服器上的郵件,而POP3伺服器則是遵循POP3協議的接收郵件伺服器,用來接收電子郵件的。

雖然POP3是用來接收郵件的協議,但不要理解成沒有SMTP一樣能收取郵件,郵件伺服器是通過SMTP來控制郵件的中轉,兩個郵件伺服器之間傳輸工作和POP3一點關係都沒有。

當兩臺不同的伺服器進行訊息通訊時,是SMTP進行握手,A伺服器傳送郵件到B伺服器,B伺服器的SMTP會替本地使用者接受外面發過來的郵件,然後POP3/IMAP去讀取SMTP收取的郵件。

SMTP是郵局,POP3是快遞員,快遞員只會去郵局領取郵件,而不是直接去發件人手上直接拿,兩個地區(郵箱伺服器)郵件收發也是通過郵局(SMTP)來完成

圖示6個步驟進行說明:

  1. ,通過foxmail客戶端寫好一封郵件點擊發送,即提交到了QQ郵箱伺服器,使用的是SMTP協議。
  2. QQ郵箱會對A傳送郵件的收件地址進行解析,判斷是否為內部郵箱的賬號,如果也是qq郵箱,會直接儲存到自己的儲存空間,如果不是則會發送到指定郵箱伺服器,使用的也是SMTP協議。
  3. 163伺服器收到郵件後會再次判斷該郵件是否為自己的郵件,如果是則存到自己的儲存空間,等待POP3服務去讀取郵件
  4. 使用者B收到訊息後,開啟客戶端訪問163伺服器(也可以自己敲命令直接訪問),163伺服器會去呼叫POP3服務
  5. Pop3服務接到指令後,讀取儲存空間中傳送給B的未讀郵件服務。
  6. 將讀取到的郵件返回給客戶端軟體

傳送埠25/587/465的區別:

SMTP服務的標準埠是25,郵件伺服器之間通訊轉發使用的都是25

587埠是客戶端向伺服器提交訊息的推薦埠。

465埠是smtp的加密埠,個人理解:465是伺服器與客戶端之間的加密,25埠是服

務器與伺服器的,是不能呢隨便更改的,否則會收不到別的伺服器傳送的郵件。

瞭解了郵件的傳送和接受之後,下面開始搭建郵件伺服器