IT
🌐

完整 DNS 设置指南:A 记录、CNAME 和名称服务器简单说明

一份关于《完整 DNS 设置指南:A 记录、CNAME 和名称服务器简单说明》的实用指南,提供清晰的检查清单、需要关注的关键风险,以及适合在行动前比较不同选项的读者参考的后续步骤。

完整 DNS 设置指南:A 记录、CNAME 和名称服务器简单说明

重点总结

  • DNS (Domain Name System) 是互联网的“电话簿” — 它会将域名转换为 IP 地址。
完整 DNS 设置指南:A 记录、CNAME 和名称服务器简单说明
  • 每种记录类型都有不同的作用:A record(IPv4 地址)、AAAA record(IPv6)、CNAME(域名别名)、MX(邮件路由)、TXT(所有权验证、SPF 等)。
  • Nameserver (NS) 的变更需要在你的域名注册商处完成;记录编辑则在你的 DNS 提供商面板中进行(Cloudflare、Route 53 等)。
  • 较低的 TTL 意味着变更传播更快,但会增加服务器负载。
  • DNS propagation 最多可能需要 48 小时 才能传播到全球所有服务器。
  • 修改前,请使用 DNS Lookup Tool 验证你当前的记录。

什么是 DNS?为什么需要它?

当你在浏览器中输入 www.example.com 时,你的计算机需要找到这个名称背后真正的 IP 地址(例如 93.184.216.34)。由于数字 IP 对人来说很难记住,因此需要一个系统来将域名转换为 IP 地址。这个系统就是 DNS (Domain Name System)

DNS 由遍布全球的数千台分布式服务器组成,并按层级结构组织:

  1. 1Root DNS Servers — 最高层级。全球运行着 13 组服务器集群。
  2. 2TLD (Top-Level Domain) Servers — 面向各类域名后缀的服务器:.com.org.io 等。
  3. 3Authoritative DNS Servers — 实际存储特定域名记录的服务器。Cloudflare、Route 53 以及注册商的 DNS 服务都属于这一类。
  4. 4Recursive DNS Resolvers — 由你的 ISP 或 Google(8.8.8.8)、Cloudflare(1.1.1.1)等公共服务提供的中间服务器。它们会代表你在层级结构中查询,并缓存结果。

这种结构让全球数十亿次域名查询都能被快速解析。


DNS 记录类型完整解析

完整 DNS 设置指南:A 记录、CNAME 和名称服务器简单说明 visual 2

DNS 记录存储了关于域名的各种信息。每种类型的作用都完全不同 — 我们逐一来看。

A Record (Address Record)

最基础的记录类型。将域名连接到 IPv4 地址。

NameTypeValueTTL
example.comA93.184.216.343600
www.example.comA93.184.216.343600
  • 可同时为根域名(example.com)和子域名(wwwblogapi 等)设置
  • 为一个域名注册多条 A 记录可以实现轮询负载均衡

AAAA Record

与 A 记录相同,但指向 IPv6 地址。IPv6 地址看起来像 2606:2800:220:1:248:1893:25c8:1946,又长又复杂。需要 IPv6 支持的服务应在配置 A 记录的同时配置 AAAA 记录。

CNAME Record (Canonical Name)

别名记录,将一个域名连接到另一个域名,不是连接到 IP 地址,而是另一个域名。

NameTypeValueTTL
www.example.comCNAMEexample.com3600
blog.example.comCNAMEmyblog.github.io3600
shop.example.comCNAMEmystore.myshopify.com3600

CNAME 的关键限制: 不能在根域名(example.com@)上使用 CNAME。根域名必须使用 A 或 AAAA 记录。不过,Cloudflare 等服务提供 CNAME Flattening,可在内部绕过这一限制。

MX Record (Mail Exchange)

指定接收某个域名邮件的邮件服务器。优先级数字越低,越先尝试。

NameTypePriorityValueTTL
example.comMX1aspmx.l.google.com3600
example.comMX5alt1.aspmx.l.google.com3600

连接 Google Workspace 或 Microsoft 365 等电子邮件服务时必须配置。

TXT Record (Text Record)

存储有关域名的文本信息。常见用途包括:

  • 域名所有权验证:Google Search Console、GitHub Pages 等服务会要求配置。
  • SPF (Sender Policy Framework):指定被授权发送邮件的服务器,用于阻止垃圾邮件。

- 示例:v=spf1 include:_spf.google.com ~all

  • DKIM:注册用于邮件认证的数字签名密钥。
  • DMARC:声明该域名的邮件认证策略。

NS Record (Name Server)

告诉外界哪些服务器负责管理某个域名的 DNS。通常在域名注册商处修改。NS 记录更新后,该域名之后的所有 DNS 查询都会转到新的名称服务器。

常见名称服务器提供商:

  • Cloudflarenoah.ns.cloudflare.compita.ns.cloudflare.com
  • AWS Route 53ns-XXX.awsdns-XX.com(4 条记录)
  • Google Cloud DNSns-cloud-XX.googledomains.com

SOA Record (Start of Authority)

由 DNS 提供商自动管理的技术记录。包含主名称服务器、管理员邮箱,以及用于区域传输的序列号。用户通常不需要手动编辑。

