DNS 设置后无法上网怎么办?从恢复网络到定位故障
简答:如果刚改完 DNS 就无法上网,最快的处理方法是先把 DNS 恢复为“自动获取”,重新连接网络,再检查 IP、默认网关和 DNS 查询。Windows 可依次运行 ipconfig /all、ping DNS 地址、nslookup 域名和 ipconfig /flushdns;若能解析域名但网页仍打不开,问题可能已不在 DNS。
定义:DNS 是把域名转换为 IP 地址的服务;修改 DNS 后无法上网,可能是 DNS 地址不可达、缓存异常、IPv6 或代理冲突,也可能是基础网络本身没有连通。
先做这一步:恢复自动 DNS 并确认网络范围
本文是面向普通用户的第三方使用指南,不代表任何服务或客户端的官方页面。刚改完 DNS 后断网,先不要继续叠加多个 DNS 地址,也不要立即重置整台设备。
- 在当前设备或路由器中,将 DNS 设置改回“自动获取”或“跟随网络”。
- 断开并重新连接 Wi-Fi、网线或蜂窝网络;手机可以先开启飞行模式,等待数秒后关闭。
- 分别打开两个或三个平时能访问的网站,确认是全部网站打不开,还是只有部分域名异常。
- 如果恢复自动 DNS 后仍然完全断网,优先检查 IP、默认网关、路由器和运营商连接,而不是继续更换 DNS。
| 现象 | 优先判断 | 下一步 |
|---|---|---|
| 所有网站和应用都打不开 | 可能没有有效 IP、网关不可达,或网络本身中断 | 检查 IP、网关,重连 Wi-Fi,再测试公网 IP |
| 能打开部分网站,部分域名打不开 | 可能是 DNS 查询、缓存、IPv6 或特定域名问题 | 使用 nslookup 对比查询结果 |
| 能 ping 公网 IP,但打不开域名 | 更像是 DNS 解析异常 | 恢复自动 DNS、清理缓存并重新查询 |
| 域名能解析,但网页仍打不开 | 不一定是 DNS,可能是 TCP、TLS、代理或目标服务问题 | 关闭代理或 VPN,换浏览器并检查目标网站状态 |
| 只有某个客户端无法连接 | 可能是客户端 DNS、TUN、规则或代理设置 | 查看客户端日志,暂时关闭自定义 DNS 或 TUN 测试 |
微软的 DNS 客户端排查顺序也是先检查 IP 配置,再检查网络连通性和 DNS 查询;因此“先恢复网络、再定位 DNS”通常比盲目更换地址更稳妥。参见 Microsoft DNS 客户端故障排除文档。
Windows:用 5 个命令判断到底是哪一层出错
以下命令在 Windows 命令提示符中执行。需要查看完整网络配置时,建议以管理员身份打开命令提示符;普通查询通常不需要管理员权限。
- 检查 IP、网关和 DNS:执行
ipconfig /all。确认当前网卡有有效 IPv4 地址、子网掩码、默认网关和 DNS 服务器。若出现自动分配地址、没有默认网关或 DNS 地址明显不对,先断开网络再重新连接。 - 重新获取 DHCP 配置:执行
ipconfig /renew。预期结果是网卡重新获得 IP、网关和 DNS;如果命令失败,先确认网卡已启用并且设备确实连上路由器。 - 测试基础网络:先执行
ping 默认网关地址,再执行ping 1.1.1.1或其他你确认可用的公网 IP。网关都无法访问时,问题通常不应只归因于 DNS。 - 测试域名解析:执行
nslookup example.com,把域名替换成实际打不开的网站。若出现超时或没有地址返回,重点检查 DNS 地址可达性、IPv6 DNS 和防火墙。 - 清理本地缓存:执行
ipconfig /flushdns,然后再次运行nslookup并打开网页。微软文档说明,该命令会清空 Windows DNS 客户端解析缓存。
| 测试结果 | 含义 | 处理建议 |
|---|---|---|
ipconfig /all 没有有效 IP 或网关 | DHCP、Wi-Fi、网线或路由器连接异常 | 重新连接网络,重启路由器,检查网卡状态 |
| 网关可 ping,公网 IP 不通 | 可能是路由器上行、运营商或防火墙问题 | 暂时关闭代理,检查其他设备是否同样断网 |
公网 IP 可通,nslookup 超时 | 更接近 DNS 地址不可达或 DNS 查询被阻断 | 恢复自动 DNS,或仅测试一个确认可用的 DNS |
nslookup 成功,网页仍打不开 | DNS 已返回结果,故障可能在连接、证书、代理或目标服务 | 关闭代理和 VPN,换浏览器并测试其他网站 |
命令参数和缓存行为可参考 Microsoft ipconfig 文档;DNS 客户端的 IP、ping、nslookup 和缓存检查方法可参考 Microsoft DNS 客户端排查文档。
macOS、Android 和 iPhone:按设备恢复 DNS
macOS
- 打开“系统设置”,进入“网络”。
- 选择当前使用的网络服务,点击“详细信息”,再进入“DNS”。
- 删除刚刚手动添加的 DNS 地址,或恢复为网络自动提供的设置。
- 保存后关闭并重新打开 Wi-Fi,再访问多个网站。
Apple 的 macOS 指南给出的入口是“系统设置—网络—网络服务—详细信息—DNS”,并支持添加或删除 IPv4、IPv6 DNS 地址。参见 Apple macOS DNS 设置说明。
Android
- 打开“设置”,搜索“私人 DNS”或进入“网络和互联网—私人 DNS”。
- 如果刚填写了提供商主机名,先改为“自动”;必要时可暂时选择“关闭”进行对比测试。
- 保存后关闭再打开 Wi-Fi,重新测试网页和应用。
不同厂商的菜单名称可能不同,Google 的 Android 帮助建议在设置中直接搜索“私人 DNS”;私人 DNS 只处理 DNS 查询和响应,不能替代完整网络连接。参见 Google Android 高级网络设置说明。
iPhone
- 打开“设置—无线局域网”,点击当前 Wi-Fi 右侧的信息按钮。
- 进入“配置 DNS”,将手动添加的地址删除,恢复为自动。
- 如果仍无法访问,选择“忽略此网络”后重新加入,并再次测试。
Apple 的 iPhone Wi-Fi 设置中可以从当前网络的信息页面进入 DNS、HTTP 代理等配置项;如果只在某个 Wi-Fi 下出问题,重新加入该网络有助于区分设备设置和路由器设置。参见 Apple iPhone Wi-Fi 设置说明。
路由器、IPv6、代理和浏览器安全 DNS仍有冲突时
如果多台设备在修改路由器 DNS 后同时无法上网,优先登录路由器管理页面,将“互联网设置、WAN、DHCP 或 DNS”中的手动地址恢复为自动,再保存并重启路由器。路由器菜单会因品牌和固件不同而变化,无法仅凭通用入口确认具体位置。
- 检查 IPv6:如果只修改了 IPv4 DNS,但设备仍通过 IPv6 获取另一组 DNS,可能出现同一设备在不同请求中使用不同解析路径。可以先恢复 IPv6 DNS 自动获取,再测试;不要在不了解企业或家庭网络要求时长期关闭 IPv6。
- 检查代理或 VPN:系统代理、客户端 TUN、浏览器代理和 VPN 可能接管 DNS。先暂时关闭其中一个,再重复
nslookup和网页测试,避免同时修改多个开关。 - 检查浏览器安全 DNS:如果只有某个浏览器打不开,查看浏览器的“安全 DNS、加密 DNS 或 DNS over HTTPS”设置,先恢复默认进行对比。
- 检查 Hosts 和安全软件:Windows 的 Hosts 文件、终端安全软件和防火墙可能直接影响域名解析或后续连接。不要随意删除未知条目,先备份文件并记录改动。
- 确认 DNS 解析不等于网站可用:
nslookup返回 IP,只能说明查询得到结果;网页还要继续经过 TCP、TLS 和 HTTP 等阶段,所以解析成功后仍打不开,不应继续无限更换 DNS。
如果只有一台设备异常,优先处理该设备;如果同一网络下的所有设备都异常,重启路由器并联系网络运营商更合适。若企业、校园或办公网络有指定 DNS,不要擅自替换,先向网络管理员确认。
最终验证:改回自动后如何确认已经恢复
- 确认设备获得有效 IP、默认网关和 DNS;Windows 使用
ipconfig /all,macOS 或手机查看当前网络详情。 - 确认默认网关可达;Windows 可执行
ping 默认网关地址。 - 确认 DNS 查询成功;Windows 执行
nslookup 实际打不开的域名。 - 分别打开一个常用网站、一个此前打不开的网站和一个需要登录的应用。
- 如果使用代理客户端,查看日志中是否出现 DNS timeout、connection refused、TLS error 或规则命中异常,并暂时关闭 TUN 或自定义 DNS 做对照。
- 记录最终使用的 DNS、网络类型、是否开启 IPv6、代理和 VPN。以后再次修改时只改一项,便于撤销和定位。
如果恢复自动 DNS 后仍无法上网,并且其他设备也无法访问,问题更可能位于路由器上行、运营商网络或网络策略;如果只有某个域名或应用失败,则继续按 DNS、连接、TLS 和应用层逐级检查。
常见问题
DNS 设置后无法上网,第一步应该做什么?
先把设备或路由器的 DNS 恢复为“自动获取”,重新连接网络,再检查 IP、默认网关和 DNS。不要一开始同时更换多个 DNS、开启 DoH 或修改 IPv6。
能 ping 通公网 IP,但打不开网站,是 DNS 坏了吗?
这通常说明基础网络至少部分可用,DNS 故障的可能性会上升,但不能仅凭 ping 结果下结论。继续用 nslookup 测试域名;如果能返回 IP,问题可能在代理、TLS、浏览器或目标网站。
Windows 清理 DNS 缓存的命令是什么?
在命令提示符中执行 ipconfig /flushdns。执行后重新运行 nslookup,并再次打开原本无法访问的域名。
Android 修改私人 DNS 后断网怎么办?
进入设置并搜索“私人 DNS”,先改为“自动”;如果仍然无法连接,可以暂时关闭进行对比。不同手机厂商的菜单名称可能不同。
iPhone 修改 DNS 后只有一个 Wi-Fi 无法上网怎么办?
进入“设置—无线局域网—当前网络信息”,打开 DNS 配置并恢复自动;仍无效时可忽略该网络后重新加入,并检查路由器是否也使用了手动 DNS。
DNS 查询成功后网页仍打不开,是否需要继续更换 DNS?
不建议立即继续更换。DNS 查询成功只代表域名解析阶段完成,还应检查代理、VPN、TUN、IPv6、浏览器安全 DNS、防火墙以及目标服务本身。