网站刚换了服务器,同事都能打开,就你这边还指着旧页面;或者某个软件换了线路,一直提示域名解析失败。十有八九是本机 DNS 缓存还记着旧地址,刷新一下就好。

为什么会有缓存这回事

电脑解析过一次域名后,会把结果先存一段时间,下次直接用,省得反复查询,这本来是提速设计。坏处是网站换了 IP 之后,本机还拿着旧记录,就出现打不开、跳错页的情况。存多久由记录的 TTL 决定,几分钟到几小时不等,等不及就手动刷。

Windows 一条命令

Win+R 输 cmd 回车,敲:

ipconfig /flushdns

看到「已成功刷新 DNS 解析缓存」就成了。这条命令只清缓存,不动网卡配置,没副作用,普通命令行窗口权限就够,Win7 到 Win11 都通用。敲错会提示语法错误,注意 flushdns 是连着一个词。

清完还打不开,再试这几步

  • 浏览器自己还有一层缓存,Chrome 进 chrome://net-internals/#dns 点 Clear host cache
  • ipconfig /release 释放地址,再 ipconfig /renew 重新获取,适合换了网络环境的机器
  • netsh winsock reset 重置网络组件,这条要管理员窗口,敲完重启生效

换解析服务也是常用招

运营商默认 DNS 有时抽风,手动改成公共地址能绕开:阿里的 223.5.5.5,腾讯的 119.29.29.29,谷歌那个 8.8.8.8 国内一般连不稳。改的位置在网卡属性里的 IPv4 设置,或者在路由器后台改,全家设备一起生效。重启光猫和路由器,也算变相刷新了一遍分配的 DNS。

Mac 和手机怎么办

macOS 打开终端,一般用 sudo killall -HUP mDNSResponder 来刷新,不同系统版本命令略有差异。手机更简单,开一下飞行模式再关,或者断开重连一次 Wi-Fi,缓存基本就清了。

顺带说一句,dns 刷新解决的是「记录过期」问题。刷完还打不开,先 ping 一下域名看解析到哪个 IP,指向对了还不通,那就不是 DNS 的事了。