如何在 macOS、Windows 和 Linux 中刷新 DNS 缓存?
介绍
当今世界,互联网已成为我们日常生活中不可或缺的一部分。从工作到娱乐,我们都依赖它,我们访问的每个网站都通过其唯一的 IP 地址进行识别。然而,记住这些 IP 地址即使不是不可能,也是很困难的。
这就是域名系统 (DNS) 的用武之地。它将这些数字 IP 地址转换为易于记忆的可读域名。
DNS缓存说明
当计算机或设备连接到互联网或网络时,它会在其内存缓存中保存 DNS 信息的副本,称为 DNS 缓存。此缓存的目的是加快未来对同一域名的请求,并通过避免重复查找来减少网络流量。
DNS 缓存存储域名、对应的 IP 地址以及用户之前请求的其他相关数据等信息。
刷新 DNS 缓存的重要性
尽管该系统很有用,但有时缓存的信息可能会过时或损坏,这可能会给尝试连接到网站或网络的用户带来问题。例如,如果您尝试访问最近更改了托管提供商并更新了 IP 地址的网站,但您的系统仍保留 DNS 缓存中的旧地址信息,那么您将无法访问该网站。
如何在 macOS 中刷新 DNS 缓存
使用终端命令
使用终端命令刷新 macOS 上的 DNS 缓存是清除任何过时 DNS 条目的简单而有效的方法。以下是通过终端命令行刷新 DNS 缓存的分步说明。
从应用程序文件夹中打开终端应用程序,或者在 Spotlight 中搜索它。
输入以下命令: sudo Killall -HUP mDNSResponder
按 Enter 键并在出现提示时输入您的管理员密码。
输入管理员密码后,再次按 Enter 键。就是这样!
您已使用 macOS 上的终端成功刷新了 DNS 缓存。
使用系统偏好设置
或者,macOS 用户还可以通过系统偏好设置刷新 DNS 缓存。
从 Apple 菜单或通过在 Spotlight 中搜索来打开“系统偏好设置”。
转到网络 > 高级 > DNS > 单击“DNS”选项卡
v单击“DNS 服务器”下 IP 地址前面的“减号”(-) 按钮
最后点击“应用”然后“确定”
就是这样!您已通过 macOS 上的系统首选项成功刷新 DNS 缓存。视觉辅助的屏幕截图 -
如何在 Windows 中刷新 DNS 缓存
使用命令提示符
在 Windows 中刷新 DNS 缓存的最常见方法之一是使用命令提示符。为此,只需按照以下分步说明进行操作即可 -
单击屏幕左下角的“开始”菜单图标。
在搜索栏中输入“cmd”。
右键单击“命令提示符”并选择“以管理员身份运行”。
在命令提示符中键入“ipconfig /flushdns”,然后按 Enter。
您应该会看到一条消息,确认您的 DNS 缓存已成功刷新。
为了确保您已正确刷新 DNS 缓存,使用 ipconfig 命令进行检查会很有帮助。刷新缓存后,只需在命令提示符中输入“ipconfig /displaydns”,您应该会看到一个空列表,表明您的 DNS 缓存已被清除。
使用PowerShell
在 Windows 中刷新 DNS 缓存的另一种方法是使用 PowerShell。虽然此方法可能不如使用命令提示符常用,但对于某些用户来说,它仍然是一个有用的替代方法。
请遵循以下简单步骤 -
单击屏幕左下角的“开始”菜单图标。
在搜索栏中输入“powershell”。
右键单击“Windows PowerShell”并选择“以管理员身份运行”。
在 PowerShell 中键入“Clear-DnsClientCache”并按 Enter。
您应该会看到一条消息,确认您的 DNS 缓存已成功清除。
与通过命令提示符刷新一样,您可以使用 PowerShell 检查 DNS 缓存是否已正确清除。刷新缓存后,只需在 PowerShell 中输入“ipconfig /displaydns”,您应该会看到一个空列表,表明您的 DNS 缓存已被清除。
如何在 Linux 中刷新 DNS 缓存?
刷新 nscd 守护进程缓存
可以通过多种方法刷新 Linux 上的 DNS 缓存。其中一种方法是刷新 nscd 守护进程缓存。 nscd(名称服务缓存守护进程)是一项缓存并加速 DNS 查找的系统服务。
但是,有时它可能会导致缓存信息过时或不正确,从而导致访问某些网站时出现问题。因此,有时刷新 nscd 缓存变得至关重要。
为此,首先打开终端并输入命令“sudo systemctl restart nscd.service”。这将重新启动名称服务缓存守护程序并清除主机名或 IP 地址的所有缓存条目。
sudo systemctl restart nscd.service
刷新系统解析的缓存
在 Linux 上刷新 DNS 缓存的另一种方法是使用 systemd-resolved。这是一项通过 D-Bus 接口向本地应用程序提供名称解析的服务。
它还维护已解析名称和查询的缓存。要刷新系统解析的 DNS 缓存,请打开终端并输入“sudo systemd-resolve --flush-caches”。
sudo systemd-resolve --flush-caches
这将从其缓存中清除正(成功)和负(不成功)解析的条目。成功完成后,您应该看到类似于“刷新缓存...”的输出。
您可以通过运行“sudo systemd-resolve --statistics”来验证是否已清除所有缓存,该命令显示有关系统解析的当前状态的统计信息,包括缓存条目计数。
sudo systemd-resolve --statistics
通过遵循上面提到的这两种方法,即刷新 nscd 守护进程缓存和刷新系统解析的缓存,您将能够成功刷新 Linux 上的 DNS 缓存并解决任何与 DNS 相关的问题。
排除刷新 DNS 缓存后的常见问题
刷新 DNS 缓存后无互联网连接:原因和解决方案
用户刷新 DNS 缓存后面临的最常见问题之一是互联网连接丢失。出现这种情况是因为系统忘记了以前访问过的域名的 IP 地址,并且无法再次找到它们。首先要做的就是通过重置路由器或调制解调器来检查它们是否存在问题。
如果您的网络没有问题,您可以尝试重新启动设备或清除浏览器上的 Cookie 和缓存。如果这些解决方案不起作用,您可能需要检查系统中的 DNS 服务器设置是否存在问题。
刷新 DNS 缓存后的 DNS 解析问题
用户在刷新 DNS 缓存后面临的另一个常见问题是 DNS 解析问题。当系统尝试将域名解析为 IP 地址时未收到来自其配置的名称服务器的响应时,就会发生这种情况。
要解决此问题,请首先检查您的网络连接是否稳定,然后尝试从终端或命令提示符 ping 不同的网站以测试连接。如果连接测试失败,则 /etc/resolv.conf 文件(在 Linux/macOS 上)或 TCP/IP 设置(在 Windows 上)中的名称服务器地址配置可能存在问题。
结论
在 macOS、Windows 和 Linux 中刷新 DNS 缓存是一个简单的过程,可以通过清除过时或损坏的 DNS 缓存条目来提高设备的网络性能。但是,用户在执行此过程后可能会遇到故障排除问题。通过执行本文中概述的步骤,您可以快速解决这些问题并重新顺利浏览互联网。
请记住,在假设您的系统存在问题之前,请务必仔细检查您的配置和连接。浏览愉快!