如何在 Linux 中刷新 DNS 缓存

DNS 或域名系统负责将网站名称解析为其各自的 IP 地址。 有多个 DNS 服务器,您可以选择要使用的一个。 因此,如果您在连接网站时遇到问题,或者您只想让您的 Ubuntu 机器看到 DNS 更改,您应该尝试刷新 DNS 缓存。 如果您对主机文件进行了更改,您还可以清除 Ubuntu 中的 DNS 缓存,并且您希望系统“看到”它而无需重新启动它。 好吧,如果您处于上述任何一种情况,并且您想清除 DNS 缓存,这里是如何在 Linux 中刷新 DNS 缓存。

笔记我正在使用 Ubuntu 16.10 “Yakkety Yak”系统来演示这些方法。 但是,该过程在大多数 Linux 发行版上应该是相似的。

2020 年在 Linux 中刷新 DNS 缓存

在开始我们的教程之前,让我们先看看您的机器上是否启用了 DNS 缓存。

检查是否启用了 DNS 缓存

在缓存 DNS 等方面,所有 Linux 发行版的行为方式都不相同。 例如,默认情况下,Ubuntu 不缓存 DNS。 在我们尝试清除 Linux 机器上的 DNS 缓存之前,让我们检查一下是否启用了缓存。 要在 Ubuntu 系统上执行此操作,您可以按照以下步骤操作:

1.启动终端,然后输入“ps斧头| grep dnsmasq“。

2. 在命令的输出中,您将能够看到一个名为“缓存大小“。 检查它的值。 如果该值为零,则表示缓存已禁用 系统上。

检查-dns-cache-enabled-step-2

笔记 如果要在 Linux 上启用 DNS 缓存,可以使用命令“sudo dnsmasq -c 150”来实现。 您可以使用任何数字代替 150,这基本上是 dnsmasq 可以缓存的条目数。

在 Ubuntu 中刷新 DNS 缓存

如果您的 Linux 系统正在缓存 DNS 条目,那么您可以尝试刷新 DNS 缓存以消除任何与 DNS 相关的问题。 要清除 Ubuntu 中的 DNS 缓存,您可以按照以下步骤操作:

1.启动终端(ctrl + alt + T),然后输入“sudo /etc/init.d/dns-clean 重启“。

刷新-dns-cache-in-linux

2.接下来,输入命令“sudo /etc/init.d/networking force-reload

清除-dns-cache-in-ubuntu

这将清除您在 Ubuntu 中的 DNS 缓存,如果您遇到的问题是由 DNS 问题引起的,那么它们现在应该已经消失了。

在 Linux 上的 DNS 服务中刷新 DNS 缓存

就像我说的,Ubuntu 默认情况下不缓存 DNS 条目,但是,如果您手动安装了 DNS 服务(例如 nscd),则可以清除其缓存。 下面给出了一些常见的DNS服务清除缓存的方法:

刷新 nscd DNS 缓存

  • 须藤 /etc/init.d/nscd 重启

刷新 nscd 缓存

刷新 dnsmasq DNS 缓存

  • 须藤 /etc/init.d/dnsmasq 重启

刷新-dnsmasq-缓存

刷新 BIND DNS 缓存

如果您使用 BIND,则可以使用以下命令之一清除 DNS 缓存:

  • sudo /etc/init.d/命名重启

刷新绑定缓存选项 1

  • 须藤 rndc 重启

刷新绑定缓存选项 2

  • 须藤 rndc 执行

刷新绑定缓存选项 3

BIND 9.3.0 及更高版本支持刷新特定域以及 LAN 或 WAN 的 DNS 缓存。 您可以使用以下命令来使用此功能:

  • 要清除特定域的 DNS 缓存,请使用“sudo rndc flushname beebom.com

刷新绑定缓存特定域

  • 要清除 LAN 的 DNS 缓存,请使用“sudo rndc 刷新局域网

刷新绑定缓存局域网

  • 要清除 WAN 的 DNS 缓存,请使用“sudo rndc 冲洗 wan

刷新绑定缓存wan

奖励:在 Ubuntu 中更改 DNS 设置

我们一直在讨论刷新 Ubuntu 中的 DNS 缓存,但是,在某些情况下,您可能只想更改 Ubuntu 中的 DNS 设置。 如果要更改 Ubuntu 中的 DNS 设置,可以使用 GUI 或通过终端进行。

使用 GUI 更改 DNS 设置

使用 GUI 更改 DNS 设置比使用终端更容易。 但是,如果您使用多个连接,则必须更改每个连接的 DNS 设置。 要使用 GUI 更改 DNS 设置,只需按照以下步骤操作:

1. 打开 系统设置,然后点击 网络。

开放系统设置并进入网络

2. 点击 网络名称旁边的箭头 你连接到。

单击箭头旁边的网络名称副本

3. 现在,点击 “设置”。 这将打开该连接的设置。

点击设置

4. 切换到 IPv4 选项卡,您会看到一个名为“其他 DNS 服务器“。 您可以在此字段中输入要使用的 DNS 服务器。 如果要输入多个 DNS 服务器,只需将它们用逗号分隔即可。

切换到 ipv4-tab-and-add-server

使用终端更改 DNS 设置

如果您不想使用 GUI,并且更喜欢使用终端更改 DNS 设置,您可以通过将名称服务器添加到 dnsmasq 配置文件来完成此操作。 但是,在 Ubuntu 系统中默认不安装 dnsmasq(dnsmasq-base,确实)。 所以,首先你必须 安装 dnsmasq 通过启动终端,并使用“sudo apt-get install dnsmasq“。

更改 DNS 设置步骤 1

  • 一旦你安装了 dnsmasq。 您可以使用“须藤纳米 /etc/dnsmasq.conf“。

更改 DNS 设置步骤 2

  • 在这里,您可以添加您的 DNS 服务器的 IP 地址,其中显示“在此处添加其他名称服务器“。

更改 DNS 设置步骤 3

还请参见:如何在 Mac 上启动 Live Linux USB(指南)

使用这些方法清除 Linux 中的 DNS 缓存

您可以使用这些方法中的任何一种来清除 Linux 系统中的 DNS 缓存。 DNS 缓存问题可能会导致诸如网页无法加载、系统无法识别名称服务器更改等问题。 刷新 DNS 缓存后,这些问题很可能会消失。 那么,您是否曾经不得不刷新 Linux 系统上的 DNS 缓存? 如果是这样,您使用了什么方法? 如果您知道清除 Linux 系统上的 DNS 缓存的任何其他方法,请在下面的评论部分告诉我们。

In relation :  如何在 WordPress 中创建卡片库