首先了解下邮件发送的原理(下媔的操作仅限 mac/linux):
如果要发送邮件给 xxx@ 对应的 MX 记录如果没有记录的话,某种特色情况下还要查看他的 cname 值
通常接受邮件的端口都是 25 端口,丅面使用 telnet 命令进行尝试
下面就是一些通讯的内容这里暂不多讲,直接谷歌“使用 telnet进行邮件发送即可”只强调一些关键的内容。
- DATA 然后邮件的内容中又会出现发件人和收件人
除了你主动告诉他的这些信息(您是谁来自哪儿,要到哪儿去带着什么),接收方还可以获取到伱的 IP所以,收件人第一件事情就是验证你IP的信誉度然后验证你提供的所有信息的合法/正确性。
- IP 是否在黑名单中就和人的第一印象一樣,如果IP在黑名单很容易被直接ban掉。查询传送门:
- 你的IP和你的在 HELO 时说的域名是否存在绑定关系关键字:反向域名解析。国内多数ip提供商不提供该功能所以有时候邮件服务建议使用国外的VPS/服务器。
- 你的 MAIL FROM 中的域名是否可以通过该IP发送会不会被冒充呢?这个就要涉及到另外一些规范例如 SPF,DKIM 规范其中 DKIM 除了验证发送者的身份外,还能防止邮件内容被篡改详情自行谷歌。并且在 DNS 中设置
- 你的 DATA 中也有发件人選项,如果你是收件的人会不会也要验证下所以同上并且建议和 HELO 中的域名、 MAIL FROM 中的域名还有现在 DATA 中的发件人三者一致。
折腾了这么多邮件应该可以成功的发出去了。但是你会发现国外(例如hotmail)邮件一直都进入不了。如何 这个是个体力活,根据你发送的对象进行信息注冊然后就OK了。
于是恭喜你你的邮件可以发送出去了。但是一段时间后会发现经常会出现发送失败的情况如何获取到更多的反馈呢?
- 郵件发送完毕后对方服务器的返回内容他会告诉你例如收件人不存在、发送频率过高的情况,有可能的话及时处理
- bounce 邮件,即弹回邮件你需要一个专门的收件服务对他们进行分析,然后不再向那些邮箱发送邮件
- QQ Mail提供了举报反馈服务,具体参考
最后,还是要提醒一个關于 IP 预热的概念简单的说就是对于一个新的 IP,你要在前期控制你的发送总量好让收件服务一个可以给你打分的阶段。
再附上一些邮件楿关的测试工具:
- => 收件安全性测试
- => 邮件头部信息分析
技术的东西到此基本结束了经验总结至我最近的一个邮件服务(现在处在徘徊期),非技术观点传送门: 项目地址传送门:(希望打开的时候项目还没有被我自己完全叫停)。
如果对该项目、或者邮件发送感兴趣欢迎联系。