你有没有遇到过这种情况:明明网络连着,但某个网站就是打不开,或者打开的页面是旧的?这时候别急着重启电脑或重装浏览器,很可能只是域名系统(DNS)缓存出了点小问题。清理一下DNS缓存,往往能立马解决问题。
什么是DNS缓存?
简单来说,当你访问一个网站时,比如 www.example.com,电脑会把它的域名转换成对应的IP地址,这个过程叫DNS解析。为了加快下次访问速度,系统会把这次解析的结果暂时存起来,这就是DNS缓存。但如果网站换了服务器,IP变了,而你的电脑还在用旧的缓存,那就打不开了。
怎么清理DNS缓存?不同系统命令不一样
Windows 系统
按下 Win + R 键,输入 cmd 回车,打开命令提示符,输入以下命令:
ipconfig /flushdns
如果看到“已成功刷新 DNS 解析缓存”的提示,就说明清理完成了。
macOS 系统
不同版本的 macOS 命令略有不同,可以先试试这个通用命令:
sudo killall -HUP mDNSResponder
需要输入管理员密码。如果你用的是较新的系统版本(如 macOS Monterey 或更高),也可以用:
sudo dscacheutil -flushcache
Linux 系统
大多数 Linux 发行版默认不开启本地 DNS 缓存,如果你安装了 systemd-resolved、dnsmasq 或 nscd 这类服务,才需要手动清理。
使用 systemd 的系统可以运行:
sudo systemd-resolve --flush-caches
或者(取决于发行版):
sudo resolvectl flush-caches
浏览器也有自己的DNS缓存
有些浏览器,比如 Chrome,自己也存着一份DNS记录。这时候即使系统清了,浏览器可能还是打不开。可以打开 Chrome 地址栏,输入:
chrome://net-internals/#dns
点击 “Clear host cache” 按钮,就能清理浏览器的DNS缓存。
下次遇到网站打不开、加载异常,不妨先试试这些清理命令,省时又省力,比反复刷新强多了。