背景
要做一个让用户把自己的邮箱收件和发件地址绑定到我们的邮件服务的服务器上的功能,了解了域名dns的相关知识。
MX记录
MX记录将一个域名的电子邮件转到到托管该域名指定的邮件服务器上。可以有多条,按优先级排序,先到优先级高的,无法到达的则选择低一级的继续发送。
TXT记录
主要用户验证域名所有权以及一些安全的验证。主要用到了spf记录和dkim记录。
这两个直接用老大教我的:
“dkim是一个email header,你可以在这个header里放一个域名告诉收件服务器去这里TXT这个key来做校验,如果通过就说明这封邮件的确是从这个域发出的,sf则是一个单独的TXT记录,不需要头,只是我收到一个域的邮件,我就去请求这个域名的TXT,从里面读他的spf记录,然后在这个记录里包含的域名中,解析出来的IP是否和发件IP对应。”
实现遇到的问题
用net-dns库拿不到TXT记录的值,原来是用的gem的分支的bug 。。。。。。。
参考:
https://support.google.com/a/answer/48090?hl=en
https://github.com/bluemonk/net-dns/issues/22