上网时弹出DNS解析异常、公网连接失败这类提示,很多人第一反应就是路由器坏了或是宽带欠费。这两个报错不是同一件事,只是经常一起出现,一个故障触发很容易连带另一个报错。
DNS也就是域名系统,作用类似电话簿。你输入网址www.example.com,设备没办法直接识别域名对应的服务器,就得向DNS服务器查询。DNS查到之后返回对应的IP,比如93.184.216.34。拿到IP地址,电脑才能连上目标服务器,拉取网页内容。DNS解析异常,就是这一步查询失败。可能DNS服务器无响应,返回错误IP,或是完全检索不到域名。浏览器找不到访问目标,页面自然打不开。

公网连接失败覆盖范围更广,代表设备无法和互联网上的服务器建立通信。诱因很多,DNS解析失败只是其中一种。网线松动、WiFi信号差、路由器拨号掉线、运营商线路故障、目标服务器停机、防火墙拦截请求,都会触发这个提示。看到这条提示不能直接判定是DNS问题,得结合实际现象判断。
有个简单办法区分两种故障。QQ、微信可以正常收发消息,但浏览器打不开网页,大概率是DNS解析故障。微信、QQ登录后直接走自有协议和固定IP,不需要每次访问都解析域名。浏览器访问新站点,每次都要发起DNS查询,DNS一旦失效,网页全部无法加载。反过来,所有联网软件全部断连,QQ也掉线,就是公网链路本身中断,大概率路由器拨号失败或是宽带线路故障。
DNS解析异常诱因比较杂。运营商DNS服务器高峰期容易不稳定,响应缓慢甚至超时。本地路由器DNS配置被改动,或是DHCP下发无效DNS地址,同样会出问题。电脑hosts文件被篡改,写入错误域名IP映射,系统会优先读取本地记录,导向错误地址。还有域名过期、域名被暂停解析,这类情况更换任何DNS都无法查询。DNS缓存污染也会引发异常,缓存保存过期IP,设备持续访问旧地址,而目标服务器早已迁移。
排查优先从简单操作入手。重启路由器,静置两分钟再测试。手机端开关飞行模式,或是忽略WiFi重新连接。电脑按下Win+R,输入cmd执行ipconfig /flushdns,清空本地DNS缓存。无效的话手动替换公共DNS,114.114.114.114或者8.8.8.8。更换后网页恢复访问,说明原有DNS服务器故障。更换公共DNS依旧打不开页面,可以ping公网IP,例如ping 114.114.114.114。ping能通,代表公网链路正常,故障仍在域名解析;ping不通,属于底层网络中断,需要检查路由器和宽带线路。
手机端处理思路和电脑相近。安卓在WiFi设置里把IP从DHCP改成静态,填入公共DNS。iPhone打开WiFi详情,配置DNS选择手动,添加相同DNS地址。部分手机支持私人DNS,启用后解析走加密通道,可以避开运营商DNS的部分问题。如果同一WiFi下所有设备都无法打开网页,故障点基本在路由器或者宽带,不是单台设备的问题。
公网连接失败有时和DNS无关,根源是目标服务器无法访问。比如目标网站宕机,或是IP在当前网络环境被拦截。这种场景更换DNS没有效果,问题不在域名解析,而是通信链路。可以切换手机流量测试,流量能够打开,说明WiFi侧网络存在问题;流量同样无法访问,大概率网站本身故障,或是宽带运营商做了访问限制。
简单总结,DNS解析异常和公网连接失败属于不同层级故障。前者是找不到目标地址,后者是建立连接失败。看到报错不用慌乱,先判断仅网页失效还是全部联网应用掉线。再决定是清理缓存、更换DNS,或是检修路由器、联系运营商。多数场景,重启路由器搭配更换公共DNS,就能解决七八成故障。