命令提示符中输入“ipconfig /flushdns”可
如何清除本地DNS缓存文件
Windows系统
(一)使用命令提示符(CMD)
- 打开命令提示符:
- 在Windows搜索栏中键入“cmd”。
- 右键单击“命令提示符”,然后选择“以管理员身份运行”,这将打开“命令提示符”窗口。
- 执行清除命令:
- 在命令行上,键入以下命令并按回车:
ipconfig /flushdns
- 成功后,系统将返回消息:“Windows IP配置,已成功刷新DNS解析缓存。”
- 在命令行上,键入以下命令并按回车:
(二)使用PowerShell
- 打开PowerShell:
- 按下Win + S键,输入“PowerShell”。
- 在开始菜单中点击“以管理员身份运行”选项。
- 执行清除命令:
- 在PowerShell窗口中输入“ClearDnsClientCache”并按Enter键。
- 执行命令成功后,不会看到任何消息,但可以通过再次查看DNS缓存来确认是否清除成功。
(三)创建批处理文件
- 创建文件:
- 按下Win + S键打开Windows搜索,输入“Notepad”并点击第一个搜索结果。
- 在记事本中输入以下命令:
cmd.exe /k ipconfig /flushdns
- 按下Ctrl + S保存文件,输入名称“flushDNS.bat”,并保持保存类型为“所有文件”。
- 运行批处理文件:
- 找到保存的批处理文件位置,双击它,命令提示符将启动并执行“/flushdns”命令。
- 输入“exit”并按Enter键关闭命令提示符窗口。
Linux系统
(一)使用systemdresolved服务
- 检查服务状态:
- 运行命令:
$ sudo systemctl isactive systemdresolved.service
- 如果服务正在运行,会显示“active”;否则显示“inactive”。
- 运行命令:
- 清除缓存:
- 如果服务正在运行,输入命令:
$ sudo systemdresolve flushcaches
- 成功后,该命令不会返回任何消息。
- 如果服务正在运行,输入命令:
(二)使用Dnsmasq
- 重启服务:
- 如果系统使用Dnsmasq作为缓存服务器,可以通过以下命令清除DNS缓存:
$ sudo systemctl restart dnsmasq.service
- 或者
$ sudo service dnsmasq restart
- 如果系统使用Dnsmasq作为缓存服务器,可以通过以下命令清除DNS缓存:
(三)使用NSCD
- 重启服务:
- 如果系统使用NSCD来缓存DNS,需要重新启动NSCD服务:
$ sudo systemctl restart nscd.service
- 或者
$ sudo service nscd restart
- 如果系统使用NSCD来缓存DNS,需要重新启动NSCD服务:
MacOS系统
(一)较新版本(如macOS 10.11及以后)
- 打开终端:
打开查找器,转到“应用程序 > 实用程序 > 终端”,这将打开终端窗口。
- 执行清除命令:
- 在命令行中,输入以下命令并按回车:
$ sudo killall HUP mDNSResponder
- 输入你的sudo密码,然后再次按回车,成功后,系统不会返回任何消息。
- 在命令行中,输入以下命令并按回车:
(二)早期版本
- macOS版本10.11和10.9:
- 运行以下两个命令:
$ sudo dscacheutil flushcache
$ sudo killall HUP mDNSResponder
- 运行以下两个命令:
- macOS版本10.10:
- 运行以下两个命令:
$ sudo discoveryutil mdnsflushcache
$ sudo discoveryutil udnsflushcaches
- 运行以下两个命令:
- macOS版本10.6和10.5:
- 运行命令:
$ sudo dscacheutil flushcache
- 运行命令:
浏览器DNS缓存
(一)Google Chrome
- 清除主机缓存:
- 打开一个新标签,在地址栏输入
chrome://netinternals/#dns
。 - 点击“清除主机缓存”按钮。
- 打开一个新标签,在地址栏输入
- 清除缓存和Cookie:
- 按下CTRL+Shift+Del打开“清除浏览数据”对话框。
- 选择一个时间范围(如“所有时间”),选中“Cookie和其他站点数据”和“缓存的图像和文件”框。
- 点击“清除数据”按钮。
(二)Mozilla Firefox
- 通过设置清除历史记录:
- 在右上角点击汉堡包图标☰打开菜单。
- 点击⚙ Options (Preferences)链接,单击左侧的“隐私和安全性”或“隐私”选项卡。
- 向下滚动到“History”部分,点击“Clear History…”按钮。
- 选择要清除的时间范围(如“所有内容”),选择所有框,然后点击“立即清除”。
- 临时禁用DNS缓存:
- 打开新标签,在地址栏输入
about:config
。 - 搜索
network.dnsCacheExpiration
,将值暂时设置为0,然后改回默认值。
- 打开新标签,在地址栏输入
相关问题与解答
(一)问题:为什么要清除本地DNS缓存?
- 原因:本地DNS缓存可能会过期或损坏,导致连接问题,定期清理DNS缓存可以降低DNS欺骗的风险,确保域名解析的准确性,特别是在更改DNS解析器或遇到网络问题时,清除DNS缓存可以帮助解决访问网站的问题。
(二)问题:清除DNS缓存后会影响上网速度吗?
- 影响:清除DNS缓存后,首次访问网站时可能会稍微变慢,因为计算机需要重新查询DNS服务器来获取网站的IP地址,一旦新的DNS信息被缓存,后续的访问速度将恢复正常。