阿杰,我给你整理一份 清除终端 DNS 本地缓存的方法,覆盖 Windows、Mac 和 Linux 系统,并说明注意事项。
一、为什么需要清除 DNS 缓存
- 当访问网站时,操作系统会缓存域名解析结果(IP 地址)
- 清除 DNS 缓存的作用:
- 解决域名解析错误
- 更新解析后的新 IP
- 排查网络连接问题
二、Windows 系统
1. 清除 DNS 缓存命令
ipconfig /flushdns
2. 操作步骤
- 打开 命令提示符(管理员模式)
- 输入命令:
ipconfig /flushdns
- 出现提示:
Successfully flushed the DNS Resolver Cache.
三、Mac 系统
不同 macOS 版本命令略有不同:
系统版本 | 命令 |
---|---|
macOS 10.15+(Catalina/Big Sur/Monterey) | sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder |
macOS 10.10–10.14 | sudo killall -HUP mDNSResponder |
macOS 10.9 | sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder |
macOS 10.6–10.8 | sudo dscacheutil -flushcache |
示例
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder
输入密码后,DNS 缓存被清除,无提示正常完成。
四、Linux 系统
Linux 下不同发行版和 DNS 服务略有区别:
1. 使用 systemd-resolved(Ubuntu 18.04+)
sudo systemctl restart systemd-resolved
2. 使用 resolvectl
(新系统)
sudo resolvectl flush-caches
3. 使用 nscd
(CentOS / Ubuntu)
sudo systemctl restart nscd
# 或
sudo /etc/init.d/nscd restart
4. 使用 dnsmasq
sudo systemctl restart dnsmasq
5. 验证缓存是否清除
dig www.example.com
- 第一次查询可能较慢,说明缓存已被刷新
五、浏览器 DNS 缓存
- 浏览器也会缓存 DNS,常见操作:
- Chrome:访问
chrome://net-internals/#dns
→ 点击 Clear host cache - Firefox:关闭浏览器再打开即可刷新 DNS
- Chrome:访问
六、总结
- Windows:
ipconfig /flushdns
- Mac:
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
- Linux:取决于 DNS 服务(systemd-resolved、nscd、dnsmasq)
- 浏览器缓存:单独刷新浏览器 DNS
发表回复