Birds – Flying beyond the wall

Windows DNS缓存刷新命令:CMD、PowerShell与验证方法

更新于 2026-11-08 · birds.mom

简答:Windows 最常用的 DNS 缓存刷新命令是 <code>ipconfig /flushdns</code>。以管理员身份打开命令提示符,执行后再用 <code>nslookup 域名</code> 验证;如果使用 PowerShell,也可以运行 <code>Clear-DnsClientCache</code>。

定义:Windows DNS缓存刷新,是清除本机 DNS 客户端解析器缓存,让系统重新向当前配置的 DNS 服务器查询域名记录;它不会自动更换 DNS 服务器,也不会清理路由器或远端 DNS 服务器缓存。

先用这一条:Windows DNS缓存刷新命令速查

如果你的问题是网页打不开、域名解析错误,或者刚修改了域名记录但 Windows 仍然访问旧地址,先打开“命令提示符(管理员)”,执行下面的命令:

ipconfig /flushdns

Microsoft Learn 将 /flushdns 定义为刷新并重置 DNS 客户端解析器缓存;该命令适用于 Windows 10、Windows 11,以及列出的 Windows Server 版本。查看 Microsoft Learn 的 ipconfig 命令说明

Windows DNS缓存相关命令对照
目的命令适用入口作用
清除本机 DNS 缓存ipconfig /flushdns命令提示符、运行窗口清空 Windows DNS 客户端解析器缓存
用 PowerShell 清除本机缓存Clear-DnsClientCachePowerShell删除 DNS 客户端缓存,官方说明其效果等同于 ipconfig /flushdns
查看本机缓存ipconfig /displaydns命令提示符显示 DNS 客户端解析器缓存内容
测试域名解析nslookup example.com命令提示符、PowerShell查询域名当前返回的解析结果
刷新 DHCP 地址ipconfig /release
ipconfig /renew
命令提示符释放并重新获取 DHCP 配置,不等同于刷新 DNS 缓存

普通 Windows 电脑通常只需要第一行命令。不要一开始就连续执行 /release、/renew、网络重置等操作,因为这些命令处理的是 IP 地址或网络配置,并不是同一个问题。

三种执行方法:CMD、运行窗口和 PowerShell

方法一:管理员命令提示符

  1. 打开“开始”菜单,搜索“命令提示符”。
  2. 右键点击“命令提示符”,选择“以管理员身份运行”。
  3. 输入 ipconfig /flushdns,按 Enter。
  4. 关闭窗口后重新打开浏览器,再访问原来无法打开的域名。

Microsoft Support 将“以管理员身份打开命令提示符”列为 Windows 网络排查中的 DNS 缓存刷新步骤,并建议在网络问题仍存在时继续检查 DNS 服务器和代理设置。查看 Microsoft Support 的 Windows 网络排查流程

方法二:运行窗口

  1. 按 Win + R 打开“运行”。
  2. 输入 cmd,按 Enter 打开命令提示符。
  3. 再执行 ipconfig /flushdns。

如果运行窗口打开的是普通权限的命令提示符,命令仍可能可以执行;遇到权限提示或执行结果不明确时,改用“命令提示符(管理员)”重试。不要把“运行窗口”本身误认为另一条 DNS 命令,它只是打开命令行工具的入口。

方法三:PowerShell

  1. 打开“开始”菜单,搜索 PowerShell。
  2. 根据当前账户权限,选择普通 PowerShell 或“以管理员身份运行”。
  3. 输入 Clear-DnsClientCache,按 Enter。

Microsoft Learn 的 DnsClient 文档说明,Clear-DnsClientCache 会清除 DNS 客户端缓存,运行效果等同于 ipconfig /flushdns。查看 Clear-DnsClientCache 官方文档

刷新后怎么确认真的生效?按这三步验证

刷新命令执行完并不代表网页一定能够打开。它只清理了本机缓存,下一次解析仍可能受到当前 DNS 服务器、路由器缓存、浏览器缓存或域名服务器状态影响。建议按以下顺序验证。

  1. 先查看本机当前缓存:执行 ipconfig /displaydns。该命令用于显示 DNS 客户端解析器缓存内容。如果刚清理完成,缓存可能为空或只在之后访问域名时重新出现。Microsoft Learn 对 /displaydns 的说明
  2. 再直接查询域名:执行 nslookup example.com,把 example.com 替换成实际域名,观察是否返回地址、是否超时,以及使用的是哪个 DNS 服务器。
  3. 最后重新测试应用:关闭受影响的网页标签,重新打开浏览器或重新启动相关应用。如果只有一个浏览器打不开,而其他程序可以访问,可继续检查浏览器自己的 DNS 或缓存设置。

Microsoft 的 DNS 客户端排查文档建议在解析失败时使用 nslookup 测试域名,并结合 ipconfig /displaydns 检查本机是否缓存了失败结果;必要时再执行 ipconfig /flushdns。查看 Microsoft Learn 的 DNS 客户端排查步骤

