19

smtp中的信封和电子邮件之间的确切区别是什么?

为什么协议需要信封?在蜗牛邮件中,信件不需要包含地址并且邮递员看不到(至少这是您想要相信的),因此所有路由都完全基于信封,这对我来说很清楚。

但是在电子邮件中,信件本身是可解析的,并且具有诸如 From: 和 To: 之类的标题。为什么这不足以路由电子邮件?为什么我们需要一个信封?

信封和电子邮件本身之间的分歧是什么意思?这是否一定意味着有人试图玩弄系统,或者在某些情况下(什么情况下?),在他们之间存在差异是合法的。

您的澄清非常受欢迎。

困惑的电子邮件接收者。

4

4 回答 4

29

SMTPRCPT TO:命令中的收件人地址是邮件传输用来确定电子邮件的实际收件人的地址。To: 和 Cc: 标头中的地址供邮件阅读器向用户显示收件人是谁,但邮件传输实际上并未使用它们。

大多数邮件客户端在 SMTPRCPT TO:MAIL FROM:它们在 To:、Cc: 和 From: 标头中插入的命令中设置相同的地址,因此“信封”地址将与标头中的地址相同。

对于大多数合法邮件,信封和标题地址通常是一致的。值得注意的例外是密件抄送:地址和邮件列表。

垃圾邮件发送者经常伪造标题地址以试图避开垃圾邮件过滤器。

于 2009-11-17T17:09:20.397 回答
10

底线是开销太大了。当邮件服务器每天处理数百万条消息时,在 SMTP 会话(信封)期间邮件服务器可以处理单个命令时速度要快得多。

如果您没有使用信封,则必须将整个邮件推送到 SMTP 服务器,然后才能确定该邮件是否需要被拒绝。有些消息非常大(我见过 100+Meg 消息与 GIS 图像一起使用)。

通过使用信封,我们可以对邮件服务器发出特定的 1 行命令,邮件服务器会立即告诉我们是否成功。

于 2009-11-18T14:26:11.613 回答
9

信封由 SMTP 服务器使用,邮件头由邮件阅读器使用,正如其他人所说的那样。

没有说的是,RCPT TO:用于将消息路由到特定用户,而不管用户名出现在标题中的什么位置。用户不一定需要出现在标题中To:甚至Cc:标题中。想一想,Bcc:接收者唯一知道的就是消息来自谁。在这种情况下,To:CC:头应该是空的——因此是密件抄送的部分。在另一种情况下,如果一封电子邮件包含抄送列表中提到的用户以及其他 10 个用户,那么 SMTP 路由如何选择合适的用户。答案是它使用RCPT线路来路由消息。

这也用于通过邮件列表路由时。To: 标头将包含邮件列表电子邮件地址。SMTP 系统将为列表中的每个用户生成单独的消息,每个用户都有一个特定的RCPT TO: user@host...信封。在这种情况下,用户名甚至不会出现在任何其他标题中。

于 2009-11-19T23:14:40.253 回答
1

电子邮件消息与您在邮件中发送的物理信件非常相似。有一个信封,上面有To/From信息,里面有实际的信,有它自己的To/From信息。信息的信封是用于邮件传递的真实信息,对于电子邮件服务器和邮局都是如此。

信封进入邮局时,他们会检查信封上的收件人地址,并将其发送到正确的目的地。邮局工作人员对信封内的信件一无所知。出租内部的收件人/收件人信息可能与信封上的信息完全不同。信封可以说邮件是给 Bob 的,但里面的信可能会说是给 Alice。或者在现实世界中:信封可以说是给SomeCompanyName的,当秘书打开信封时,里面的信说是给在SomeCompanyName工作的布朗先生。

资料来源:电子邮件信封与电子邮件标题

于 2020-11-20T13:48:22.850 回答