在浏览互联网时,我们通常会输入易于记忆的域名(如 www.google.com),但计算机之间通信依靠的是IP地址,域名系统(DNS)就像互联网的电话簿,负责将这些域名翻译成对应的IP地址,为了加快访问速度,操作系统和浏览器会将最近查询过的DNS记录保存在本地,这就是DNS缓存,这个“电话簿”有时会变得陈旧或出错,导致网络访问异常,我们就需要“请出”DNS缓存,即清除它,让系统重新获取最新的DNS信息。

为何需要“请出”DNS缓存?
清除DNS缓存是解决许多网络问题的有效手段,以下是一些常见场景:
- 网站迁移或IP变更:当您访问的网站更换了服务器,其IP地址会改变,但您的本地DNS缓存中可能还保存着旧的IP地址,导致无法访问或访问到错误的网站。
- DNS劫持或污染:在某些情况下,恶意软件或网络攻击可能会篡改您的DNS缓存,将您导向钓鱼网站,清除缓存可以移除这些恶意条目。
- 解决特定网络错误:浏览器中出现的“DNS_PROBE_FINISHED_NXDOMAIN”或“Server not found”等错误,常常可以通过刷新DNS缓存来解决。
- 开发与测试需求:网站开发者在修改了域名的DNS解析后,需要清除本地缓存来立即验证修改是否生效。
如何在不同操作系统中清除DNS缓存?
不同操作系统的清除方法各不相同,但都非常简单,以下是最主流操作系统的操作指南。
Windows 系统
对于Windows 10和Windows 11用户,操作步骤如下:
- 按下
Win+R键,打开“运行”对话框。 - 输入
cmd并按下Ctrl+Shift+Enter,以管理员身份运行命令提示符。 - 在黑色的命令行窗口中,输入以下命令后按回车:
ipconfig /flushdns - 系统会提示“已成功刷新 DNS 解析缓存”。
macOS 系统
macOS的命令因版本而异,但近年来趋于统一,您需要通过“终端”应用来执行命令。
| macOS 版本 | 清除DNS缓存的命令 |
|---|---|
| Monterey (12) 及更高版本 | sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder |
| Big Sur (11) | sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder |
| Catalina (10.15) | sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder |
| Mojave (10.14) | sudo killall -HUP mDNSResponder; sleep 2 |
操作时,打开“终端”(位于“应用程序” > “实用工具”),输入对应版本的命令,然后按回车,系统会要求您输入管理员密码(输入时密码不会显示),输入后再次按回车即可。
Linux 系统
Linux发行版众多,使用的DNS缓存服务也不同,最常见的是 systemd-resolved 和 nscd。

-
对于使用 systemd-resolved 的系统(如 Ubuntu 18.04+): 在终端中输入:
sudo systemctl restart systemd-resolved或者使用较新的命令:
sudo resolvectl flush-caches -
对于使用 nscd (Name Service Cache Daemon) 的系统: 在终端中输入:
sudo systemctl restart nscd或者:
sudo /etc/init.d/nscd restart
清除DNS缓存后,您首次访问某个网站时可能会感觉比平时慢一点点,因为系统需要重新向DNS服务器查询并记录新的IP地址,但之后,访问速度会恢复正常,掌握清除DNS缓存的方法,是每个互联网用户必备的基础网络故障排查技能,它能快速、安全地解决许多看似棘手的连接问题。
相关问答 (FAQs)
Q1: 清除DNS缓存会删除我的浏览历史记录或个人数据吗?

A: 不会,清除DNS缓存只影响域名到IP地址的本地翻译记录,它是一个临时的、系统层面的技术数据,这个操作与您的浏览器历史记录、下载文件、Cookie或任何个人文件完全无关,因此是绝对安全的,不会导致任何个人数据丢失。
Q2: 我已经清除了DNS缓存,但网站仍然无法访问,该怎么办?
A: 如果清除DNS缓存后问题依旧,可以尝试以下进阶步骤:1)刷新浏览器自身的DNS缓存(在开发者工具的网络选项中通常有禁用缓存的选项,或直接重启浏览器);2)检查并修改本地hosts文件,确保没有被错误条目劫持;3)尝试更换公共DNS服务器(如Google的8.8.8.8或Cloudflare的1.1.1.1);4)重启您的路由器和电脑,这能刷新整个局域网的网络状态,如果问题仍然存在,则可能是网站服务器本身的问题或您的网络服务提供商(ISP)出现了故障。