检测域名 SPF、DKIM、DMARC 记录是否规范:扫描记录条数、DNS 查询次数、密钥位数与 DMARC 策略,可用发信 IP 实测能否通过 SPF,并一键生成可粘贴到 DNS 的记录。
检测你的域名邮箱身份配置是否完整,并直接生成可粘贴到 DNS 的三条记录
按你的实际发信方式勾选,右边实时生成符合规范的记录。复制后到域名 DNS 面板添加即可,三条记录相互独立,可以分开配。
| 检测项 | 回答的问题 | 常见问题 |
|---|---|---|
| SPF | 哪些服务器有权用你的域名发信 | 多条记录冲突、查询次数超过 10 次、末尾写成 +all、用了已废弃的 ptr |
| DKIM | 邮件内容有没有被中途篡改 | 没配置、公钥只有 1024 位、密钥已吊销(p= 为空)、处于 t=y 测试模式 |
| DMARC | 前两项对不上时怎么处理、报告发给谁 | 没配置、停在 p=none、没填 rua 收不到报告、外部报告地址未授权、pct 不是 100 |
| 基础配置 | 这个域名到底发不发信、有没有记录冲突 | 没有 MX、同一域名有多条 SPF/S 多条 DMARC |
| 发信 IP 评估(选填) | 我现在的服务器 IP 能不能过 SPF | IP 不在授权范围,邮件被判为伪造 |
用一个寄快递的场景来理解:
三者是递进关系:SPF 与 DKIM 负责「证明」,DMARC 负责「裁决」。只配其中一两条,都能被绕开 —— 比如只配 SPF,攻击者改用别的 IP 发信,SPF 失败但没有任何惩罚;只配 DKIM 而不配 DMARC,同样没人执行。
从 2024 年 2 月起,Gmail 与 Yahoo 对邮件身份验证提出了明确要求,随后 Microsoft(Outlook / Hotmail)也跟进:
对做外贸的网站来说,这直接影响的是询盘:网站表单通知、报价单、订单确认、开发信,全都走邮件。配置不全的常见表现是:自己发出去没问题,客户的回复却收不到;或者客服邮箱发的报价单整批进了对方的垃圾箱,双方都以为对方没处理。
| 现象 | 真实原因 | 怎么改 |
|---|---|---|
| 配了 SPF 反而收不到信 | 同一域名下有两条 SPF 记录(换服务商时忘了删旧的),RFC 规定多条一律 permerror | 合并成一条,把两边的 include 串起来,删掉多余记录 |
| SPF 记录看起来没问题但一直失败 | include 层层嵌套,DNS 查询次数超过 10 次上限,直接 permerror | 展开查询明细,把占比最大的 include 换成 ip4: 写死的网段 |
| DMARC 配了却一直收不到报告 | rua 用了外部域名(如 dmarcian、vali.email),但对方没做 _report._dmarc 授权 | 按工具提示的完整记录名补一条 TXT:v=DMARC1 |
| DMARC 显示 p=none,形同虚设 | 只做了监控没有收紧策略,伪造邮件照样进收件箱 | 看 1–2 周报告确认无误后,升到 quarantine,再到 reject |
| DKIM 记录存在但验签总是失败 | 公钥只有 1024 位,或复制时被截断 / 密钥已被吊销(p= 为空) | 重新生成 2048 位密钥;2048 位记录约 400 字符,注意别复制不全 |
| 只有子域名配了记录 | 主域没配,攻击者改用主域伪造;或 sp= 比 p= 更宽松 | 主域也要配 DMARC,sp= 至少与 p= 同级 |
三条记录都是 TXT 类型,只是「主机记录」和「记录值」不同。以下是国内常用三家的路径:
| 平台 | 路径 | 注意 |
|---|---|---|
| 阿里云 DNS | 云解析 DNS → 域名 → 解析设置 → 添加记录 | 主机记录填 @ 表示根域名;_dmarc、mail._domainkey 直接原样填 |
| 腾讯云 DNSPod | DNS 解析 → 我的域名 → 记录管理 → 添加记录 | 记录类型选 TXT;记录值里的引号不用自己加,面板会自动处理 |
| Cloudflare | DNS → Records → Add record | 类型选 TXT;Name 填 @ 或 _dmarc;TTL 选 Auto 即可 |
加完记录后建议等 10 分钟左右让解析生效,再回到本页重新检测一次。DNS 生效时间取决于原有 TTL,一般不超过 1 小时。
| 维度 | 满分 | 得分要点 |
|---|---|---|
| SPF | 35 | 存在记录 12|只有一条 5|语法正确 5|查询次数未超限 5|末尾 -all 得 8(~all 得 5,?all 得 2) |
| DKIM | 25 | 找到可用公钥 12|密钥 ≥2048 位得 8(1024 位得 4)|无严重问题 5 |
| DMARC | 30 | 存在记录 12|p=reject 得 10(quarantine 得 7,none 得 2)|配了 rua 得 4|pct=100 得 2|sp 不弱于 p 得 2 |
| 基础配置 | 10 | 有 MX 记录 4|记录无冲突 3|外部报告地址已授权 3 |
等级对照:A ≥ 90 优秀 · B ≥ 75 良好 · C ≥ 60 及格 · D < 60 待改进。缺 DMARC 时总分封顶 45 分(SPF 与 DKIM 再整齐,没有统一裁决也不成立);三条记录一条都没有时封顶 20 分 —— 避免靠「记录整齐」刷出虚高的分数。
选择器._domainkey.你的域名 下,最常见的是漏了 ._domainkey 这一段。