網頁寄存知識課程

電郵伺服器是如何工作 (How Mail Server Works)

第 3 課 : 電郵收發詳細過程 (How Email Works)


現在, 我們藉以下一個例子, 探討電郵收發的詳細過程.

電郵收發例子:
William 首先使用 Netscape Mail 寄一封電郵給我們, 我們的電郵地址是: general@MyGreatName.com. 然後我們會用 Netscape Mail 收取信箱的電郵.

William 電腦的 Netscape Mail 電郵客戶端程式設定如下:

姓 名 : william
電 郵 : william@YourDomain.com
SMTP 伺 服 器 : smtp.Your_ISP.com
SMTP 伺 服 器 User Name : william123
POP3 伺 服 器 : pop3.YourDomain.com
User Name : william
Password : 1234

William 要外送電郵給我們的內容:

Alex,
I like to sign up your service. Your service is great!
William

我們電腦的電郵客戶端程式設定如下:

姓 名 : Alex
電 郵 : general@MyGreatName.com
SMTP 伺 服 器 : smtp.MyGreatName.com
POP3 伺 服 器 : MyGreatName.com
POP3 伺 服 器 User Name : general
Password : 9999

以下是整個電郵的收發程序的簡圖 :

how email send and receive diagram

我們首先討論外送電郵的程序.

外送電郵

當 William 寫完以上的電郵, 按了 'Send Mail' 按鈕, 電郵便開始踏上征途:

  1. William 電腦的 Netscape Mail 電郵客戶端程式立即跑去並接通設定的 SMTP 伺服器 (即 smtp.Your_ISP.com) 的連接埠 25 (Port 25).
  2. Netscape Mail 通知 smtp.Your_ISP.com 伺服器寄信人及收信人的資料.
  3. smtp.Your_ISP.com 伺服器確認寄信人的資料正確, 便將信件接收, 並放在'等候外寄郵件'的隊伍的最後, 等候寄出.
  4. 假設正在 smtp.Your_ISP.com 伺服器等候外寄的郵件有 100封, 所以 William 要寄給我們的電郵要放在第 101 的位置等候寄出.
  5. smtp.Your_ISP.com 伺服器非常忙碌的將郵件寄出. 100, 99, 98, 97 ......5, 4, 3, 2, 1. Okay! 到你啦 !
  6. smtp.Your_ISP.com 伺服器現正處理 William 的電郵, 伺服器首先將電郵收信人的地址 (general@MyGreatName.com) 分為二部份, 如下:

    收信人的戶口名稱 - 即 general
    收信人的網域名稱 - 即 MyGreatName.com

  7. 因為網域名稱 (MyGreatName.com) 是人類才看得懂的 .電腦必須要 MyGreatName.com 的 SMTP 伺服器 (smtp.MyGreatName.com) 的 IP 地址才可以溝通的. 要得到 smtp.MyGreatName.com 的 IP 地址, smtp.Your_ISP.com 伺服器必須首先聯絡網域名稱伺服器 (Domain Name Server), 查詢smtp.MyGreatName.com 伺服器的 IP 地址.
  8. Domain Name Server 回覆了 smtp.MyGreatName.com 伺服器的 IP 地址給 smtp.Your_ISP.com 伺服器.
  9. smtp.Your_ISP.com 伺服器現在有了 smtp.MyGreatName.com 的伺服器的 IP 地址, 便可以接通 smtp.MyGreatName.com 的連接埠 25, 並通知 smtp.MyGreatName.com 伺服器有信要寄給它.
  10. smtp.MyGreatName.com 伺服器確認電郵戶口名稱 general 是在 MyGreatName 的一個電郵戶口, 便將電郵交去 MyGreatName.com 的 POP3 伺服器.
  11. MyGreatName.com POP3 伺服器開啟 general 的電郵戶口 (general.txt), 將電郵的內容加入 general.txt 內. general.txt 的最後幾行內容將會如下:

    -------------------------
    -------------------------
    -------------------------
    From : xxxxxx
    To : general
    Subject : The 20th Email
    Alex,
    xxxxxxxxxxxxxxxxxx,
    xxxxxxxxxxxxxxxxxx.
    Customer
    From : William
    To : general
    Subject : Sign Up
    Alex,
    I like to sign up your service.
    Your service is great!
    William

到此, William 寄給我們的電郵已經安全到達我們的電郵信箱了. 外送電郵的程序亦告一段落.

跟著, 我們會討論內收電郵的程序.

內 收 電 郵

  1. 我們定時會檢查我們的信箱有沒有新的電郵. 現在 Alex 按下 Netscape Mail 的 'Receive Mail' 按鈕.
  2. Netscape Mail 電郵客戶端程式立即跑去並接通設定的 POP3 伺服器(即 MyGreatName.com) 的連接埠 110 (Port 110).
  3. MyGreatName.com POP3 伺服器要求客戶輸入戶口名稱及密碼, 如果正確的話, POP3 伺服器便會開啟 general.txt 文字檔案, 並將所有新的電郵下傳到 Alex 的個人電腦內. general.txt 的內容亦會清除 (當然, 也可以設定保留所有電郵在 general.txt 內)

到此, 整個電郵的收發程序已經完成了!

電郵伺服器是如何工作 (完)

網頁寄存知識