SRV Record (Service)

指定由哪台服务器处理某项特定服务,常用于 VoIP、游戏服务器和通信协议。

格式:_service._protocol.domain 示例:_minecraft._tcp.example.com → 指向一台 Minecraft 服务器

PTR Record (Pointer)

A 记录的反向记录,将 IP 地址反向解析为域名。用于反向 DNS(rDNS)查询。邮件服务器会使用 PTR 记录验证发件 IP 是否合法。


理解 TTL (Time To Live)

完整 DNS 设置指南:A 记录、CNAME 和名称服务器简单说明 visual 3

TTL 是 DNS 解析器在再次检查之前缓存记录的秒数。

TTL 值传播速度最佳使用场景
60(1 分钟)非常快迁移期间或预计会有变更时
300(5 分钟)需要频繁更新的正常运行场景
3600(1 小时)标准大多数生产网站
86400(24 小时)很少变更的稳定记录

最佳实践: 在计划进行 DNS 变更前 24–48 小时,将 TTL 降至 300–600 秒。确认变更正常生效后,再将 TTL 恢复为 3600。


如何更改 Nameservers(分步说明)

完整 DNS 设置指南:A 记录、CNAME 和名称服务器简单说明 visual 4

更改 nameservers 会将 DNS 管理从你的域名注册商转移到其他服务商(例如 Cloudflare)。

步骤 1. 将你的域名添加到 Cloudflare(或新的 DNS 服务商),并记录其提供的 nameserver 地址。

步骤 2. 登录你的域名注册商(Namecheap、GoDaddy、Gabia 等),找到 nameserver 设置。

步骤 3. 用新的 nameservers 替换现有 nameservers(例如 Cloudflare 的 noah.ns.cloudflare.com)。

步骤 4. 等待传播完成 — 变更需要 24–48 小时才能到达全球所有 DNS 解析器。

步骤 5. 使用 DNS Lookup 工具验证: 立即检查你的 DNS 记录 →


常见 DNS 错误类型和解决方案

ERR_NAME_NOT_RESOLVED

域名无法解析。可能的原因包括:

  • A 记录尚未创建或指向了错误的 IP
  • DNS 传播仍在进行中(等待 24–48 小时)
  • 域名拼写错误

更改 Nameserver 后网站无法加载

检查新的 DNS 服务商面板中是否存在 A 记录。切换到 Cloudflare 时,你必须在 Cloudflare 控制台中重新创建所有现有记录 — 它们不会自动转移。

无法收到邮件

确认 MX 记录设置正确。对于 Google Workspace,正确的 MX 值是 aspmx.l.google.com,优先级为 1。

Cloudflare 代理模式(橙色云朵)注意事项

启用 Cloudflare 代理(橙色云朵图标)后,DNS 查询返回的是 Cloudflare 的 IP,而不是你服务器的实际 IP。这可能会导致需要真实服务器 IP 的服务出现问题(例如某些邮件服务器、VPN 等)。对于这些记录,请切换到 DNS Only(灰色云朵)模式。


常见问题(FAQ)

Q1. 域名注册商和 DNS 提供商有什么区别?

域名注册商是你购买并持有域名的地方(Namecheap、GoDaddy、Gabia 等)。DNS 提供商负责管理你域名的 DNS 记录(Cloudflare、Route 53 等)。它们可以是同一家公司,也可以分开使用,比如在某个注册商购买域名,再使用 Cloudflare 管理 DNS。

Q2. 为什么不能在根域名上使用 CNAME?

DNS 标准(RFC 1034)禁止在区域顶点(根域名)设置 CNAME 记录。这是因为根域名必须包含 SOA 和 NS 记录,而根域名上的 CNAME 会与这些记录冲突。Cloudflare 的 CNAME Flattening 是一种专有扩展,可在 DNS 解析层面绕过这个限制。

Q3. 如何加快 DNS 传播?

你无法强制全球 DNS 传播,但在计划变更前至少 24 小时将 TTL 降低到 300–600 秒会有所帮助。变更后,DNS 解析器会更频繁地检查更新。

Q4. 什么是 SPF 记录,为什么需要它?

SPF(Sender Policy Framework)是一种 TXT 记录,用于告诉接收邮件服务器哪些服务器被授权代表你的域名发送邮件。没有 SPF 时,来自你域名的邮件更容易被标记为垃圾邮件,或被收件方拒收。

Q5. 什么是 Cloudflare 的代理(橙色云朵)?

当 Cloudflare 的代理启用时,所有访问你域名的流量都会经过 Cloudflare 的服务器。好处包括 DDoS 防护、缓存和性能优化。缺点是你的服务器真实 IP 会被隐藏,这可能会导致某些服务出现问题。

Q6. 基础网站设置需要哪些记录?

典型网站的最低要求是:

  • A 记录(或 CNAME):将域名指向你的托管服务器
  • MX 记录:如果你需要为该域名使用邮箱
  • TXT 记录:SPF(用于邮件身份验证)以及 Google Search Console 等工具的所有权验证

🔧 相关免费工具

下一步

从本指南继续

相关