什么是 spf 记录中的减号

What is minus a in a spf record

我有一个客户有一个我不明白的 spf 记录。 记录是这样的:

"v=spf1 a:domain.tld -a:gmail.com -a:googlemail.com -ip4:xx1.yy1.zz1.xx -ip4:xx2.yy2.zz2.xx include:spf.mandrillapp.com include:servers.mcsv.net ?all"

我已将 ip 更改为 x y 和 z,但它是真实的 ip,我的域也是真实的而不是 domain.tld。

-a: 和 -ip4: 中的减号有什么作用?它有功能还是设置错误? 我想清理 - 我可以删除它们吗?他们使用 mailchimp,所以我只保留 2 个包含项。

RFC 的相关位是 4.6.2 and 5.3。大致

  • -表示'fail',即拒绝任何符合此规则的发件人
  • a: 表示 'all IP addresses that this hostname resolves to'

因此,该规则的目的似乎是防止任何人使用 gmail 从该域发送电子邮件,大概是因为他们曾经使用 Google G-Suite 发送电子邮件,但后来停止了。

不过我认为这行不通:Google's SPF configuration 比这更复杂,它使用 'include:' 来获取由 Google 指定的地址列表。如果他们所有的邮件服务器也托管 gmail 网络应用程序,我会感到惊讶。所以我的猜测是这实际上并没有按原样工作,因此可以安全地删除。

同上 -ipv4 表示不允许此 IP 地址为您客户的域发送电子邮件。很有可能也可以,但是您应该验证 IP 地址代表什么,例如从 WHOIS 查询开始,看看它注册给谁(或哪个 ISP)。