知玩指南
白蓝主题五 · 清爽阅读
首页  > 域名解析

域名系统缓存在哪里设置?一文搞懂常见位置

平时上网时,你可能没注意,但每次打开网站,电脑都会先去查这个网站的地址。这个过程叫域名解析,而为了加快速度,系统会把查过的结果暂时存起来,这就是域名系统缓存

操作系统里的DNS缓存

在Windows电脑上,DNS缓存是默认开启的,由系统自动管理。你可以通过命令提示符查看或清除它。

比如,打开“运行”(Win + R),输入 cmd,然后敲回车,执行下面命令:

ipconfig /displaydns

这会列出当前缓存的所有域名记录。如果想清空缓存,用:

ipconfig /flushdns

macOS 和 Linux 稍有不同。macOS 从某个版本开始用 mDNSResponder 管理缓存,清缓存通常用:

sudo dscacheutil -flushcache

或者:

sudo killall -HUP mDNSResponder

路由器也存DNS缓存

家里的路由器不只是转发网络信号,很多也会做DNS缓存。特别是用了第三方固件(比如Padavan、OpenWRT)的路由器,还能手动设置DNS服务器和缓存时间。

登录路由器后台,一般在“网络设置”或“DHCP/DNS”选项里能找到相关配置。如果你改了DNS但某些设备还是走旧路线,可能是路由器缓存还没更新,重启路由器或清一下缓存就行。

浏览器自带的DNS缓存

很多人不知道,浏览器自己也会存DNS记录。比如Chrome,它有一套独立的DNS缓存机制,不完全依赖系统。

在 Chrome 地址栏输入:

chrome://net-internals/#dns

就能看到当前缓存的域名。点“Clear host cache”就可以清掉。Firefox 类似,可以通过设置关闭预测解析来减少缓存影响。

公共DNS服务的缓存

像阿里DNS(223.5.5.5)、腾讯DNSPod(119.29.29.29)、Google DNS(8.8.8.8)这些公共DNS,本身也有缓存。你查一个域名,它们不会每次都问根服务器,而是把结果存一段时间,这个时间由域名的TTL值决定。

也就是说,哪怕你本地清了缓存,公共DNS那边可能还留着旧记录,等TTL到期才会更新。所以换域名解析后,全网生效需要时间,不是立刻就变的。

如何判断缓存位置并处理问题

当你发现某个网站打不开,或者跳转到了错误页面,先别急着重装系统。可以一步步排查:

  • 先清浏览器缓存和DNS缓存
  • 再清系统DNS缓存
  • 最后重启路由器,确保中间节点都刷新一遍

如果公司用内网DNS,可能还要联系IT部门清内部缓存。

举个例子:小李换了新网站服务器,IP变了,但他在公司打不开新页面。家里能开,说明解析没问题。问题出在公司内网DNS缓存没更新,或者他自己的电脑还记着旧地址。按上面步骤一清,立马解决。