问题描述
电子邮件中收到的标题基本上是电子邮件被传递到目的地的电子邮件服务器的地址。最后收到的标头是来自域的电子邮件的原始地址。
因此,如果我从域“example.com”接收邮件,则原始接收标头应该是“example.com”域的外发 SMTP 服务器地址。 有什么方法可以验证电子邮件标题中的地址与域的预期地址吗?
根据我阅读博客的理解,MX 记录仅用于接收电子邮件,而不用于发送电子邮件。是否有类似于 MX 记录但仅适用于出站/出站邮件的内容?
如果我哪里错了,请纠正我。 谢谢。
解决方法
您是对的,只有域的入站邮件服务器存储在 MX (mail exchange) DNS records 中。域的出站服务器存储在 SPF (sender permitted from / sender policy framework) DNS 记录中。这些说明哪些机器可以为给定域发送电子邮件。
(这对于外包您的电子邮件发送很重要,例如,Gmail 的服务器被视为 example.com 的有效发件人。)
您可以查询域的txt记录,例如,使用dig
:
$ dig -t txt stackoverflow.com | grep spf
stackoverflow.com. 203 IN TXT "v=spf1 ip4:198.252.206.0/24 include:_spf1.stackoverflow.com ~all"
在这里您可以看到 198.252.206.0/24 CIDR 范围内的计算机可以为 @stackoverflow.com 地址发送电子邮件。