你在 Namecheap 买了 yourdomain.com,登录进去,找到 DNS 面板,改了一条 A 记录,保存。5 个小时后——什么都没变。dig yourdomain.com 返回的还是另外一个完全不同的 IP。你没疯:你确实改了正确的字段,只是改错了地方。Namecheap 上你那条 A 记录被全世界忽略,因为 Namecheap 不是你这个域名的权威 DNS——真正权威的是 Cloudflare(或 Route 53、或 Vercel DNS)。欢迎来到域名管理里最常见的概念陷阱。
本文讲清楚 name server(NS) 和 DNS 记录(A / CNAME / MX / TXT) 的区别、怎么查到底应该在哪儿改、以及当你没意识到这两层早就分家的时候该怎么处理。
两层模型(5 秒版)
注册商(你买域名的地方)
↓ 存储:哪些 NS 服务器是权威的
NS 服务器(权威 DNS provider)
↓ 存储:A / CNAME / MX / TXT 记录
全世界查到的真正记录
- NS 记录存在域名注册局(通过你的注册商管理),回答:这个域名的权威是谁?
- A / CNAME / MX / TXT 记录存在权威 DNS provider(NS 指向的那家)那里,回答:这个主机名对应的 IP / 目标是什么?
如果你在注册商的 DNS 面板里改一条 A 记录、但 NS 指向的是另一家 provider,那这条改动就写进了一个没人查的数据库——改了等于没改。
先判断属于哪一种
第一步:查谁是权威
dig NS yourdomain.com +short
# 输出示例:
# stan.ns.cloudflare.com. ← Cloudflare DNS 是权威
# amy.ns.cloudflare.com.
# 或
# ns-1234.awsdns-12.org. ← Route 53
# ns-567.awsdns-34.com.
# 或
# ns1.vercel-dns.com. ← Vercel DNS
# ns2.vercel-dns.com.
# 或
# dns1.registrar-servers.com. ← Namecheap 默认 BasicDNS
# dns2.registrar-servers.com.
# 或
# ns1.bluehost.com. ← 主机厂商兼做 DNS
主机名的模式就告诉你是哪家。DNS 记录在那边改,别的地方改没用。
情况 1:NS 指向一家你忘了的 provider
你在 Namecheap 买的,一年前你(或同事)把域名搬到 Cloudflare 用代理 / WAF。Cloudflare 接入流程让你在 Namecheap 改 NS 到 Cloudflare 的 NS,你做了,然后忘了。现在你登 Namecheap 看到熟悉的 DNS 面板,改一堆没人查的记录。
怎么看:dig 出来的 NS 主机名和你注册商的牌子不匹配。
修复:登 NS 实际所在的 provider,在那边改。要合并回注册商,就先在注册商把 NS 改回他们家默认 NS——但要同时把所有记录在那边重建一遍,不然会断服。
情况 2:NS 指向托管厂商(Bluehost / GoDaddy / SiteGround)
你买托管的时候,向导问”要不要让我们帮你管 DNS”,你点了同意。现在 dig NS 显示的是托管厂商,不是注册商。他们家 DNS 面板才是真正生效的。
怎么看:NS 和你的托管品牌一致。注册商 DNS 区域提示”your nameservers point to a third party”或”DNS is managed elsewhere”。
修复:在托管厂商的控制台里改记录。注册商的 DNS 部分在你不改 NS 之前都是只读 / 摆设。
情况 3:NS 跨多家 provider
你看到 4 条 NS,2 条在 Cloudflare、2 条在 Route 53。技术上合法,但运维灾难——公共 resolver 会随机选一家,那家的记录就赢。如果只有一家有你最新的 A 记录,一半用户拿到的就是旧值。
怎么看:
dig NS yourdomain.com +short
# 返回的 NS 牌子混着
修复:选一家。把所有记录迁过去。在注册商 NS 只填那家的 NS 主机名。等之前的 NS TTL 过期(往往 24–48 小时)。
情况 4:在注册商改了 NS 但还没生效
你在注册商改了 NS。whois yourdomain.com 还显示老 NS。域名注册局(.com 是 Verisign 等)需要 4–24 小时把 NS 变更推到全球 DNS 根。
怎么看:
whois yourdomain.com | grep -i "name server"
# 还显示旧值
修复:等。NS 改动天生就慢——注册局是批量推送的。多数 TLD 一小时内推完,.com 和 .net 通常 4–8 小时,某些国别 TLD 最长 48 小时。
情况 5:两家 provider 都有记录,互相打架
几个月前你把 NS 从 Namecheap 改到了 Cloudflare。但你出于习惯偶尔还会去 Namecheap 改东西。某一天 NS 被还原(同事操作,或者注册商一个”恢复默认”按钮),结果 Namecheap 那边的过期记录又变成权威的了。
怎么看:
dig yourdomain.com +short
# 返回一个你不认识的 IP——正是 Namecheap 上那条旧的 A
修复:先定哪家权威,把记录同步好,把 NS 设对,把注册商上”自动还原 NS”之类的功能关掉(如果有的话)。
最短修复路径
dig NS yourdomain.com +short—— 把主机名模式对到一家 provider。- 登那家 provider 的控制台 —— 不是注册商(除非两边是同一家)。
- 在那里改 A / CNAME / MX / TXT 记录。 保存。几分钟内生效。
- 要换权威 DNS provider:(a) 先在新 provider 加好所有记录,(b) 用
dig @<新 NS 主机名> yourdomain.com +short验证,(c) 这之后再到注册商改 NS。 - 把每个域名的 NS 写在运维文档里——存在文档里,不要存在某个人脑子里。
NS 主机名模式速查
| 模式 | provider |
|---|---|
*.ns.cloudflare.com | Cloudflare DNS |
ns-*.awsdns-*.{com,net,org,co.uk} | AWS Route 53 |
ns*.vercel-dns.com | Vercel DNS |
ns*.googledomains.com / ns-cloud-*.googledomains.com | Google Cloud DNS / Google Domains |
ns*.dns.dynect.net | Oracle Dyn |
dns*.registrar-servers.com | Namecheap BasicDNS |
ns*.domaincontrol.com | GoDaddy |
ns*.bluehost.com / ns*.hostgator.com | 托管捆绑 DNS |
ns*.digitalocean.com | DigitalOcean DNS |
ns*.dnsimple.com | DNSimple |
模式眼生就用 whois <ns 主机名> 查是谁在运营。
预防
- 全团队定一家权威 DNS provider —— Cloudflare 是最常见的默认值,免费、快、API 最好。盯一家。
- 在团队文档里和注册商、续费日期一起记录 NS —— 新同事永远不该靠猜。
- 关掉注册商上的”恢复默认 / 自动 DNS”功能(如果有的话)—— 它们会在账号维护时悄悄改 NS。
- 迁移 DNS provider 时按这个顺序:在新 provider 加好所有记录 → 用显式 NS 的 dig 验证 → 在注册商改 NS → 等 48 小时 → 之后再删旧 provider 上的记录。
- 在注册商开”域名锁 / 转移锁” —— 多数注册商有,能防止 NS 被无意改掉。
FAQ
问:注册商上显示了 DNS 记录,为什么不生效?
答:因为你的 NS 指向别处。注册商的 DNS 面板只有在 NS 指向他们自己 DNS 服务器时才是权威。dig NS yourdomain.com +short 看谁真正在管 DNS。
问:改 NS 会导致 downtime 吗?
答:可能会。如果改到一家还没建好所有记录的 provider,传播过程中查询切到新 provider 会开始返回 NXDOMAIN。先在新 provider 把记录都备齐,用 dig @<new-ns> yourdomain.com +short 验过,再改 NS。
问:NS 改完多久全球生效?
答:NS 比普通 DNS 改动慢,因为要走 TLD 注册局。多数 TLD 1–4 小时;.com / .net 通常 8 小时内;某些国别 TLD 最长 48 小时。NS 改动一律按 48 小时窗口规划。
问:能不能把 NS 同时挂在两家 provider 上做冗余? 答:技术上可以,DNS 规范也鼓励这么做,但前提是两家 provider 必须提供完全一致的记录。用 DNS provider 自带的 secondary 功能(Cloudflare 的 “secondary DNS”、Route 53 的 “private secondary”)做这件事,别自己跑两个独立 zone。
问:我改了 NS,邮件也跟着挂了。 答:是的——NS 一改,所有记录都跟着切了,不只是 A / CNAME,MX / SPF / DKIM / DMARC 也跟着换权威了。要在新 provider 上把这些全部重建。看 MX 记录被覆盖。
相关阅读
标签: #域名 #DNS #SSL #排查 #Name Server