跳到主要内容

刷新 DNS

当您的本地 DNS 解析器缓存了域名到 IP 地址的映射时,您可能会遇到一个常见问题。当您尝试访问该域名时,实际上它使用的是旧的 IP 地址(缓存于您自己的计算机上),而不是去查找新的地址并找到正确的记录。

跳转到章节:

  • 什么是 DNS 缓存?
  • 刷新 DNS 有什么作用?
  • 如何在不同操作系统中刷新 DNS?

什么是 DNS 缓存?

在学习如何刷新 DNS 之前,您首先需要了解什么是 DNS 缓存。DNS 缓存是您的计算机操作系统、浏览器或路由器对您最近访问过的网站的记忆。它就像一个临时的信息容器(DNS 记录、IP 地址和主机名),您的计算机或浏览器用它来快速访问网站。这样,每次访问网站时,就不需要重新通过网站的实际主机服务器加载信息。DNS 缓存的这个过程使浏览器能够在您下次访问时快速加载网站。

要清除浏览器缓存,请参考这篇文章(英文):[How Do I Clear My Web Browser's Cache?](How Do I Clear My Web Browser's Cache?)


刷新 DNS 有什么作用?

请注意,虽然 DNS 缓存对于方便访问网站和减少流量非常有用,但它也有缺点。其中包括安全漏洞和网站内容显示错误。定期清除或刷新 DNS 可以防止这些问题。

本文将为您提供清除或刷新缓存 DNS 的步骤。


如何在不同操作系统中刷新 DNS?

Microsoft Windows 10

  1. 关闭您当前正在使用的应用程序,例如浏览器或电子邮件客户端。
  2. 同时按下 Windows 徽标键 + R 键,打开运行对话框。
  3. 在文本框中输入 cmd,然后点击确定。
  4. 当出现黑色命令行窗口时,输入以下命令并按回车:
    ipconfig /flushdns
  5. 重新启动您的应用程序(浏览器或电子邮件客户端)。

Microsoft Windows 8

  1. 关闭您当前正在使用的应用程序,例如浏览器或电子邮件客户端。
  2. 同时按下 Windows 徽标键 + R 键,打开运行对话框。
  3. 在文本框中输入 cmd,然后点击确定。
  4. 当出现黑色命令行窗口时,输入以下命令并按回车:
    ipconfig /flushdns
  5. 重新启动您的应用程序(浏览器或电子邮件客户端)。

Microsoft Windows Vista 和 Windows 7

  1. 关闭您当前正在使用的应用程序,例如浏览器或电子邮件客户端。
  2. 点击 开始 按钮,依次选择 所有程序 > 附件,找到 命令提示符
  3. 右键点击 命令提示符,选择 以管理员身份运行
  4. 当出现黑色命令行窗口时,输入以下命令并按回车:
    ipconfig /flushdns
  5. 重新启动您的应用程序(浏览器或电子邮件客户端)。

Microsoft Windows XP

  1. 关闭您当前正在使用的应用程序,例如浏览器或电子邮件客户端。
  2. 打开 开始 菜单,点击 运行
  3. 在文本框中输入 cmd,然后点击 确定
  4. 当出现黑色命令行窗口时,输入以下命令并按回车:
    ipconfig /flushdns
  5. 重新启动您的应用程序(浏览器或电子邮件客户端)。

Mac OS X

在执行以下步骤之前,请注意第 4 步中的命令仅适用于 Mac OS X 10.10 Yosemite,且不适用于之前的版本,因为该命令会随版本变化。建议您按照苹果官方说明检查您的系统版本号,并查找适用于您版本的命令。

  1. 关闭您当前正在使用的应用程序,例如浏览器或电子邮件客户端。
  2. 打开 应用程序 文件夹。
  3. 进入 实用工具,双击打开 终端
  4. 输入以下命令并按回车:
    sudo discoveryutil mdnsflushcache;sudo discoveryutil udnsflushcaches;say flushed
  5. 系统提示时输入 管理员用户名密码
  6. 重新启动您的应用程序(浏览器或电子邮件客户端)。

如果命令返回类似 Not found 的信息,请不用担心,继续重新启动您的应用程序即可。

OSX Daily 提供了不同版本 OSX 及其对应命令的优秀列表:

  • OSX 10.10 - 10.10.3
  • OSX 10.9 及更早版本

Linux

注意: 由于配置差异,不同的 Linux 发行版和版本可能有略微不同的命令。以下命令中的某一个很可能适用。

  1. 打开 root 终端窗口(在 Gnome 中按 Ctrl+T)。
  2. 输入以下命令并按回车:
    /etc/init.d/nscd restart

您可能需要根据安装情况使用 sudo:

sudo /etc/init.d/nscd restart

某些发行版支持以下命令:

sudo /etc/init.d/dns-clean start

或者支持以下命令:

sudo service nscd restart

有些安装可能将 NSCD 放在其他目录,例如:

/etc/rc.d/init.d/nscd restart

您可能需要查找其安装位置以执行正确的命令。

  1. 重新启动您的应用程序(浏览器或电子邮件客户端)。

相关主题

当您将 DNS 设置指向其他地方时会发生什么?

有时您会将 DNS 指向第三方提供商,例如为了提升网站速度或作为优化策略。您可以通过与他们建立账户并将 DNS 记录指向他们的服务器来实现。然而,请注意,DNS 记录的任何更改都需要一定时间同步,这个过程称为 传播