如何在谷歌浏览器中清空DNS缓存和Host缓存列表

发布:2026-10-16 15:30:52 阅读:424
Chrome DNS解析异常需三步清除:一、访问chrome://net-internals/#dns点击Clear host cache;二、访问chrome://net-internals/#sockets依次点击Close idle sockets和Flush socket pools;三、Windows执行ipconfig /flushdns(管理员权限),macOS执行sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder。

当你在谷歌浏览器中访问网站时突然出现“DNS_PROBE_FINISHED_NXDOMAIN”或域名解析到错误IP,极大概率是Chrome自身维护的DNS缓存与Host缓存已过期、冲突或被污染,必须清空这两类缓存才能恢复正确解析。

清除Chrome内置Host resolver cache

Chrome不依赖系统hosts文件的实时读取,而是启动时加载并长期缓存在内存中。修改了C:\Windows\System32\drivers\etc\hosts或/etc/hosts后不生效,就是因为这个缓存没清。

1、在Chrome地址栏中完整输入 chrome://net-internals/#dns 并按回车键。

2、等待页面完全加载,滚动至“Host resolver cache”区域下方,找到并单击 Clear host cache 按钮。

3、按钮点击后无任何弹窗或提示,但缓存已即时清空——这一步操作起来很简单,但必须做完才进入下一步,否则后续刷新无效。

重置网络连接池以释放旧Socket绑定

Chrome复用TCP连接提升速度,但若某个Socket仍绑着旧IP(比如hosts刚改完但连接未断),新DNS查询会被绕过。只清Host缓存不够,必须切断这些残留通道。

方法一:手动两步操作(推荐)

① 在地址栏输入 chrome://net-internals/#sockets 并回车。

② 页面加载后,先点击 Close idle sockets → 等待2秒 → 再点击 Flush socket pools。

方法二:快捷合并操作

直接在地址栏输入 chrome://net-internals/#sockets → 加载完成后,连续点击两次 Flush socket pools(第二次点击会强制覆盖未完全释放的连接状态)。

注意:Flush socket pools 不会关闭当前网页标签页,但所有后台连接(如自动更新、推送、预加载)将立即中断并重建。

同步刷新系统级DNS缓存

仅清理Chrome内部缓存无法解决跨层不一致问题——比如系统DNS服务仍返回旧IP,而Chrome又恰好复用了该结果。必须补上这最后一环,确保从内核到浏览器全链路统一。

Windows用户:

1、按 Win + R 打开运行框 → 输入 cmd → 按 Ctrl+Shift+Enter 以管理员身份启动命令提示符。

2、依次执行以下两条命令(每条后都需回车):

ipconfig /flushdns

ipconfig /registerdns

macOS用户:

打开终端,一次性粘贴并执行:

sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder

执行后若看到“已成功刷新DNS解析缓存”或无报错即表示完成。【必须以管理员/root权限执行,否则命令静默失败】