首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么SMTP用户代理必须通过邮件服务器发送邮件?

为什么SMTP用户代理必须通过邮件服务器发送邮件?
EN

Stack Overflow用户
提问于 2017-01-24 18:59:15
回答 3查看 2.1K关注 0票数 3

我的网络老师说从Alice到Bob的SMTP消息传递过程经历了这个过程。

(1)用户代理-> (2) Alice的邮件服务器-> (3) Bob的邮件服务器-> (4) Bob的用户代理

假设爱丽丝是她的用户代理(例如雷鸟)。为什么她的邮件要通过邮件服务器?为什么她不能直接向鲍勃的邮件服务器发送信息呢?如果她的用户代理知道鲍勃的地址(bob@gmail.com),难道她的用户代理不能做一些DNS查找来找出gmail.com的IP地址并直接将她的SMTP消息发送到Bob的邮件服务器吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-06-21 14:07:07

如果我们考虑到Bob的邮件服务器无法访问的情况,那么Alice除了将该电子邮件发送到Alice的邮件服务器之外别无选择。

如果Alice将电子邮件存放在它的邮件服务器上,那么Alice的邮件服务器将继续尝试将电子邮件发送到Bob的邮件服务器,直到它可以到达为止。

正如您所提到的,如果我们试图直接将电子邮件发送到Bob的邮件服务器,那么Alice将不得不不断地重复发送该邮件,直到Bob的邮件服务器可以到达,并且作为用户,您不希望这样做。

票数 2
EN

Stack Overflow用户

发布于 2017-10-22 19:34:17

与HTTP不同,SMTP是一种“推送”协议。HTTP客户端从HTTP服务器“提取”数据。另一方面,邮件客户端(在本例中是Alice)使用简单邮件传输协议( SMTP )将电子邮件“推送”到运行SMTP的邮件服务器。然后,邮件服务器将此电子邮件推送到Bob的邮件服务器。

现在,当Bob想检查他的电子邮件时,他不使用SMTP,而是使用另一种协议,如IMAP/POP来获取他的新邮件并显示在他的用户代理上。

如果Alice要直接向Bob发送电子邮件,Bob的用户代理就必须始终处于打开状态(就像服务器一样)。但是,由于Bob只是另一个可以关闭的客户端,如果Bob的用户代理关闭,Alice的电子邮件将无法联系到Bob。因此,邮件服务器会将Alice的电子邮件存储到Bob,并且当Bob的用户代理打开时,它可以检索新的电子邮件。因此,需要通过邮件服务器发送邮件。

票数 2
EN

Stack Overflow用户

发布于 2017-01-24 20:33:49

电子邮件传输是,通常是简单的。“特例”的数量可能是巨大的

  1. 通过本地邮件/SMTP服务器发送使用户/邮件代理更简单。它降低了“特殊情况”的机会,然后才把电子邮件传递的责任。它有助于避免“不稳定”的行为。
  2. 在垃圾邮件时代,直接发送到收件人的邮件服务器是更加复杂的和风险更高的

一些服务器在没有任何通知的情况下删除“分类为垃圾邮件”的消息。如果没有它,当SMTP会话中的初始直接传递失败时,我可能推荐使用本地邮件服务器作为秋回传递路由的“高级用户”。

如果您有固定的IP地址而没有阻止传出SMTP连接,则可以设置您自己的邮件/SMTP服务器。这使得复杂的邮件代理的市场规模更小。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41836876

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档