跳到主要内容

域名、DNS 与解析链路

第一次建站时,域名和 DNS 往往是最早把人绕晕的地方。

因为它同时涉及:

  • 域名在哪里买
  • 去哪里改解析
  • 什么是 AAAAACNAME
  • 什么是 Nameserver
  • 为什么改了记录却没立刻生效

先讲一句最重要的话

域名本身只是名字,DNS 负责告诉世界“这个名字应该去哪”。

所以:

  • 买域名,不等于网站已经能访问
  • 有服务器,不等于用户能通过域名访问
  • 改了解析,不等于会立刻全网生效

你实际会碰到的几个角色

域名注册商

就是你买域名的地方,比如阿里云、腾讯云、Namecheap 等。

DNS 服务商

负责托管你的解析记录。它可以和注册商是同一家,也可以不是。

Nameserver

Nameserver 决定“这个域名最终由哪家 DNS 服务商负责解释”。

如果你把域名接入 Cloudflare,最关键的一步往往不是改某条 A 记录,而是把域名的 Nameserver 改成 Cloudflare 提供的那一组。

最常见的 DNS 记录类型

A 记录

把域名指向 IPv4 地址。

example.com -> 203.0.113.10

AAAA 记录

把域名指向 IPv6 地址。

CNAME 记录

把一个域名别名指向另一个域名。

www.example.com -> example.pages.dev

这在静态托管、CDN 接入和平台托管中很常见。

MX / TXT

虽然和网站访问不是一回事,但邮箱验证、SPF、DKIM、站点验证、第三方服务接入经常会用到。

一次解析大致怎么走

当用户访问 docs.example.com 时,最小理解流程可以这样看:

  1. 浏览器先问本地缓存和系统缓存
  2. 如果没有,再去问递归 DNS 解析器
  3. 解析器根据域名的权威 DNS 信息查到记录
  4. 最终得到一个 IP 或另一个目标域名
  5. 浏览器再去建立连接

你不用把每一步递归查询都背成考试答案,但要知道:

  • DNS 本身也有缓存
  • 所以你改完记录不会立刻全球同步

TTL 是什么

TTL 可以简单理解成“这条解析结果可以被缓存多久”。

TTL 越短:

  • 生效切换通常更快
  • 查询次数可能更多

TTL 越长:

  • 缓存更稳定
  • 改动后的刷新更慢

对于第一次建站,更重要的不是把 TTL 调得多极端,而是知道“为什么我明明改了,别人还看到旧结果”。

建站里最常见的几种解析场景

场景 1:裸域指向服务器

example.com -> A -> 203.0.113.10

场景 2:www 指向托管平台

www.example.com -> CNAME -> your-site.pages.dev

场景 3:整站接入 Cloudflare

域名注册商

Nameserver 指向 Cloudflare

在 Cloudflare 控制台里管理 DNS 记录

新手最容易踩的坑

1. 改错地方

你在注册商那里改了一堆记录,但实际权威 DNS 已经切到 Cloudflare 了,那这些改动不会生效。

2. 把 Nameserver 和普通记录混为一谈

Nameserver 是“谁来管解析”,A/CNAME/TXT 是“具体怎么解析”。这不是同一层东西。

3. www 和裸域只配了一个

很多人只让 example.com 能访问,却忘了 www.example.com,或者反过来。

4. 解析生效和 HTTPS 生效混为一谈

域名能指过去,不代表证书已经对;证书对了,也不代表重定向配置正确。

第一次搭站的实用建议

如果你是个人站或文档站,通常至少要明确这几件事:

  1. 你要不要同时支持裸域和 www
  2. DNS 最终由谁管理
  3. 你的源站究竟是托管平台、对象存储还是自有服务器
  4. 你是否要在 DNS 层前加一层代理/CDN

一个简单但实用的思路

如果你还没完全熟练,尽量做到:

  • 域名归属清楚
  • 权威 DNS 清楚
  • 每条记录的用途清楚
  • 别同时在多个地方盲改

DNS 不难,真正难的是在角色还没分清时乱改配置。

适合接着读什么