「微信能发消息,网页就是打不开」是很有指向性的一类现象:即时通信类应用常使用长连接与直连 IP,不依赖域名解析;而网页第一步就是解析域名。在东创伟业处理过的企业网络与酒店 WiFi 项目里,这个现象基本可以判定方向在 DNS。下面按从终端到出口的顺序排查。
一、第一步:确认是不是 DNS 问题
对比测试:
nslookup www.baidu.com
nslookup www.baidu.com 223.5.5.5
nslookup www.baidu.com 114.114.114.114
判读:
默认 DNS 失败,指定公共 DNS 成功:本地 DNS 服务或出口 DNS 配置有问题;
全部失败但能 ping 通公网 IP:存在 DNS 拦截或 UDP 53 被限制;
解析成功但打不开网页:方向转向 TCP 连接、代理或目标站点;
解析到明显异常的地址:存在劫持或污染。
同时做一个对照:ping 223.5.5.5(直接测 IP)。IP 能通、域名不通,就是 DNS 问题。
二、第二步:终端侧排查
- 查看当前 DNS:
ipconfig /all
核对 DNS 服务器地址是否为规划中的地址; - 清缓存(Windows):
ipconfig /displaydns
ipconfig /flushdns
缓存里存了错误记录时,清缓存即可恢复; - HOSTS 文件:曾被软件修改过的 HOSTS 会导致特定域名解析到错误地址,路径 C:\Windows\System32\drivers\etc\hosts;
- 浏览器安全 DNS(DoH):浏览器自带加密 DNS 时,会用浏览器配置的解析通道,与系统 DNS 结果不同,排查时要区分是浏览器打不开还是所有应用都打不开;
- 代理设置:系统或浏览器残留代理配置会表现为「能上聊天工具、打不开网页」。
Linux 侧可用:
resolvectl status
dig www.baidu.com
dig +trace www.baidu.com
三、第三步:出口与内网 DNS 配置
- 出口设备是否配置了 DNS 代理:路由器做 DNS 代理时,终端使用路由器地址作为 DNS,由路由器向上递归;
- 上行 DNS 是否可达:在出口设备上测试到运营商 DNS 或公共 DNS 的连通性(详见前文 ping/MTR 排查方法);
- DNS QPS 与性能:终端规模较大时,DNS 请求量会成为瓶颈,表现为首屏慢而不是打不开;
- UDP 53 是否被拦截:安全设备策略误拦截 DNS 是常见原因,需核对策略白名单;
- DNS 劫持与防护:开启 DNS 防护或过滤策略后,部分域名被拦截会表现为解析失败或解析到提示页面。
判据:内网终端用公共 DNS 正常、用内网 DNS 失败,问题在内网 DNS 链路;两者都失败,问题在出口或上层。
四、第四步:IPv6 与解析优先级
双栈环境下,终端可能优先尝试 IPv6 解析:
终端拿到 IPv6 地址但网络实际不支持 IPv6 时,会先尝试 AAAA 记录再回退,表现为打开网页慢半拍;
部分系统的前缀策略会优先选择 IPv6,需按实际网络能力决定是否启用。
排查:nslookup -type=AAAA 域名 看是否返回了 IPv6 地址,再结合网络实际能力判断。
五、第五步:CDN 调度与跨网解析
「别人打开正常、我这里打不开」还有一类原因:CDN 按解析来源调度,若出口 DNS 的出口地址归属与预期不同(例如走了代理或隧道),会被调度到较远的节点,表现为慢或部分资源加载失败。
排查思路:对比不同 DNS 解析同一域名得到的地址,看是否存在明显差异;必要时调整出口 DNS 或采用按域分流的解析策略。
六、处理与验证
原因与处理、验证:
终端 DNS 配置错误:修正为规划中的 DNS 地址,验证 ipconfig /all 与解析测试通过;
DNS 缓存污染:清缓存,必要时排查污染来源,验证解析结果正确;
HOSTS 被修改:清理异常条目,验证特定域名恢复正常;
UDP 53 被拦截:核对安全策略白名单,验证解析请求可正常发出;
DNS 服务性能不足:调整 DNS 服务规格或增加缓存,验证首屏解析时延下降;
IPv6 优先导致慢:按网络能力调整协议优先级,验证网页打开速度恢复;
CDN 调度异常:调整出口 DNS 或分流策略,验证解析到合理节点。
回退:DNS 配置变更前记录原地址;策略调整前导出配置,分批实施并观察业务反馈。
七、避坑小结
- 聊天正常、网页不通,先看 DNS 和代理;
- 清缓存是较快的验证手段,但反复出现说明有根因;
- 浏览器 DoH 与系统 DNS 是两条通道,排查时要分开测;
- UDP 53 要放通,安全策略误拦截很常见;
- 解析慢不等于不通,QPS 与往返时延都要看。
速查:域名解析类问题
现象与优先排查:
聊天通、网页不通:DNS 配置、代理设置;
部分网站打不开:单域名解析、策略拦截;
打开慢但能开:DNS 时延、IPv6 优先、CDN 调度;
解析到异常地址:劫持、HOSTS、缓存污染;
指定公共 DNS 正常:内网 DNS 链路;
全部 DNS 都失败:UDP 53 拦截、出口连通性。
DNS 这类「能聊天打不开网页」的问题,欢迎带现象描述与测试结果一起沟通。
常见问题(FAQ)
Q:企业内网DNS用运营商的还是公共DNS?
A:两种方式都常见,选择依据是稳定性、解析速度与调度准确性。运营商 DNS 通常在本地有递归节点,时延较低;公共 DNS 在跨网调度与抗劫持方面各有特点。工程做法是实测对比:在同一网络里用不同 DNS 测解析时延与关键业务域名的解析结果,按测试结果选择,并在出口设备上统一配置,避免终端各自设置。
Q:浏览器开了安全DNS(DoH)会有什么影响?
A:DoH 让域名解析走加密通道,不经过本地 DNS,好处是避免链路上的解析干扰,代价是网络侧的 DNS 策略(如内网域名解析、访问控制)对它不生效。排查时要注意区分:浏览器打不开而命令行 nslookup 正常,多半是 DoH 或浏览器代理导致;两者都不正常,才是网络侧 DNS 问题。
Q:网页打开慢但测速正常,是DNS的问题吗?
A:有可能是。测速通常测的是吞吐,而网页打开慢常受解析时延、连接建立时延与资源加载影响。可以做对比测试:用 nslookup 测解析耗时,用浏览器开发者工具看各阶段耗时(DNS、连接、首字节)。若 DNS 阶段占比高,方向是 DNS;若首字节时间长,方向转向服务端或链路。