Linux 如何刷新 DNS 缓存

这篇具有很好参考价值的文章主要介绍了Linux 如何刷新 DNS 缓存。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Linux 如何刷新 DNS 缓存

全文:如何刷新 DNS 缓存 (macOS, Linux, Windows)

Unix Linux Windows 如何刷新 DNS 缓存 (macOS, FreeBSD, RHEL, CentOS, Debian, Ubuntu, Windows)

请访问原文链接:https://sysin.org/blog/how-to-flush-dns-cache/,查看最新版。原创作品,转载请保留出处。

作者主页:sysin.org


刷新或者清除 DNS 缓存,通常是因为有过时的 DNS 记录,需要立刻从服务端重新获取更新,常见于安全要求或者测试调试等场景。

linux刷新dns,Linux,linux,缓存,ubuntu,DNS,RHEL

1. Linux 刷新 DNS 缓存通用参考

Linux 可以运行 dnsmasq、nscd、unbound 或者 systemd-resolved 作为名称服务缓存守护进程 (sysin)。

dnsmasq

如果你的 DNS 服务器是用 dnsmasq 实现的,用下面这个命令:

service dnsmasq restart

如果 dnsmasq 服务不存在,先安装 dnsmasq,命令如下:

  • RHEL 及其兼容发行版:sudo yum install dnsmasq
  • Debian 及其兼容发行版:sudo apt install dnsmasq
  • 或者其他发行版对应的软件包管理命令

注:DNSmasq 是一个轻巧的,容易使用的 DNS 服务工具,它可以应用在内部网和 Internet 连接的时候的 IP 地址 NAT 转换,也可以用做小型网络的 DNS 服务。

nscd

如果是清除 nscd 上的 Cache,可重新启动 nscd 服务来达成清除 DNS Cache 的效果:

service nscd restart
# 或是
service nscd reload

如果 nscd 服务不存在,先安装 nscd,命令如下:

  • RHEL 及其兼容发行版:sudo yum install nscd
  • Debian 及其兼容发行版:sudo apt install nscd
  • 或者其他发行版对应的软件包管理命令

unboud

unbound 使用 unbound-control 命令来管理 DNS 缓存:

# 刷新所有缓存
unbound-control flush all
# 更多命令查看帮助
unbound-control -h

如果 unbound-control 无法执行,先安装 unbound,命令如下:

  • RHEL 及其兼容发行版:sudo yum install unbound
  • Debian 及其兼容发行版:sudo apt install unbound
  • 或者其他发行版对应的软件包管理命令

systemd-resolved

使用 resolvectl 命令刷新 DNS 缓存:

# Step 1. 查看 DNS 缓存状况
sudo resolvectl statistics

# Step 2. 清除 DNS 缓存,systemd-resolved daemon 默认在所有的 Ubuntu 系统上运行
sudo resolvectl flush-caches

# Step 3. 正在查看验证结果 (sysin)
sudo resolvectl statistics

如果 resolvectl 无法执行,先安装 systemd-resolved,命令如下:

  • RHEL 及其兼容发行版:sudo yum install systemd-resolved
  • Debian 及其兼容发行版:sudo apt install systemd-resolved
  • 或者其他发行版对应的软件包管理命令

BIND (服务端,与上述客户端 DNS 缓存不同)

如果是清除 BIND 服务器上的 CACHE,用这个命令:

rndc flush

如果 rndc 无法执行,先安装 bind,命令如下:

  • RHEL 及其兼容发行版:sudo yum install bind
  • Debian 及其兼容发行版:sudo apt install bind9
  • 或者其他发行版对应的软件包管理命令

以下对几个主流发行版单独说明。

2. RHEL

包括其兼容发行版:CentOS 及 AlmaLinux、Rocky Linux、Oracle Linux

RHEL 及其兼容发行版,默认不启用 DNS 查询缓存。

参看:Best practice for DNS caching in RHEL

常见解决方案:

  • dnsmasq
  • nscd(未来版本可能会移除)
  • unbound
  • systemd-resolved

