定义
SPF、DKIM 和 DMARC 是三种基于 DNS 的电子邮件认证标准。SPF 列出哪些服务器可以代表某个域名发信,DKIM 对邮件进行加密签名,DMARC 则告诉收件方当邮件未通过验证时该如何处理,并回传报告。
SPF(Sender Policy Framework,RFC 7208)是一条 DNS TXT 记录,列出允许使用信封发件人域名发送邮件的 IP 地址和服务。收件方会据此检查连接过来的服务器。SPF 最多允许 10 次 DNS 查询,当添加了许多服务商时,这个上限常常被突破。
DKIM(DomainKeys Identified Mail,RFC 6376)为每封邮件的邮件头添加数字签名。收件方用以选择器(selector)发布在 DNS 中的公钥来验证签名。Gmail 要求密钥至少 1,024 位,并建议使用 2,048 位。
DMARC 建立在两者之上。域名发布一项策略(p=none、quarantine 或 reject)和报告地址。当 SPF 或 DKIM 针对与可见 From 域名对齐的域名验证通过时,邮件即通过 DMARC。DMARC 最初是 RFC 7489,该文档已于 2026 年 5 月被新的标准跟踪规范 RFC 9989 取代。
Gmail 要求批量发件人配置 SPF、DKIM 和 DMARC。推行 DMARC 时,先从 p=none 开始,通过阅读报告找出所有合法发件方(CRM、客服系统、消息平台),修复它们的 SPF 和 DKIM,再升级到 quarantine 和 reject。
示例
_dmarc.example.com TXT "v=DMARC1; p=quarantine; rua=mailto:dmarc@example.com"