邮件送达率与 DNS

DMARC 报告:分析发送源与认证错误

作者:Alexey Bulygin
包含源 IP、认证结果和处理方式的 DMARC 报告

DMARC 报告显示观察到的域名发送来源、SPF 和 DKIM 认证及对齐结果,以及接收方报告的处理方式。它们有助于发现可能的伪造和服务配置错误,但数据只来自提供报告的接收方,不能证明发送源清单完整,也不能单独证明执行限制没有风险。

许多团队发布 DMARC,把 rua= 指向邮箱,却不查看 XML,配置错误因此可能长期存在。基础配置可先参考小企业邮箱创建自有域名邮箱。之后把报告作为发送系统清单的补充,而不是全部邮件流量的完整记录。

收集报告,识别合法发送源,修复认证与对齐。即使 DKIM 成功,也应检查转发路径后再判断是否正常。根据充分的数据与测试逐步调整策略。

DMARC 报告是什么

参与报告的接收方在验证使用你的发件人域名的邮件后,发送 DMARC 报告。它们包含认证结果、对齐信息、源 IP 和策略处理,有助于安全与投递诊断,但不能覆盖全部接收方。

主要有两类报告。

汇总报告通过 rua 标签请求,通常以 XML 摘要发送。它们按接收方、源 IP、认证结果和处理方式归组,帮助调查 Google Workspace、Microsoft 365、SendGrid、Mailchimp、应用服务器和未知来源。

失败报告通过 ruf 请求,可能提供认证失败的单封邮件信息。触发条件取决于配置,并非只针对最终 DMARC 失败。由于隐私等原因,支持程度有限。应将其作为补充信号,而不是整个流程的基础。

运维中,报告帮助回答:

  1. 哪些来源被观察到使用我的域名发送?
  2. 它们的 SPF 或 DKIM 是否成功且对齐?
  3. 接收方对哪些邮件采取隔离或拒收?
  4. 改为 p=quarantinep=reject 时,哪些合法流程可能受影响?

如何请求 DMARC 报告

_dmarc.yourdomain.com 发布 TXT,指定策略及汇总或失败报告地址。参与的接收方可向这些地址发送数据。使用外部报告域名时,可能还需要通过 DNS 授权。

下面是带可选严格对齐设置的监测示例:

_dmarc.example.com. 3600 IN TXT "v=DMARC1; p=none; rua=mailto:dmarc@example.com; adkim=s; aspf=s; pct=100"

它请求仅监测、不因 DMARC 执行限制,并把汇总报告发到 dmarc@example.comadkim=saspf=s 要求对应域名完全一致。这些严格设置是可选的,默认是按组织域名进行宽松对齐。应根据实际发送系统选择。

重要标签包括:

  • v=DMARC1:必需的版本标签。
  • p=:DMARC 失败时请求的处理方式。
  • rua=:汇总报告地址。
  • ruf=:接收支持的失败报告的地址。
  • pct=:请求执行策略的 DMARC 失败邮件比例,接收方可能采用不同处理。
  • adkimaspf:DKIM 与 SPF 对齐模式。

报告格式与策略逻辑见 RFC 7489。原始报告通常是压缩的 XML 附件,需要整理后才能方便阅读。

汇总 DMARC 报告包含哪些字段

报告列出报告组织、源 IP、邮件数量、认证与处理。要区分原始认证和 DMARC 评估:auth_results 包含 SPF、DKIM 验证结果,policy_evaluated 则反映它们结合对齐后的 DMARC 评估。

报告通常包含:

  • 生成报告的接收方,例如 Google 或 Microsoft。
  • 观察的日期范围。
  • 发送邮件的源 IP。
  • 观察到该来源的邮件数量。
  • SPF 验证结果。
  • DKIM 验证结果。
  • SPF 与可见 From 域名对齐后的评估。
  • DKIM 与可见 From 域名对齐后的评估。
  • DMARC 处理:none、quarantine 或 reject。

并非每次 SPF 失败都是基础配置问题。转发改变发送 IP,可能让 SPF 失败;DKIM 成功且对齐时,DMARC 仍通过。

接收方:gmail.com
源 IP:198.51.100.24
数量:842
邮件头 From:example.com
SPF:fail
DKIM:pass
DMARC:pass
处理:none

这可能是正常转发的结果,但仍应确认来源和真实路径。认证成功不能证明邮件内容安全或发送意图合法。

接收方:outlook.com
源 IP:203.0.113.77
数量:314
邮件头 From:example.com
SPF:fail
DKIM:fail
DMARC:fail
处理:quarantine

这种情况需要调查:可能是发送源配置错误、新服务未完成认证、转发修改了邮件,或有人伪造域名。结果本身不能唯一确定原因。

汇总报告与失败报告的区别

汇总报告较广泛地呈现参与接收方观察到的流量,失败报告则可能包含单封邮件详情。汇总数据通常是主要依据,但不能单独证明更改策略没有风险。

报告类型请求标签内容用途2025-2026 年的实际情况
汇总rua=mailto:...通常按天汇总来源、认证与处理的 XML发送源清单、对齐修复、策略推进重要但不完整的数据集
失败 / 取证ruf=mailto:...单封失败信息,可能部分删减或脱敏调查具体失败或滥用支持有限,部分接收方很少发送或不发送

选择能够清楚解释差别的工具。报告的价值在于能够据此执行具体检查和改进。

如何高效阅读 DMARC 报告

先识别高流量来源并对应业务系统,优先修复主要发送源,同时不要在执行限制前遗漏低频但关键的流程。

