即使您的电子邮件在 SPF 和 DKIM 检查中显示为绿色对勾,仍可能被标记为 DMARC 失败——这种不匹配会导致伪造邮件溜过检查并损害邮件送达率。其原因在于“对齐”(alignment),即强制要求验证邮件的域名必须与 From 标头中显示的地址相匹配的规则。
为什么仅靠 SPF 和 DKIM 是不够的
SPF (Sender Policy Framework) 验证的是 Return-Path 地址,即用于处理退信的信封发件人地址。该地址通常属于邮件服务提供商,而不是您在收件箱中看到的品牌域名。
DKIM (DomainKeys Identified Mail) 验证标头中附加到加密签名上的域名。签名者可以是发件人自己的域名,也可以是第三方服务的域名。
即使这两项检查都通过了,如果 Return-Path 或 DKIM 签名域名都与可见的 From 地址不一致,DMARC (Domain-based Message Authentication, Reporting & Conformance) 仍会报告失败。
四种最常见的对齐失败情况
- 服务商拥有的域名 – 许多群发邮件平台会设置自己的 Return-Path,并使用它们自己的 DKIM 密钥进行签名。如果您从未将这些替换为您自己的域名,DMARC 就会检测到不匹配。
- 邮件转发 – 当下游服务器转发邮件时,SPF 检查通常会失效,因为转发 IP 未列在您的 SPF 记录中。如果 DKIM 签名在传输过程中也被篡改,DMARC 将无从依赖。
- DKIM 失效 – 配置错误的密钥或 DNS 错误可能导致 DKIM 失败。在这种情况下,DMARC 会依赖 SPF,如果 SPF 的 Return-Path 未对齐,您仍然会失败。
- 严格对齐模式 – 设置
aspf=s或adkim=s会告知 DMARC 要求精确的域名匹配,而不仅仅是父子域名关系。即使子域名之间仅有一个点的差异,也会触发失败。
如何发现问题
打开该问题邮件的原始源码,找到 Authentication-Results 标头。它会列出 SPF、DKIM 和 DMARC 检查的结果,以及每次测试所评估的域名。
- 将 smtp.mailfrom(即 Return-Path)与 From 标头中的域名进行比较。
- 将 DKIM-Signature 块中的 header.d 标签与 From 域名进行比较。
如果这两项比较都没有匹配结果,那么“对齐”问题就是罪魁祸首。
让 DMARC 通过的修复方法
- 使用对齐的 Return-Path – 大多数发送平台都允许您发布自定义的退信域名。将该域名指向您控制的 DNS 区域,并将其添加到您的 SPF 记录中。
- 部署对齐的 DKIM 签名 – 将 DKIM 签名中的
d=标签设置为您自己的域名(或您拥有的子域名),并在 DNS 中发布相应的公钥。由于 DKIM 在大多数转发场景下都能保持有效,因此它是实现对齐最可靠的方法。
总结
通过 SPF 和 DKIM 检查仅仅是成功了一半;如果没有域名对齐,DMARC 仍会将您的邮件标记为未经身份验证。请将 Return-Path 或 DKIM 签名域名与可见的 From 地址进行对齐,在原始标头中验证设置,并根据需要调整严格程度。一旦实现了对齐,DMARC 就会报告通过,从而保护您的品牌并提高收件箱到达率。
