Skip to content
VDS · 网络、IP 地址与域名

没有魔法的 DNS:A、AAAA、CNAME、MX、TXT

有哪些 DNS 记录类型,它们有何区别,如何理解 TTL,以及如何检查更改是否已生效到互联网。

更新于 2026年8月23日

DNS 就像一个目录:给它一个名称,它返回一个地址或另一个名称。它出错时的表现就像“网站打不开”,尽管机器完全正常。了解每种记录类型负责什么,排查起来会更容易。

主要类型

类型包含什么何时需要
AIPv4 地址网站和任何服务的主要记录
AAAAIPv6 地址在 Millida VDS 机器上不使用:不提供 IPv6
CNAME另一个名称别名,例如 www → 主域名
MX邮件服务器和优先级接收域名的邮件
TXT任意文本SPF、DKIM、DMARC、所有权验证
NS区域名称服务器域名委派

最容易踩的规则:不能在域名根处放置 CNAME 并与其他记录共存。根(example.com)只能有 A。CNAME 别名是给子域名用的。

实际是什么样

example.com.        A       203.0.113.10
www.example.com.    CNAME   example.com.
mail.example.com.   A       203.0.113.10
example.com.        MX  10  mail.example.com.
example.com.        TXT     "v=spf1 mx -all"

从控制面板 /hosting/vds/m/<id> 的“概览”中获取地址。绑定的实操部分在文章将域名绑定到机器中描述。

TTL 和缓存

TTL 是记录允许被缓存存储的时间,以秒为单位。值为 3600 意味着在您修改后,提供商和浏览器还能继续提供一个小时的旧答案。

计划迁移的流程:提前一天将 TTL 降低到 300;等待;修改记录;确认一切正常;恢复之前的 TTL。

验证

dig example.com A +short
dig www.example.com CNAME +short
dig example.com MX +short
dig example.com TXT +short
dig @8.8.8.8 example.com A +short

最后一条命令查询特定的公共解析器,绕过您的本地缓存。包含解析路径的完整情况:

dig +trace example.com

常见错误

症状原因解决方法
域名从任何地方都打不开NS 记录未指向所需提供商在注册商处检查 dig example.com NS
您能打开,别人打不开缓存中有过期答案等待 TTL 过期,通过 @8.8.8.8 检查
www 打不开子域名没有记录为根添加 CNAME
邮件收不到没有 MX,或它指向 CNAMEMX 必须指向有 A 记录的域名
编辑 SPF 后邮件消失区域中有两条 SPF 记录只保留一行 v=spf1

一次只修改一条记录,并用 dig 命令验证结果。批量修改区域然后“为什么全都挂了”,排查时间要长三倍。

要接收邮件,您还需要正确的反向地址记录。