验证结果与下一步
现象更可能说明下一步
nslookup 能返回地址,浏览器仍打不开可能不是本机 DNS 缓存问题检查代理、浏览器缓存、TLS、网络连接和目标网站状态
nslookup 超时当前 DNS 服务器或网络路径未正常响应用 ipconfig /all 查看 DNS 服务器,再测试网络连通性
返回旧地址本机以外的缓存或 DNS 服务器仍在返回旧记录对比其他 DNS 服务器或等待相关记录 TTL 到期,不要只重复刷新本机缓存
只有某台电脑异常本机配置、缓存、代理或客户端服务存在差异对比正常设备的 DNS 服务器、代理和解析结果

命令无效或刷新后仍打不开网页怎么办?

1. 先确认你清理的是“客户端缓存”

普通电脑使用的是本机 DNS 客户端缓存,因此优先使用 ipconfig /flushdns 或 Clear-DnsClientCache。Windows Server 如果同时承担 DNS 服务器角色,服务器对外提供记录时可能还存在服务器端缓存,这与服务器自身作为客户端查询域名时的本地缓存不是一回事。

Microsoft 的 DNS 服务器排查文档区分了两种场景:服务器作为 DNS 客户端时使用 Clear-DnsClientCache;需要清理 DNS 服务器角色缓存时,才考虑管理权限下的 dnscmd /clearcache 或 Clear-DnsServerCache。普通 Windows 用户不要把服务器命令当作常规电脑清缓存命令。查看 Microsoft Learn 的 DNS 服务器缓存说明

2. 用 ipconfig /all 查看当前 DNS 服务器

如果刷新后所有域名都无法解析,问题可能在 DNS 服务器地址、默认网关或网络连接,而不是缓存。执行:

ipconfig /all

重点查看当前使用中的网络适配器、IPv4 地址、默认网关和 DNS Servers。Microsoft 的 DNS 客户端排查流程也要求先核对这些 TCP/IP 配置,再继续进行连通性和解析测试。

3. 不要混淆 DNS 缓存、浏览器缓存和路由器缓存

  • 本机 DNS 客户端缓存:用 ipconfig /flushdns 或 Clear-DnsClientCache。
  • 浏览器缓存:需要在浏览器设置中清理,或完全退出后重新打开。
  • 路由器缓存:由路由器系统维护,本机命令通常不会清理它。
  • 远端 DNS 服务器缓存:由对应 DNS 服务或域名管理方维护,本机刷新不能直接改变。

因此,刷新命令无效并不一定代表命令执行失败。若 nslookup 返回的结果已经改变,而浏览器仍然异常,应把排查范围转向浏览器、代理、网络连接或应用本身。

Windows 10、Windows 11 与 Windows Server 的适用范围

Microsoft Learn 当前的 ipconfig 文档列出 Windows 10、Windows 11,以及 Windows Server 2016、2019、2022 和 2025 等适用版本。命令格式仍以当前系统实际支持的帮助信息为准,可输入 ipconfig /? 查看本机参数说明。

对于 Windows 10 和 Windows 11 家用或办公电脑,建议采用这一条最短流程:

  1. 以管理员身份打开命令提示符。
  2. 执行 ipconfig /flushdns。
  3. 执行 nslookup 要查询的域名。
  4. 根据结果判断是本机缓存问题,还是 DNS 服务器、代理或网络连接问题。

对于 Windows Server,先确认服务器是否运行 DNS Server 角色。如果只是服务器自身访问外部域名,按客户端缓存排查;如果服务器正在为其他设备提供 DNS 服务,再根据服务器角色和管理范围选择对应的服务器缓存命令。

常见问题

Windows DNS缓存刷新最常用的命令是什么?

最常用的是 <code>ipconfig /flushdns</code>。建议以管理员身份打开命令提示符,执行后再用 <code>nslookup 域名</code>检查解析结果。

Clear-DnsClientCache 和 ipconfig /flushdns 有什么区别?

两者都用于清除本机 DNS 客户端缓存。Microsoft 官方 PowerShell 文档说明,<code>Clear-DnsClientCache</code> 的效果等同于 <code>ipconfig /flushdns</code>,区别主要在于使用的命令行入口不同。

刷新 DNS 缓存后为什么网页还是打不开?

刷新只处理本机 DNS 客户端缓存,不会自动修复 DNS 服务器、路由器、浏览器、代理或目标网站问题。先运行 <code>nslookup 域名</code>,再用 <code>ipconfig /all</code> 查看 DNS 服务器和网关配置。

是否需要同时执行 ipconfig /release 和 /renew?

不一定。<code>/release</code> 和 <code>/renew</code> 处理 DHCP 地址配置,不是 DNS 缓存刷新命令。只有在 IP 地址、网关或 DHCP 配置异常时,才考虑将它们作为后续排查步骤。

Windows Server 应该使用 Clear-DnsServerCache 吗?

只有当服务器承担 DNS Server 角色、需要清理其对外提供解析时,才考虑服务器缓存命令。服务器自身作为客户端查询域名时,应区分使用 <code>Clear-DnsClientCache</code>。

相关阅读

参考资料

  1. Microsoft Learn:ipconfig 命令
  2. Microsoft Support:修复 Windows Wi-Fi 连接问题
  3. Microsoft Learn:Clear-DnsClientCache
  4. Microsoft Learn:DNS 客户端排查
  5. Microsoft Learn:DNS 服务器排查