你迁移了托管商。在 registrar 改了 A 记录。浏览器仍打开旧主机。dig +short yourdomain.com 显示旧 IP。你确定改了 DNS——但没生效。最可能的原因:你的权威 nameserver(世界实际查询的那些)不是 registrar 的默认 nameserver。它们在 Cloudflare、Vercel DNS、Route 53,或者几个月前你设的某个地方然后忘了。registrar 上的编辑根本到不了权威提供商。
诊断一条命令:dig NS yourdomain.com。
常见原因
按命中率从高到低。
1. 权威 nameserver 在别处
你 registrar 的 nameserver(ns1.yourregistrar.com)不是世界查询的那些。世界查询的是 Cloudflare 或几个月前你设的。Registrar 面板的编辑没用。
怎么判断:
dig NS yourdomain.com
返回 cloudflare.com 的 nameserver(leah.ns.cloudflare.com 之类),那就是权威提供商。registrar 的 DNS 面板无关。
2. 旧 A / CNAME 跟新的并存
加了新 A 但忘删旧的。DNS 现在有两条 A 记录;resolver 轮询或不一致挑选。
怎么判断:
dig yourdomain.com
;; ANSWER SECTION: 里 2+ 个 A 指向不同 IP 就是陈旧记录还在。
3. 旧记录 TTL 太高
你改了记录但 TTL 是 86400(24 小时)。resolver 可能保留旧 IP 最多 24 小时。
怎么判断:看旧记录的 TTL。高且改动是最近的,就等。
4. 多个 A 记录(有意多主机或意外)
A 记录分发本来可以是有意的(负载均衡)。但 IP 来自两个不相关的主机就是意外、破坏路由。
怎么判断:dig yourdomain.com 显示多个 A。验证每个 IP——应该都来自同一个主机。
5. 本地 DNS 缓存陈旧
全球传播完之后,你笔记本的 OS 或浏览器缓存还有旧 IP。
怎么判断:dig yourdomain.com @8.8.8.8 显示新 IP,但 dig yourdomain.com(系统 resolver)显示旧。清本地 DNS。
6. 前置 CDN 代理指向旧源站
Cloudflare 代理开着。你改了源 DNS 但 Cloudflare edge 配置仍跟旧源站通讯。
怎么判断:Cloudflare → DNS → 看代理记录后面真实解析到什么。可能还是旧的。
最短修复路径
第 1 步:找权威 DNS 提供商
dig NS yourdomain.com
这是真相。返回什么就是谁在服务你的 DNS。例子:
ns1.dreamhost.com→ DreamHost 权威leah.ns.cloudflare.com→ Cloudflare 权威ns-376.awsdns-47.com→ Route 53 权威
第 2 步:登录权威提供商
在那里改 DNS 记录。Registrar 面板可能有也可能没有 DNS 章节——如果 registrar 的 nameserver 不是权威的,那部分就是死代码。
第 3 步:删旧 A / CNAME
加新记录前先删同名旧记录。不要两个都留。
第 4 步:按主机要求加新记录
严格按主机文档(Vercel:A 76.76.21.21 等)。看 A vs CNAME 困惑。
第 5 步:全球验证
dig +short yourdomain.com @8.8.8.8
dig +short yourdomain.com @1.1.1.1
两个都应返回新 IP。还是旧的就是没保存或没传播。
第 6 步:清本地 DNS
# macOS
sudo dscacheutil -flushcache && sudo killall -HUP mDNSResponder
# Linux
sudo resolvectl flush-caches
# Windows
ipconfig /flushdns
浏览器也清:chrome://net-internals/#dns → Clear host cache。
第 7 步:记下权威 DNS
DNS.md 或类似地方写:“yourdomain.com 的权威 DNS:Cloudflare (ns-XXX.cloudflare.com)。” 未来的你会感谢现在的你。
哪些情况可能不是你操作错了
某些 registrar/DNS 提供商不看 TTL 缓存几小时。从 dnschecker.org 多个地理位置验证。
容易误判的情况
在 registrar 改 DNS 但 nameserver 指向别处。Registrar UI 保存成功但没生效。永远先看 dig NS。
预防建议
- 每个域名记下权威 DNS 提供商(在
DNS.md)。 - 任何主机变更至少 24 小时前把 TTL 降到 300 秒。
- 换主机后删旧 A/CNAME,不要留着。
- 共享 / 团队域名,确保只有一个人能改 DNS 避免冲突。
- 用多个 resolver 验证,不只是本机。
FAQ
- 怎么找权威 DNS?
dig NS yourdomain.com返回 NS 记录。 - 能 registrar DNS 与 Cloudflare 同时用吗? 不能——只有一组 nameserver 权威。Registrar 设为委托给 Cloudflare,然后在 Cloudflare 管记录。
相关阅读
标签: #域名 #DNS #SSL #排查 #Name Server