我见过(并且认为我理解)DMARC 检查在 SPF 上失败的情况,例如电子邮件已被转发等。但我不认为这里的情况是这样的。MXtoolbox 等网站上的所有检查都通过了,但我偶尔会收到这样的失败报告(我们的网络托管商是 SiteGround):
<record>
<row>
<source_ip>185.56.87.12</source_ip>
<count>1</count>
<policy_evaluated>
<disposition>none</disposition>
<dkim>pass</dkim>
<spf>fail</spf> <---- Note failure here
</policy_evaluated>
</row>
<identifiers>
<header_from>domain.com</header_from>
</identifiers>
<auth_results>
<dkim>
<domain>domain.com</domain>
<result>pass</result>
<selector>default</selector>
</dkim>
<spf>
<domain>uk53.siteground.eu</domain>
<result>pass</result>
</spf>
</auth_results>
</record>
<record>
源 IP 属于 SiteGround(经 whois 确认),因此这似乎不是电子邮件转发的情况。在 MXtoolbox 上检查时,您可以看到我们的 SPF 记录包括 _spf.mailspamprotection.com:
其中又包括 185.56.87.0/24:
所以我不明白为什么它说 SPF 失败了。有人能给我解释一下吗?
答案1
DMARC 报告中“policy_evaluated”下的 SPF“失败”表示 DMARC 域(来自“From”标头)和 SPF 域(来自“Return-Path”标头)不匹配。
您的电子邮件的“发件人”标头可能类似于,但“返回路径”标头类似于。要通过 DMARC-SPF 检查,“发件人”标头中的域和“返回路径”标头中的域都必须匹配。From: <[email protected]>
Return-Path: <[email protected]>
另一种可能性是“Return-Path”为空,提示接收服务器使用 SMTP 对话的 HELO/EHLO 部分的域。空的返回路径通常出现在退回邮件和其他自动回复中。