系统极客一直在努力
专注于操作系统及软件使用教程

操作系统和 Web 浏览器清除和刷新 DNS 缓存方法汇总

network

DNS 缓存是一个临时数据库,用于存储有关「以前」的 DNS 查询信息。换句话说,无论何时访问网站,您的 Windows、Linux 或 mac OS 操作系统和 Chrome、Firefox 等Web 浏览器都会记录域名和其相对应的 IP 地址。这样就消除了对远程 DNS 服务的重复查询需要,以允许操作系统和网页浏览器能够通过 DNS 缓存快速解析网站的 URL。

但是,在某些情况下,例如:要对网络连接问题进行排错时;或者更改了 DNS 服务器时,可能就需要手动清除和刷新 DNS 缓存。这样一来就可以清除掉已经缓存的 DNS 条目,再根据新配置的 DNS 设置来解析名称。

下面系统极客就为大家汇总介绍,如何在不同操作系统和 Web 浏览器中手动刷新 DNS 缓存。

Windows系统清除和刷新DNS缓存

清除 DNS 缓存的步骤对所有 Windows 版本都是相同的,您只需使用管理员权限打开「命令提示符」并运行以下命令即可:

1 在「开始」菜单中搜索 cmd——右击「命令提示符」——选择「以管理员身份运行」

2 执行以下命令就可以刷新 Windows 操作系统级别的 DNS 缓存:

ipconfig /flushdns

Linux系统清除和刷新DNS缓存

在 Linux 操作系统中,除非您安装并运行了 Systemd-Resolved、DNSMasq 或Nscd 等缓存服务,否则就不会存在操作系统级的 DNS 缓存。而且,刷新 DNS 缓存的过程或步骤会因 Linux 发行版和您正在使用的缓存服务而各异。

刷新Systemd Resolved缓存

大多数现代 Linux 发行版,如 Ubuntu 18.04 等都使用 Systemd Resolved 服务来缓存 DNS 条目。

1 在「终端」中执行以下命令确定服务是否正在运行:

sudo systemctl is-active systemd-resolved.service

如果服务正在运行,则命令将打印出活动状态,否则您将看到非活动状态。

2 要清除 Systemd Resolved DNS 缓存,请执行以下命令:

sudo systemd-resolve --flush-caches

刷新DNSMasq缓存

Dnsmasq 是一款轻量级的 DHCP 和 DNS 服务器,如果您的系统使用 DNSMasq 作为缓存服务器,要清除 DNS 缓存,您需要在「终端」中执行以下命令:

sudo systemctl restart dnsmasq.service

sudo systemctl restart dnsmasq.service

来重启 Dnsmasq 服务。

刷新Nscd缓存

Nscd 是一个缓存守护进程,它是大多数基于 RedHat 的 Linux 发行版所的首选 DNS 缓存系统。

如果您的 Linux 系统使用 Nscd,要清除 DNS 缓存,您需要在「终端」中执行以下命令:

sudo systemctl restart nscd.service

sudo service nscd restart

来重启 Nscd 服务。

macOS系统清除和刷新DNS缓存

在不同版本的 macOS 系统中,刷新 DNS 缓存的方法和命令会略有不同。在最新版本的 macOS 中清理 DNS 缓存可以在「终端」中执行以下命令:

sudo killall -HUP mDNSResponder

对于早期版本的 macOS,刷新 DNS 缓存的命令是不同的:

  • 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

Web浏览器清理和刷新DNS缓存

大多数现代 Web 浏览器都有内置的 DNS 客户端,以防止每次访问网站时重复进行 DNS 查询。

Google Chrome清理DNS缓存

要清除 Google Chrome 浏览器的 DNS 缓存,请执行以下步骤:

1 地址栏中执行 chrome://net-internals/#dns 打开清理页面

2 点击「Clear host cache」按钮即可清除 Chrome 内置的 DNS 缓存条目

此方法同时适用于所有基于 Chrome 的浏览器,包括 Chromium、Vivaldi 和Opera 等。

FireFox清理DNS缓存

要清除 FireFox 浏览器的 DNS 缓存,请执行以下步骤:

1 FireFox 地址栏中执行 about:config 打开清理页面

2 搜索 network.dnsCacheExpiration 暂时将其值设置为 0,然后单击「确定」——再改回其原有值 60

3 搜索 network.dnsCacheEntries 暂时将其值设置为 0,然后单击「确定」——再改回其原有值 400

 

打赏
分享到: 更多 (0)

猜你喜欢

评论 3

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #2

    如果没记错的话,之前有片文章专门写的是chrome浏览器的清除DNS缓存,今天这篇文章算是集齐了

    • 可以招唤神龙了……

      海猴子6天前回复
  2. #1

    赞,这个清理 DNS 缓存的文章足够用了,博主非常细心。

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