dnsmasq

使用 dnsmasq 来启用 dns 缓存:

yum -y install dnsmasq
systemctl enable --now dnsmasq

清除缓存即重启 dnsmasq 服务:

systemctl restart dnsmasq

nscd

使用 nscd 来启用 dns 缓存:

yum -y install nscd
systemctl enable --now nscd

清除缓存即重启 nscd 服务:

systemctl restart nscd

3. Ubuntu

Ubuntu 默认运行 systemd-resolved 服务用于名称服务缓存,使用 resolvectl 命令调用 systemd-resolved.service 解析主机名、IP 地址、域名、DNS 资源记录和服务。

linux刷新dns,Linux,linux,缓存,ubuntu,DNS,RHEL

systemd-resolved.service 默认启用:

systemctl is-enabled systemd-resolved.service
enabled

刷新 DNS 缓存:

# Ubuntu 22.04 示例

# Step 1. 查看 DNS 缓存状况
sudo resolvectl statistics

# Step 2. 清除 DNS 缓存,systemd-resolved daemon 默认在所有的 Ubuntu 系统上运行
sudo resolvectl flush-caches

# Step 3. 正在查看验证结果 (sysin)
sudo resolvectl statistics

备注:Ubuntu 也可以配置使用 nscd 或者 dnsmasq。

注意:在旧版本中 resolvectl 命令曾经为 systemd-resolve,现已废弃。命令参数参数略有差异。

# Ubuntu 20.04.5 同时支持 resolvectl 和 systemd-resolve

# Step 1. 查看 DNS 缓存状况
sudo systemd-resolve --statistics

# Step 2. 清除 DNS 缓存,systemd-resolve daemon 默认在所有的 Ubuntu 系统上运行
sudo systemd-resolve --flush-caches

# Step 3. 正在查看验证结果 (sysin)
sudo systemd-resolve --statistics

4. Debian

Debian 默认没有启用 DNS 缓存机制(基本系统)。可以配置使用 systemd-resolved.service 来启用。

以下为 Debian 12 示例。

启用 systemd-resolved.serivce:

sudo apt install systemd-resolved

查看服务已经启用:

systemctl is-enabled systemd-resolved.service
enabled

刷新 DNS 缓存:

# Step 1. 查看 DNS 缓存状况
sudo resolvectl statistics

# Step 2. 清除 DNS 缓存,systemd-resolved daemon 默认在所有的 Ubuntu 系统上运行
sudo resolvectl flush-caches

# Step 3. 正在查看验证结果 (sysin)
sudo resolvectl statistics

备注:Debian 也可以配置使用 nscd 或者 dnsmasq。


上述操作通常也和浏览器刷新 DNS 缓存配合使用。文章来源地址https://www.toymoban.com/news/detail-641135.html

  • 如何清除浏览器的 DNS 缓存 (Chrome, Firefox, Safari)

