域名解析多久生效:24 小时是误传,超过 30 分钟就是配错

「24 到 48 小时」是民间传说。现代 DNS 几分钟全球生效——不生效就是配错了。本文教你判断。

所有教程都说「等 24 到 48 小时 DNS 传播」。2026 年这几乎总是错的。Cloudflare、Route 53、多数现代 DNS 服务商 5 分钟内全球推完。改完 30 分钟还不通就是配置问题,不是传播问题。

问题背景

DNS 传播指新记录在全网可见所需时间。真正的上限是 TTL(Time To Live)——缓存 resolver 在 TTL 过期前会继续发旧值。现代 DNS 加短 TTL 是分钟级,不是天级。

判断标准

  • 加了 A 记录,自己能通但另一国朋友不通。
  • DNS 检查工具(whatsmydns.net)有些区域绿勾有些红叉。
  • dig +short yoursite.com 本地返回新 IP,远端服务器返回旧 IP。
  • host dashboard 「pending verification」超过 15 分钟。

实操步骤

  1. 记下改 DNS 的时间,从这开始算,不是从你发现时算。

  2. 查改前的 TTL——这是旧值还能被缓存多久的上限。dig 输出里记录类型前那个数字就是 TTL:

dig yoursite.com A
# ;; ANSWER SECTION:
# yoursite.com.  3600  IN  A  151.101.1.195
#                ^^^^
#                TTL(秒)——旧值可能被缓存这么久
  1. 同时查本地 resolver 和公共 resolver。三个都返回新值,说明本地缓存已更新:
dig +short yoursite.com               # 你本地 resolver
# 76.76.21.21

dig +short @1.1.1.1 yoursite.com      # Cloudflare 公共 resolver
# 76.76.21.21

dig +short @8.8.8.8 yoursite.com      # Google 公共 resolver
# 76.76.21.21
  1. 查清楚到底谁在为你的域名负责——「改完没生效」最常见原因是你在注册商改,但流量走 Cloudflare / Route 53:
dig NS yoursite.com +short
# adi.ns.cloudflare.com.
# kim.ns.cloudflare.com.
# → 该在 Cloudflare 里改 zone,不是在注册商
  1. whatsmydns.netdnschecker.org 做多区域检查。一行一个全球 resolver——数红点,不要只看绿。

  2. host 还显示「pending verification」——确认 host 到底在查什么:

# host 在查的具体记录
dig +short TXT _vercel.yoursite.com
# "vc-domain-verify=yoursite.com,abc123"

# CDN 的 A 记录验证
curl -sI https://yoursite.com | head -3

dig 返回值对,但 host 没反应,就是 host 那边的延迟,不是传播问题。回 dashboard 手动触发一次重新校验。

  1. 新域名或刚换 nameserver 才是真慢——registry 全球更新可能要几小时。可以验证 registry 是否已经接受:
whois yoursite.com | grep -i 'name server'
# Name Server: ADI.NS.CLOUDFLARE.COM
# Name Server: KIM.NS.CLOUDFLARE.COM
  1. 只是你自己机器卡住——清本地 DNS 缓存:
# macOS
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder

# Linux (systemd-resolved)
sudo resolvectl flush-caches

# Windows(管理员 PowerShell)
ipconfig /flushdns

容易踩的坑

  • nameserver 已指向 Cloudflare 还在注册商改 DNS——Cloudflare 不读注册商 zone,改了等于没改。
  • 迁移前不降 TTL——高 TTL 缓存久,体感「传播慢」。
  • 相信浏览器。浏览器和 OS 缓存 DNS 很激进。flush DNS 或开无痕绕开。
  • 把 host 问题当 DNS 问题——有时记录没事,是 host 在做 SSL 签发或域名验证,要它自己的时间。
  • 新买域名期待 60 秒就通——新域名 registry 传播才是真慢的,可能 30 分钟到几小时。

这篇适合谁

刚改完 DNS 在焦虑的人。剧透:比老传说快多了。

这篇不适合谁

明确要求自身验证时间的 host(部分企业平台)——读它们文档。

FAQ

  • 「24 到 48 小时」还有意义吗?: 只对全新域名的 nameserver 变更。已有 DNS 改记录是分钟级。
  • 怎么清本地 DNS 缓存?: macOS:sudo dscacheutil -flushcache。Windows:ipconfig /flushdns。Linux 看 resolver。或者直接重启。
  • 为什么一个国家显示,另一个不显示?: 不同 resolver TTL 不同,老缓存过期就都一致了。
  • TTL 要一直留低吗?: 不要。低 TTL 意味着更多 DNS 查询。迁移稳定后调回 3600 或 86400。

相关阅读

标签: #独立开发 #域名 #DNS #排查