DMARC 配 p=quarantine 和 p=reject 到底有什么区别?国内邮箱支持 quarantine 吗?应该选哪个?
按 RFC 7489:
• p=quarantine:SPF/DKIM 认证失败 → 邮件放入垃圾箱/隔离区。
• p=reject:SPF/DKIM 认证失败 → SMTP 阶段直接退信(5xx),邮件根本不会进入收件方系统。
Gmail / Google Workspace:p=reject → 返回 550 5.7.1 Unauthenticated email;p=quarantine → 放入垃圾邮件文件夹。两者差异明显,reject 更严格。
Outlook.com / Exchange Online:p=reject → 返回 550 5.7.520 退信;p=quarantine → 放入垃圾邮件文件夹。
国内主流邮箱(QQ / 163 / 昆仑邮件系统):
• p=quarantine:大部分国内邮箱不完全支持——认证失败邮件可能仍放入收件箱(而非垃圾箱),视具体反垃圾策略而定。
• p=reject:国内邮箱基本不支持严格的 reject,即使 p=reject,认证失败的邮件也可能被放入收件箱或垃圾箱,而非真的在 SMTP 阶段退回。
→ 结论:国内邮件生态下,p=reject 和 p=quarantine 差异不大,大部分收件方以自己的反垃圾策略为准。
海外渠道为主(外企、外贸):直接上 p=reject,Gmail/Outlook 严格遵循 reject。
国内渠道为主(本地企业、政府客户):
• 升级计划 p=none → p=quarantine → p=reject。
• p=quarantine 已经够用,国内收件方对 p=reject 执行不严格。
• 关键的“误判检测”期放在 p=none 阶段,结合 rua= 上报检查哪些合法邮件未过认证。
RFC 7489 §6.6 (Policy Handling) · RFC 7489 §8 (Reporting) · IETF DMARC in Chinese email context
