Windows DNS缓存刷新命令:CMD、PowerShell与验证方法
简答: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 命令说明
| 目的 | 命令 | 适用入口 | 作用 |
|---|---|---|---|
| 清除本机 DNS 缓存 | ipconfig /flushdns | 命令提示符、运行窗口 | 清空 Windows DNS 客户端解析器缓存 |
| 用 PowerShell 清除本机缓存 | Clear-DnsClientCache | PowerShell | 删除 DNS 客户端缓存,官方说明其效果等同于 ipconfig /flushdns |
| 查看本机缓存 | ipconfig /displaydns | 命令提示符 | 显示 DNS 客户端解析器缓存内容 |
| 测试域名解析 | nslookup example.com | 命令提示符、PowerShell | 查询域名当前返回的解析结果 |
| 刷新 DHCP 地址 | ipconfig /releaseipconfig /renew | 命令提示符 | 释放并重新获取 DHCP 配置,不等同于刷新 DNS 缓存 |
普通 Windows 电脑通常只需要第一行命令。不要一开始就连续执行 /release、/renew、网络重置等操作,因为这些命令处理的是 IP 地址或网络配置,并不是同一个问题。
三种执行方法:CMD、运行窗口和 PowerShell
方法一:管理员命令提示符
- 打开“开始”菜单,搜索“命令提示符”。
- 右键点击“命令提示符”,选择“以管理员身份运行”。
- 输入
ipconfig /flushdns,按 Enter。 - 关闭窗口后重新打开浏览器,再访问原来无法打开的域名。
Microsoft Support 将“以管理员身份打开命令提示符”列为 Windows 网络排查中的 DNS 缓存刷新步骤,并建议在网络问题仍存在时继续检查 DNS 服务器和代理设置。查看 Microsoft Support 的 Windows 网络排查流程
方法二:运行窗口
- 按
Win + R打开“运行”。 - 输入
cmd,按 Enter 打开命令提示符。 - 再执行
ipconfig /flushdns。
如果运行窗口打开的是普通权限的命令提示符,命令仍可能可以执行;遇到权限提示或执行结果不明确时,改用“命令提示符(管理员)”重试。不要把“运行窗口”本身误认为另一条 DNS 命令,它只是打开命令行工具的入口。
方法三:PowerShell
- 打开“开始”菜单,搜索 PowerShell。
- 根据当前账户权限,选择普通 PowerShell 或“以管理员身份运行”。
- 输入
Clear-DnsClientCache,按 Enter。
Microsoft Learn 的 DnsClient 文档说明,Clear-DnsClientCache 会清除 DNS 客户端缓存,运行效果等同于 ipconfig /flushdns。查看 Clear-DnsClientCache 官方文档
刷新后怎么确认真的生效?按这三步验证
刷新命令执行完并不代表网页一定能够打开。它只清理了本机缓存,下一次解析仍可能受到当前 DNS 服务器、路由器缓存、浏览器缓存或域名服务器状态影响。建议按以下顺序验证。
- 先查看本机当前缓存:执行
ipconfig /displaydns。该命令用于显示 DNS 客户端解析器缓存内容。如果刚清理完成,缓存可能为空或只在之后访问域名时重新出现。Microsoft Learn 对 /displaydns 的说明 - 再直接查询域名:执行
nslookup example.com,把example.com替换成实际域名,观察是否返回地址、是否超时,以及使用的是哪个 DNS 服务器。 - 最后重新测试应用:关闭受影响的网页标签,重新打开浏览器或重新启动相关应用。如果只有一个浏览器打不开,而其他程序可以访问,可继续检查浏览器自己的 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 家用或办公电脑,建议采用这一条最短流程:
- 以管理员身份打开命令提示符。
- 执行
ipconfig /flushdns。 - 执行
nslookup 要查询的域名。 - 根据结果判断是本机缓存问题,还是 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>。