当前位置:  开发笔记 > 编程语言 > 正文

发送电子邮件涉及哪些协议和服务器,步骤是什么?

如何解决《发送电子邮件涉及哪些协议和服务器,步骤是什么?》经验,为你挑选了2个好方法。

在过去的几周里,我一直在努力了解电子邮件的工作原理.我理解客户端使用POP从服务器接收邮件的过程非常好.我也了解客户端计算机如何使用SMTP来请求SMTP服务器发送消息.但是,我仍然遗漏了一些东西......

我理解它的方式,外发邮件必须进行三次旅行:

    客户端(使用Thunderbird的gmail用户)到服务器(Gmail)

    第一台服务器(Gmail)到第二台服务器(Hotmail)

    第二个服务器(Hotmail)到第二个客户端(使用OS X Mail的hotmail用户)

据我了解,第一步使用SMTP进行客户端通信.客户端以某种方式(例如,使用USER和PASS)对自身进行身份验证,然后向gmail服务器发送消息.

但是,我不明白gmail服务器如何将邮件传输到hotmail服务器.

对于第三步,我很确定,hotmail服务器使用POP将消息发送到hotmail客户端(再次使用身份验证).

所以,最大的问题是:当我点击发送邮件将我的消息发送到我的gmail服务器时,我的gmail服务器如何将消息转发给hotmail服务器,以便我的朋友可以收到它?

非常感谢!

〜贾森


谢谢,到目前为止,这是有帮助的.

据我了解,第一个客户端使用SMTP将消息发送到第一个服务器,通常是在端口25(通常)上的地址,如smtp.mail.SOMESERVER.com.

然后,SOMESERVER再次使用SMTP将消息发送到端口25上的RECEIVESERVER.com(不是smtp.mail.RECEIVESERVER.com或任何花哨的东西).

然后,当收件人向RECEIVESERVER请求邮件时,使用POP,他/她收到消息......对吗?

再次感谢(特别是对于dr-jan),

贾森



1> dr-jan..:

Gmail上的SMTP服务器(接受来自Thunderbird的邮件)会将邮件路由到最终收件人.

它通过使用DNS查找目标电子邮件地址的域名部分(本例中为hotmail.com)的MX(邮件交换器)记录来完成此操作.DNS服务器将返回应将消息发送到的IP地址.希望目的地IP地址的服务器运行SMTP(在标准端口25上),以便它可以接收传入的消息.

一旦hotmail服务器收到消息,它就会被存储,直到相应的用户登录并使用POP(或IMAP)检索他们的消息.

杰森 - 回答你的跟进......

然后,SOMESERVER再次使用SMTP将消息发送到端口25上的RECEIVESERVER.com(不是smtp.mail.RECEIVESERVER.com或任何花哨的东西).

这是正确的 - 要发送到的域名被视为收件人电子邮件地址中"@"之后的所有内容.通常,RECEIVESERVER.com是更具体的别名,比如incoming.RECEIVESERVER.com,(或者,确实是smtp.mail.RECEIVESERVER.com).

您可以使用nslookup查询本地DNS服务器(这适用于Linux和Windows cmd窗口):

nslookup
> set type=mx
> stackoverflow.com
Server:         158.155.25.16
Address:        158.155.25.16#53

Non-authoritative answer:
stackoverflow.com       mail exchanger = 10 aspmx.l.google.com.
stackoverflow.com       mail exchanger = 20 alt1.aspmx.l.google.com.
stackoverflow.com       mail exchanger = 30 alt2.aspmx.l.google.com.
stackoverflow.com       mail exchanger = 40 aspmx2.googlemail.com.
stackoverflow.com       mail exchanger = 50 aspmx3.googlemail.com.

Authoritative answers can be found from:
aspmx.l.google.com      internet address = 64.233.183.114
aspmx.l.google.com      internet address = 64.233.183.27
>                  

这向我们显示,应该将stackoverflow.com上任何人的电子邮件发送到上面显示的其中一个gmail服务器.

提到的维基百科文章(http://en.wikipedia.org/wiki/Mx_record)讨论了上面显示的优先级数字(10,20,...,50).



2> Ross..:

您正在寻找邮件传输代理,维基百科有一篇关于该主题的好文章.

在因特网消息处理服务(MHS)中,消息传送代理或邮件传送代理(MTA)或邮件中继是使用客户端 - 服务器应用程序体系结构将电子邮件消息从一台计算机传送到另一台计算机的软件.MTA实现简单邮件传输协议的客户端(发送)和服务器(接收)部分.

术语邮件服务器,邮件交换器和MX主机也可以指执行MTA功能的计算机.域名系统(DNS)将邮件服务器与具有邮件交换器(MX)资源记录的域相关联,邮件交换器(MX)资源记录包含提供MTA服务的主机的域名.

推荐阅读
惬听风吟jyy_802
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有