目录
一、Email涉及的SMTP、POP3、IMAP协议
- SMTP管“发”,POP3/IMAP管“收”
当点击“发送邮件”时,你的 mail client 会发消息给邮件服务器上的 SMTP service。这时有两种情况:
如果邮件的收信人也是处于同一个 domain,比如从http://163.com 发送给 163 的邮箱,SMTP service 只需要转给 local 的 POP3 Service 即可
如果邮件收信人是另外的 domain,比如 http://163.com 发送给 http://sina.com, SMTP service 需要通过询问 DNS,找到属于 sina 的 SMTP service 的 host
1.1 SMTP
SMTP (Simple Mail Transfer Protocol) 简易邮件传输通讯协议。SMTP 是互联网上的一种通讯协议,主要功能是用在传送电子邮件,当我们通过电子邮件程序,寄 E-mail 给另外一个人时,必须通过 SMTP 通讯协议,将邮件送到对方的邮件服务器上,等到对方上网的时候,就可以收到你所寄的信。
1.2 POP3
POP3(Post Office Protocol 3)即邮局协议的第 3 个版本,是 TCP/IP 协议族中的一员(默认端口是110)。主要功能是用在传送电子邮件,当我们寄信给另外一个人时,对方当时多半不会在线上,所以邮件服务器必须为收信者保存这封信,直到收信者来检查这封信件。当收信人收信的时候,必须通过 POP 通讯协定,才能取得邮件。
1.3 IMAP
IMAP(Internet Mail Access Protocol),即交互式邮件存取协议,是一个应用层协议(端口是143)。用来从本地邮件客户端(Outlook Express、Foxmail、Mozilla Thunderbird等)访问远程服务器上的邮件。
它是跟 POP3 类似邮件访问标准协议之一。不同的是,开启了 IMAP 后,您在电子邮件客户端收取的邮件仍然保留在服务器上,同时在客户端上的操作都会反馈到服务器上,如:删除邮件,标记已读等,服务器上的邮件也会做相应的动作。所以无论从浏览器登录邮箱或者客户端软件登录邮箱,看到的邮件以及状态都是一致的。
1.4 POP3 与 IMAP 的区别
POP3 协议允许电子邮件客户端下载服务器上的邮件,但是在客户端的操作(如移动邮件、标记已读等),不会反馈到服务器上,比如通过客户端收取了邮箱中的一封邮件并移动到其他文件夹,邮箱服务器上的这些邮件是没有同时被移动的 。
而 IMAP 提供 Webmail 与电子邮件客户端之间的双向通信,客户端的操作都会反馈到服务器上,对邮件进行的操作,服务器上的邮件也会做相应的动作。
同时,IMAP 像 POP3 那样提供了方便的邮件下载服务,让用户能进行离线阅读。IMAP 提供的摘要浏览功能可以让你在阅读完所有的邮件到达时间、主题、发件人、大小等信息后才作出是否下载的决定。此外,IMAP 更好地支持了从多个不同设备中随时访问新邮件。
2. 登录QQ的SMTP服务,在两台主机之间发送一份简单文本邮件
SMTP协议用于系统间的Email传输,在经过上文明白了其中的原理之后,下面动手尝试一个SMTP交互的实例。
常用命令
常见反馈代码
2.1 启动Windows的Telnet Client功能
2.2 开通QQ邮箱的SMTP服务
2.3 用telnet命令,SMTP发送邮件
1:telnet smtp.qq.com 587
2:helo qq.com
3:auth login
4:输入邮箱的 base64 编码(xxxxxxxxxx@qq.com的base64编码)
5:输入开启 IMAP/SMPT 时授权码的 base64 编码