到了这里,关于Linux 如何刷新 DNS 缓存的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 电脑怎么刷新本地dns缓存?刷新dns缓存的命令介绍

    电脑怎么进行刷新DNS缓存呢? 下面简单介绍下。  1、开始菜单,点击运行,并输入 cmd,打开命令窗口。  2、在命令窗口输入 ipconfig /displaydns 命令。 查看本机已经缓存的dns信息。 3、输入 ipconfig /flushdns  ,进行dns刷新,这样缓存就清除啦。 4、继续查看dns 信息,输入 ipcon

    2024年02月07日
    浏览(41)
  • MacOS刷新DNS缓存

    当你在浏览网站或者使用网络服务时,你的 MacOS 系统会自动保存(缓存)DNS 查询结果,以加速后续的访问。但是,有时候,DNS 缓存可能会造成问题,例如网站已经迁移到新的服务器,而你的系统仍然在尝试访问旧的地址。在这种情况下,你可能需要刷新(清空)你的 DNS 缓

    2024年02月20日
    浏览(36)
  • MacOS13刷新DNS缓存

    当你在浏览网站或者使用网络服务时,你的 MacOS 系统会自动保存(缓存)DNS 查询结果,以加速后续的访问。但是,有时候,DNS 缓存可能会造成问题,例如网站已经迁移到新的服务器,而你的系统仍然在尝试访问旧的地址。在这种情况下,你可能需要刷新(清空)你的 DNS 缓

    2024年02月06日
    浏览(37)
  • 头歌实践教学平台-Linux网络实战(一)-DNS配置(Ubuntu系统)——保姆级教程

    见者有缘,缘来好运。诚邀各位围观我的博客【CS_GUIDER】: 我的云服务器到期了,所以这里放两个部署在码云和 GitHub 的链接: https://wlei224.gitee.io (Gitee托管,速度极快) https://wl2o2o.github.io(Github托管,点击有╰ °▽° ╯) ** 我的开源博客涵盖了 八股文 、 Java基础 、 JVM

    2023年04月20日
    浏览(48)
  • 如何使用命令清除DNS缓存(图文)

    有时候大家可能会遇到这样的情况,电脑突然上不了网,或者存在某些网站打不开的情况,但别的网站又可以打开。对于这种情况很多是DNS缓存延时导致。 使用命令清理DNS缓存方法 1、由于需要用到命令,因为我们首先要调出电脑的命令对话框,方法是使用组合快捷键:Win

    2024年02月05日
    浏览(36)
  • Linux系统下如何修改配置 IP、网关、子网掩码、DNS 教程

    一、查看网卡信息 首先我们可以使用以下两个命令来查询网卡信息,看一下我们使用的是哪一个网卡 二、找到网卡配置文件 然后我们进入以下目录,找到上面我们用到的那个网卡文件 三、修改网卡信息 接着我们打开配置文件修改 有些新机子可能没有下面那些,我们可以新

    2024年02月12日
    浏览(38)
  • 如何配置Linux操作系统内DNS配置不被DHCP自动更新

    【问题原因】 NetworkManager是一个软件工具,旨在简化计算机网络的使用。NetworkManager可用于基于Linux内核和其他类Unix操作系统。目前主流Linux操作系统都使用NetworkManager进行网络自动化配置,包括IP自动获取和DNS配置。 通常情况下,租户创建网络时会定义该网络使用的DNS服务器

    2024年02月01日
    浏览(43)
  • Chrome Edge Firefox Safari 如何清除 DNS 缓存

    Chrome Edge Firefox Safari 如何清除 DNS 缓存 如何清除浏览器的 DNS 缓存 (Chrome, Firefox, Safari) Chrome Chromium Edge Firefox Safari clear DNS Cache, flush DNS cache 请访问原文链接:https://sysin.org/blog/clear-browser-dns-cache/,查看最新版。原创作品,转载请保留出处。 作者主页:sysin.org 天下只剩三种(主

    2024年02月11日
    浏览(47)
  • 如何清除浏览器的 DNS 缓存 (Chrome, Firefox, Safari)

    如何清除浏览器的 DNS 缓存 (Chrome, Firefox, Safari) Chrome Chromium Edge Firefox Safari clear DNS Cache, flush DNS cache 请访问原文链接:https://sysin.org/blog/clear-browser-dns-cache/,查看最新版。原创作品,转载请保留出处。 作者主页:sysin.org 天下只剩三种(主流)浏览器: Apple Safari Mozilla Firefox

    2024年02月11日
    浏览(45)
  • Linux下C/C++实现DNS查询(DNS QUERY)

    DNS 的全称是 Domain Name System 或者 Domain Name Service,它主要的作用就是将人们所熟悉的网址 (域名) “翻译”成电脑可以理解的 IP 地址,这个过程叫做 DNS 域名解析。域名是由一串用点分隔的名字组成的 Internet 上某一台计算机或计算机组的名称,用于在数据传输时对计算机的定位

    2024年02月05日
    浏览(27)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包