域名验证与邮件防伪均通过TXT记录实现但用途不同:前者用随机字符串证明所有权,主机名通常为@或指定前缀;后者SPF(v=spf1)、DKIM(selector._domainkey)、DMARC(_dmarc)各按规范配置,须严格区分格式、主机名及生效要求。

配置TXT记录完成域名所有权验证和防伪,核心是分两步走:先用唯一字符串证明你是域名主人,再用SPF/DKIM/DMARC三类记录筑牢邮件防线。两者都靠TXT记录实现,但目的、格式和填写位置完全不同,不能混用。
域名所有权验证:填对“值”和“主机名”
第三方平台(如Microsoft 365、Let’s Encrypt、CDN服务商)会生成一段不可修改的随机字符串,例如:
202207060000002jar4fb2hc79iwjq5cdid87t7rci1sgp33exuyvez4kwonobxt
- 记录类型必须选TXT
- 主机名一般填@(代表主域名,如 example.com);个别平台要求填 _acme-challenge 或 dnsverify,按提示来
- 记录值粘贴完整字符串,不加引号、不换行、不删空格
- TTL保持默认(如3600秒),线路选“默认”即可
保存后等待几分钟到几小时,用 dig example.com txt 或在线工具 dnschecker.org 查看是否全球同步。匹配即验证成功,该记录可删可留。
防伪配置(SPF/DKIM/DMARC):按协议规范写
这三类记录都存于TXT中,但每条都有固定开头和语法规则,且共存时需注意冲突:
-
SPF记录:只允许一条,以
v=spf1开头,例如:v=spf1 include:spf.protection.outlook.com -all
主机名填 @,用于声明哪些IP或服务能发你域名的邮件 -
DKIM记录:由邮件服务商提供公钥,通常主机名形如 selector._domainkey(如
default._domainkey),值是一长串base64编码的公钥文本 -
DMARC记录:主机名必须是 _dmarc,值以
v=DMARC1开头,例如:v=DMARC1; p=quarantine; rua=mailto:postmaster@example.com
三者可同时存在,但SPF必须唯一;DKIM和DMARC的主机名不能写错,否则无法被识别。
常见错误与检查要点
- 把验证字符串误填进SPF记录里,或反过来——两类用途的TXT值绝不能混放
- SPF记录写了两条以上,导致接收方校验失败(返回 permerror)
- DKIM主机名漏掉
._domainkey后缀,或DMARC没写_dmarc前缀 - 复制记录值时带了前后空格或换行符,DNS系统可能截断
- 改完DNS后立刻验证,未等TTL缓存刷新;建议用多地DNS查询工具交叉确认
验证通过后,所有权类TXT可删除;而SPF/DKIM/DMARC记录需长期保留并定期检查有效性。