可采用以下步骤:

  1. 从汇总报告中流量最大的来源开始。
  2. 把来源对应到 Google Workspace、Microsoft 365、营销平台、应用、客服系统或未知来源。
  3. 检查是否有成功且与可见 From 对齐的 SPF 或 DKIM。
  4. 更改策略前修复合法来源的失败。
  5. 调查未知来源,不要把共享中继或转发直接认定为滥用。

先处理主要发送源有助于推进工作,但邮件量低不代表业务价值低,仍需专门测试不常发生的邮件。

报告结果可能原因下一步
SPF pass、DKIM pass、DMARC pass认证与对齐成功记录来源,并另行确认合法性
SPF fail、DKIM pass、DMARC pass转发或 SPF 路径问题持续检查 DKIM 对齐和签名保留
SPF pass、DKIM fail、DMARC passSPF 对齐但 DKIM 有问题修复 DKIM,特别是用于转发的邮件
SPF fail、DKIM fail、DMARC fail伪造、服务配置错误或邮件修改调查来源与发送路径
未知 IP 且有明显流量未登记服务、共享中继、转发或滥用确定来源后再考虑阻止措施

常见修复包括:

  • 添加合法发送源所需的 SPF include。
  • 在实际外发服务商启用 DKIM。
  • 设置自定义 Return-Path,使 SPF 对齐。
  • 按需把服务迁移到独立子域名。
  • 调查并修复转发,而不是只依赖 SPF。

命令行查询可补充检查,但不能代替真实邮件验证:

dig TXT _dmarc.example.com +short
dig TXT example.com +short
dig TXT selector1._domainkey.example.com +short

DNS 问题可参考 TrekMail 的必需 DNS 记录垃圾邮件排查

DMARC 报告常揭示的问题

报告可能暴露未完成的服务认证、错误对齐、转发修改,以及配置后无人分析的情况,有助于发现运维缺口。

团队添加新工具,以自己的域名发送,却未完成 SPF 或 DKIM。未知 IP 可能指向这一问题,但要先确认它与实际服务的关系。

SPF 可能为信封域名通过,但因缺少对齐且没有成功对齐的 DKIM,DMARC 仍失败。未配置合适自定义退信域名的营销或工单系统可能出现这种情况。

只依赖 SPF 对转发不够稳妥。缺少成功且对齐的 DKIM 时,DMARC 可能失败。应阅读邮件转发设置与修复,并测试真实路径。

发布 p=none 却无人分析报告,难以获得运维收益。收集数据本身不会修复错误。

过早启用 p=reject 可能影响合法业务。识别发送源,测试关键及低频路径,并准备故障响应计划。

TrekMail 能帮助哪些环节

报告需要具体行动才有价值。TrekMail 可帮助集中管理域名、DNS 与发送配置,但外部来源和对齐仍需核查。

多个主机服务、单独 SMTP 和共享报告邮箱增加协调工作,尤其在新增发送源时。

TrekMail 的统一面板可以结合多域名邮箱托管、DNS 检查、自备或托管 SMTP、邮箱操作、转发与迁移,具体工具取决于套餐和设置。客户域名运维可参考多域名邮件托管

TrekMail 根据套餐提供自有域名、IMAP 邮箱、Catch-all、邮箱转发、服务器端 IMAP 迁移、API 和 DNS 检查。Nano 可按自备 SMTP文档配置,适用付费套餐提供托管 SMTP。Starter 的参考价格为每月 $3.50 起,Nano 则作为无需信用卡的免费方案提供。付费套餐可能有 14 天试用并要求信用卡。请核实当前条件。

报告本身不会自动修复配置。统一面板可能减少部分人工操作,但不能省略原因调查。

何时从 p=none 改为 quarantine 或 reject

报告提供判断依据,并不是完整的安全证明。应结合系统清单和真实测试确认合法来源,未知失败不能未经调查就视为恶意或无关。

下列记录是各阶段的替代选项,不应同时发布:

_dmarc.example.com. 3600 IN TXT "v=DMARC1; p=none; rua=mailto:dmarc@example.com"
_dmarc.example.com. 3600 IN TXT "v=DMARC1; p=quarantine; rua=mailto:dmarc@example.com; pct=25"
_dmarc.example.com. 3600 IN TXT "v=DMARC1; p=reject; rua=mailto:dmarc@example.com; pct=100"

检查多个报告周期,并单独验证低频关键邮件。确认认证成功且对齐,以及转发时签名数据保持不变。各接收方对比例参数的处理不同,最终操作也受本地策略影响。

Google 对发往个人 Gmail 的普通直接发送源要求 SPF 或 DKIM。批量发件人需要 SPF 和 DKIM,以及通过至少一个成功路径满足对齐的 DMARC。接收方要求见Gmail 发件人指南常见问题

结论:把 DMARC 报告纳入日常运维

报告呈现观察到的来源、成功验证与失败。定期结合发送系统清单和真实测试分析,使它们成为具体改进工具,而不是无人打开的审计附件。

域名和服务较多时,一致管理可能有帮助。TrekMail 根据套餐提供固定套餐模式的多域名邮箱、共享存储、IMAP 迁移、自备或托管 SMTP 和认证工具。开始使用的条件、当前价格和功能可在TrekMail 套餐价格查看。

分享这篇文章

我们使用运行和保护 TrekMail 所必需的技术。确认后还会允许《Cookie 政策》中所述的有限分析和广告衡量。

登录 TrekMail

访问您的控制面板、邮箱和 DNS。

12 个字符 两次密码一致

重置邮件已发送

如果该邮箱对应已有账户,我们已发送密码重置说明。

继续即表示您同意 TrekMail 的 服务条款隐私政策.