DMARC 记录检查器

DMARC 是位于 _dmarc.yourdomain.com 的 TXT 记录,用于告诉邮箱服务商如何处理未能通过 SPF 或 DKIM 验证的邮件。策略设置错误可能拦截合法邮件;完全缺失该记录则会使域名极易遭受仿冒攻击。该工具会查询这条记录,并以可读表格呈现每个标签,方便你自行核对策略。

如何检查 DMARC 记录

  1. 1

    输入域名

    输入根域名(例如 `example.com`)。该工具将查询 `_dmarc.example.com` 以获取 TXT 记录。

  2. 2

    逐个标签查看

    记录中的每个 DMARC 标签(v、p、sp、adkim、aspf、pct、rua、ruf、fo)都会连同其取值一起显示。

  3. 3

    核对策略

    查看 `p` 标签,确认策略为 `none`、`quarantine` 或 `reject`,并将 `pct`、`rua` 及对齐标签与下方建议进行对照。

  4. 4

    验证你的记录

    将原始记录与你的 DNS 服务商发布的内容进行比对,确认策略与你的预期完全一致。

DMARC 标签一览

标签 含义 典型值
v 版本,始终为 DMARC1 v=DMARC1
p 针对验证失败邮件的策略 nonequarantinereject
sp 针对子域名的策略 默认继承 p 的值
pct 该策略适用的邮件百分比 1–100,默认值为 100
adkim DKIM 对齐模式 r(宽松)或 s(严格)
aspf SPF 对齐模式 r(宽松)或 s(严格)
rua 汇总报告接收地址 mailto:dmarc@...
ruf 取证报告接收地址 mailto:forensic@...
fo 取证报告选项 01ds
ri 报告发送间隔(秒) 默认值为 86400(一天)

部署路径

分三个阶段上线,而非一次性跳过:

  1. 先用 p=none 并配置 rua。持续收集 4 至 6 周的报告,找出未通过 SPF/DKIM 对齐验证的合法发件人。
  2. p=quarantine; pct=25。分几周逐步收紧:25%、50%、75%、100%。
  3. p=reject。全面强制执行。伪造邮件将在接收方 MTA 处被拒收。

切勿在没有报告的情况下直接从 p=reject 开始:否则你只能等到工单涌入客服时,才知道自己误拦了哪些合法发件人。

常见的 DMARC 配置错误

  • 缺少 rua 你设置了策略,却无从得知它究竟拦截了哪些邮件。
  • p=reject 却将 pct 设为低于 100。 在语义上并不合理;把拒收与部分应用混在一起会让接收方产生困惑。
  • 结尾多出一个分号,或缺少 v=DMARC1 语法错误会使该记录无法被解析器识别。
  • 报告地址位于其他域名,但目标域名上没有相应的 _report._dmarc 授权记录。
  • 同一域名下存在多条 DMARC 记录。 只允许一条;接收方会将重复记录视为错误,并回退到默认的 p=none

解读报告

汇总报告是每天发送到你 rua 地址的 XML 文件。MxToolbox、Postmark、Valimail 和 Dmarcian 等工具会将它们解析成可视化仪表板。取证报告(ruf)是针对单封邮件的副本,有助于调试特定的失败情况,但出于隐私考虑,许多互联网服务提供商已将其禁用。

常见问题

SPF规定了哪些服务器可为您的域名发送邮件; DKIM 对出站邮件进行加密签名。 DMARC 将两者结合:它向收件人说明当SPF和 DKIM 均失效时应采取的措施,并提供报告机制。现代邮件送达服务需要同时具备这三项功能。

DMARC 只保护信封域名,而不保护显示名称。发送“Example Corp attacker@gmail.com”的攻击者并未冒用你的域名,只是盗用了你的品牌名称。显示名称伪造由接收端的其他过滤机制拦截,而非 DMARC。

可以,但请务必覆盖所有发件来源:营销平台、事务性邮件发送方、客服系统以及日历邀请。每个来源都需要通过 SPF 或 DKIM 完成对齐,DMARC 才能通过。

该查询属于公开的DNS请求,并会短暂缓存以减轻服务器负载。域名不会长期存储,且查询中不附加任何用户标识信息。

相关工具

此工具还提供其他语言版本