← 返回博客
DNSMXSPFDKIMDMARC域名邮箱
域名邮箱 DNS 配置详解:MX、SPF、DKIM、DMARC
四条核心 DNS 记录各自的作用和常见配置错误,以及配完之后如何用工具验证每条记录是否生效。
更新于 2026年10月12日

DNS 配置是域名邮箱能否正常收发信的基础。配置错误通常不会立即报错,而是表现为邮件被退回、落入垃圾箱或发信被拒。下面是四条核心记录各自的作用,以及常见的配置错误。
MX 记录
MX 记录告诉其他服务器往哪里投递你域名的邮件。每条 MX 记录有一个优先级数字,数字越小优先级越高。
@ MX 10 mx.rovela.dev.
常见错误:
- 忘记结尾的点(
.):在某些 DNS 控制台里,mx.rovela.dev和mx.rovela.dev.的处理方式不同;结尾有点表示绝对域名,没有点可能被补上你的域名。Rovela 的控制台会自动处理这个问题。 - 保留了旧的 MX 记录:切换服务商时旧记录没删,两条 MX 同时生效,邮件会随机投递到旧服务商。
- 过早切 MX:邮箱还没建好就把 MX 指过来,导致邮件在过渡期间退回。
SPF 记录
SPF 是一条 TXT 记录,声明哪些 IP 或服务器被授权代表你的域名发信。
@ TXT "v=spf1 include:spf.rovela.dev ~all"
~all(软失败)比 -all(硬拒绝)更常用于初始配置,减少误判。确认配置稳定后可以改成 -all。
常见错误:
- 同一域名有两条 SPF 记录:SPF 规范要求每个域名只能有一条,第二条会导致验证失败。如果你有多个发信来源,把所有
include:合并进同一条。 - 超过 10 次 DNS 查询:SPF 有一个「最多触发 10 次 DNS 查询」的限制。
include:会递归查询,层级深了容易超限。
DKIM 记录
DKIM 是用公钥对邮件签名的机制。你在 DNS 里发布公钥,服务商用对应的私钥在发信时签名,收信方用 DNS 里的公钥验证签名没有被篡改。
mail._domainkey TXT "v=DKIM1; k=rsa; p=MIIBIjANBgkqhki..."
记录名是 <选择器>._domainkey,选择器由服务商指定(通常是 mail 或类似的字符串)。
常见错误:
- 公钥格式:DNS TXT 记录有 255 字符限制,长公钥需要分成多段用引号括起来,某些控制台会自动处理,某些需要手动分段。
- 选择器填错:
mail._domainkey里的mail必须和服务商指定的选择器完全一致。
DMARC 记录
DMARC 告诉收件方,如果 SPF 和 DKIM 都验证失败,该怎么处理这封邮件。
_dmarc TXT "v=DMARC1; p=none; rua=mailto:dmarc-reports@yourcompany.com"
p=none 是观察模式,只收报告不拒绝邮件,适合初始配置。确认发信路径都通过验证后,逐步改成 p=quarantine 再到 p=reject。
常见错误:
- 直接用
p=reject但 SPF/DKIM 还没稳定:会导致自己发的邮件被拒收。 - 没设
rua报告地址:DMARC 报告帮你发现哪些发信来源没有通过验证,不配置的话等于盲跑。
验证工具
配好之后,可以用 MXToolbox、mail-tester.com 或者直接给 check-auth@verifier.port25.com 发一封邮件,它会回复一份详细的 SPF/DKIM/DMARC 验证报告。
Rovela 的域名页面在你添加域名后会自动列出所有需要的记录,并在你发布后实时检测每条记录的状态。