DNS 解析是什么?为什么改了解析不生效?

很多客户换了服务器 IP 后,问我最多的一个问题就是:"我改了解析怎么网站还打不开?"

DNS 解析是什么

简单说,DNS 就是把域名(blog.7ehl.com)翻译成 IP 地址(103.151.228.100)的服务。你访问网站时,浏览器先去 DNS 服务器查这个域名对应的 IP,查到后再去那个 IP 的服务器上拉网页。

改了解析为什么不生效

改了解析不等于立即生效。原因有两个:

1. DNS 缓存

你的电脑、路由器、宽带运营商都在缓存 DNS 记录。就算你在 DNS 管理后台改了,缓存的旧记录还在,浏览器还是访问旧 IP。

Windows 清空本地 DNS 缓存:

ipconfig /flushdns

2. TTL(缓存时间)

每条 DNS 记录都有一个 TTL 值(比如 600 秒 = 10 分钟)。TTL 时间内,世界各地的 DNS 服务器都会拿着旧记录不放,不会去查最新的。

换服务器前的正确操作

提前降低 TTL 值

在换服务器之前,先把域名的 TTL 改成 300(5 分钟),等 24 小时让所有 DNS 服务器都更新这个 TTL 值,然后再换 IP。这样改了之后最多 5 分钟就能生效。

怎么检查解析是否生效

用这个命令看当前的解析结果:

ping blog.7ehl.com

或者用更精确的:

nslookup blog.7ehl.com

如果返回的是新 IP,说明解析已经生效了。

全球 DNS 生效检查

推荐用 https://dnschecker.org 这个网站,可以看到全球各地的解析结果。

总结

改了解析不生效是正常的,等 TTL 时间过了就行。下次换服务器,记住先降 TTL,再换 IP,不会出现长时间打不开的情况。