发送电子邮件流程

发送电子邮件流程

我想详细了解电子邮件的工作原理。我找到了一个相当不错的网站(DNS 中的 MX 记录说明及示例配置) 描述该主题。不幸的是,我有些困惑。以下是该网站关于发送电子邮件的内容:

一旦您的 SMTP 服务器使用 MX 记录查找找到目标接收方的 SMTP 服务器,它就会将消息转发到该服务器(通过互联网)。然后,SMTP 服务器会将消息转发到负责该域的 POP 或 IMAP 服务器...

假设我想从 发送电子邮件[email protected][email protected]。根据上述陈述,我的MUAmutt在我的情况下)将消息发送到我的 SMTP 服务器(即smtp.mail.yahoo.com)。然后smtp.mail.yahoo.com使用 DNS 查找获取gmail.com域的 MX 记录。当我检查 的 MX 记录时,IP 为:gmail.com。从另一端看,gmail SMTP 服务器( )的地址是: 。这就是混乱之处。gmail-smtp-in.l.google.com173.194.77.26smtp.gmail.com173.194.77.108

  1. 上述两个地址难道不应该相同吗(正如我从引用的摘录中理解的那样)?为什么 MX 查找返回的引用指向不同的机器,而smtp.gmail.comis 则指向不同的机器?
  2. 这是否意味着将smtp.mail.yahoo.com消息转发给gmail-smtp-in.l.google.com?如果是,smtp.gmail.com在此过程中需要做什么?
  3. 邮箱账户托管在哪里marry?在gmail-smtp-in.l.google.comsmtp.gmail.com或者可能是imap.gmail.comserer?

答案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 服务器。

对于您的最后一个问题,marry 邮箱可能托管在 Google 云中的某个远程服务器上。当前端(处理 imap.google.com 的服务器之一)收到从 marry 邮箱提供文件的请求时,它会查找对邮箱的引用(在某个数据库中)并从远程计算机检索信息。

考虑大型邮件设置(如 yahoo.com 和 gmail.com)可能不是开始了解邮件的最佳方式。尝试了解您的 ISP 如何处理它。

相关内容