这种情况其实很常见:电脑显示已经联网,但网页就是打不开,或者部分网站异常。
很多人第一反应是重启,但如果你会一点基础排查,往往几分钟就能判断问题在哪一层。
下面这套流程是比较实用的一种思路,从本机到外网,一步步缩小范围。
一、先确认本机是否拿到 IP 地址
Windows
ipconfig
macOS / Linux
ifconfig
或:
ip addr
需要关注的字段
IPv4 Address : 192.168.1.23
Default Gateway : 192.168.1.1
如果看到类似:
169.254.x.x
说明系统没有从 DHCP 获取到有效 IP,这种情况下基本可以判断:
- 网络没有真正连接成功
- 或路由器没有分配地址
二、测试本地网关(判断局域网是否正常)
ping 192.168.1.1
正常情况
Reply from 192.168.1.1: time=2ms
说明本机到路由器是通的。
异常情况
Request timed out.
说明问题在局域网层面,常见原因包括:
- WiFi 虚连接
- 网线松动
- 路由器异常
这种情况下不用继续往下排查,优先处理本地连接问题。
三、测试公网连通性(是否能“出网”)
ping 8.8.8.8
能通
Reply from 8.8.8.8: time=20ms
说明已经可以访问互联网(至少在 IP 层是通的)。
不通
说明问题可能在:
- 路由器未连接外网
- 运营商网络异常
- 网络策略限制(公司网络较常见)
四、测试 DNS 解析是否正常
ping www.baidu.com
正常情况
Pinging www.baidu.com [220.x.x.x]
说明域名可以解析成 IP。
异常情况
Ping request could not find host
说明 DNS 出现问题,也就是:
- 可以访问 IP
- 但无法解析域名
五、临时修改 DNS(以 Windows 为例)
netsh interface ip set dns "Wi-Fi" static 8.8.8.8
修改后可以重新测试域名访问情况。
六、使用 curl 测试 HTTP 层
curl https://www.baidu.com
如果 curl 可以返回内容,而浏览器打不开页面,通常说明问题在:
- 浏览器缓存
- DNS 缓存
- 或代理配置
七、查看网络路径(定位中间节点问题)
macOS / Linux
traceroute www.baidu.com
Windows
tracert www.baidu.com
输出示例:
1 192.168.1.1
2 10.0.0.1
3 ...
如果从某一跳开始持续出现:
* * *
通常表示从该节点开始链路存在问题,可能是运营商或跨网段路由异常。
常用排查顺序
在实际使用中,可以直接按下面顺序执行:
ipconfig
ping 192.168.1.1
ping 8.8.8.8
ping www.baidu.com
这样可以快速判断问题在哪一层:
- 本机配置
- 局域网
- 外网连通
- DNS 解析
简单对比
| 检查步骤 | 命令 | 主要判断 |
|---|---|---|
| 本机 IP | ipconfig / ip addr | 是否获取到地址 |
| 网关连通 | ping 网关 | 局域网是否正常 |
| 公网连通 | ping 8.8.8.8 | 是否能访问互联网 |
| DNS 解析 | ping 域名 | 域名是否可用 |
| 路由路径 | traceroute / tracert | 中间链路情况 |
实际怎么选
如果只是“完全上不了网”,按顺序执行四个 ping 基本就能定位问题。
如果是“网络慢”或“部分网站异常”,优先使用 traceroute / tracert 查看链路。
这套方法不复杂,但很实用。熟悉之后,大多数网络问题都可以在本机快速判断出大致原因。