我試圖詳細了解電子郵件是如何運作的。我發現了一個不錯的網站(DNS 中的 MX 記錄透過範例設定進行說明)描述主題。不幸的是我有一些困惑。以下是該網站關於發送電子郵件的說明:
一旦您的 SMTP 伺服器使用 MX 記錄查找找到目標接收方 SMTP 伺服器,它就會將郵件轉送到該伺服器(透過網際網路)。然後SMTP伺服器將郵件轉送到負責該網域的POP或IMAP伺服器...
假設我想從 發送電子郵件[email protected]
至[email protected]
。根據上面的陳述,我MUA
(mutt
在我的例子中)將訊息傳送到我的 SMTP 伺服器(即 )。smtp.mail.yahoo.com)
然後smtp.mail.yahoo.com
使用 DNS 查找來取得gmail.com
網域的 MX 記錄。另一端的位址gmail SMTP serer ( )的內容是: 。gmail.com
gmail-smtp-in.l.google.com
173.194.77.26
smtp.gmail.com
173.194.77.108
- 上面的兩個地址不應該是相同的嗎(正如我從引用的摘錄中理解的那樣)?為什麼 MX 會尋找返回不同機器的參考
smtp.gmail.com
? - 這是否意味著將
smtp.mail.yahoo.com
訊息轉發至gmail-smtp-in.l.google.com
?smtp.gmail.com
- 郵箱帳戶託管在哪裡
marry
?在gmail-smtp-in.l.google.com
,smtp.gmail.com
或者也許是imap.gmail.com
瑟爾?
答案1
提供者的傳入和傳出 SMTP 可能由不同的伺服器處理。
傳入 SMTP(或通常稱為 MX)為網域使用者處理傳入郵件。這些伺服器將配置為僅接受發送至其自己網域(例如 gmail.com)的郵件。
傳出 SMTP 為嘗試向世界其他地方發送電子郵件的網域使用者處理郵件。這些伺服器將被配置為允許郵件發送到任何地方,但前提是郵件是由它們自己的客戶發送的。通常,這是透過基於 IP 位址或 SMTP AUTH(使用者名稱和密碼)的防火牆來強制執行的。
如果您從 yahoo.com 向 google.com 發送郵件,smtp.gmail.com 將不執行任何操作。但是,如果您從 google.com 向 yahoo.com 發送郵件,則 smtp.google.com 伺服器將接受來自 MUA 的郵件並將其傳送至 yahoo.com 的 MX 伺服器。
對於你的最後一個問題,結婚郵箱可能會託管在谷歌雲端中遙遠的某個伺服器上。當前端(處理 imap.google.com 的伺服器之一)收到從結婚郵箱提供文件的請求時,它將查找對郵箱的引用(在某些資料庫中)並從遠端機器。
考慮龐大的郵件設定(如 yahoo.com 和 gmail.com)可能不是開始理解郵件的最佳方式。嘗試了解您的 ISP 將如何處理它。