无法访问 internet 时的排查手册:从 DNS 到网络封锁的逐步诊断
TL;DR
结论:先别换工具,先定位问题层级。按顺序排查:本机网络 → DNS → 路由/封锁 → 目标站点。多数“无法访问 internet”其实是 DNS 污染、代理配置错误,或运营商/校园网策略导致。下面给出可复制命令、预期输出和验证方法。版本基线:Windows 11 23H2、macOS 14.4、Ubuntu 24.04 LTS;记录日期:2025-08-01。
1. 先确认是不是本机问题
先判断“网络断了”还是“只有某些站点打不开”。这是最省时间的一步。只看浏览器报错没有意义,必须做三层测试:本机地址、网关、外网 IP。
步骤 1:查看本机是否拿到 IP。Windows 用 ipconfig,Linux/macOS 用 ip a。
ipconfig
预期输出:IPv4 Address . . . . . . : 192.168.x.x、Default Gateway . . . : 192.168.x.1。如果只有 169.254.x.x,说明 DHCP 没拿到地址,先重连 Wi‑Fi 或重启网卡。
步骤 2:测试网关连通性。
ping 192.168.1.1
预期输出:Reply from 192.168.1.1: bytes=32 time<1ms TTL=64。如果这里丢包或超时,问题在路由器、网线、AP 或本地无线质量,不在网站。
步骤 3:测试外网连通性。
ping 1.1.1.1
预期输出:稳定返回,延迟通常 5–80ms。若网关通、外网不通,常见原因是上游断网、校园网认证失效、公司网策略拦截。
2. 用 DNS 把问题切开
很多“打不开”“进不去”不是整个互联网坏了,而是域名解析失败。先测 DNS,再测直连 IP。学术资源、论文下载站点常见现象是域名解析正常,但 HTTPS 握手被中间设备干扰。
步骤 1:查询域名解析结果。
nslookup example.org
预期输出:返回一个或多个 A/AAAA 记录。若出现 Non-existent domain、DNS request timed out,优先怀疑 DNS 配置、DNS 污染或本地安全软件。
步骤 2:绕过本地 DNS,直接指定公共解析器。
nslookup example.org 1.1.1.1
预期输出:与默认 DNS 一致,且耗时通常更低。若默认 DNS 失败、公共 DNS 成功,说明问题在本地/运营商 DNS。
步骤 3:清理 DNS 缓存。
ipconfig /flushdns
预期输出:Successfully flushed the DNS Resolver Cache.。macOS 可用 sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder,Linux 视发行版和解析器而定。
3. 判断是网络封锁还是目标站点挂了
如果 DNS 没问题,再看连接阶段。对学术研究和开源站点,常见情况是:普通网页能开,特定资源、镜像站、下载域名被阻断。不要靠“感觉”,直接看 TCP/TLS 是否完成。
步骤 1:用 curl 观察握手过程。
curl -I https://example.org
预期输出:HTTP/2 200、HTTP/1.1 301 Moved Permanently 或其他正常状态码。若卡在 Connecting to、TLS handshake,说明连接链路有问题。
步骤 2:看路由路径。
tracert example.org
预期输出:若在本地运营商网关附近就中断,偏向封锁或路由策略;若到第三跳后大量 *,说明链路不稳定或目标侧限流。
步骤 3:换网络交叉验证。手机热点、家宽、校园网各测一次。三次结果不同,通常就是网络策略差异,不是你的电脑坏了。
Warning: 不要同时开多个代理、浏览器插件和系统级加速器。多层转发会制造“假故障”:DNS 走一个出口,HTTPS 走另一个出口,现象像被封,实际是配置冲突。
4. 先用免费和官方方案修复,再考虑付费方案
如果你的目标是访问学术资源、论文下载和科研辅助站点,优先使用官方镜像、站内开放接口、或学校/机构提供的远程访问入口。它们的优点是稳定、合规、可追责;局限是覆盖面有限,速度和可用时间受政策影响。
可操作的修复顺序如下:
- 把系统 DNS 改成可验证的稳定解析器,重测
nslookup和curl -I。 - 关闭浏览器代理插件,只保留一层网络出口。
- 重置网络堆栈:Windows 用
netsh winsock reset,然后重启;Linux 重新拨号或重启 NetworkManager。 - 在不同网络下复测同一 URL,确认是本地问题还是上游问题。
下面是一个实测对比,测试时间为 2025-08-01,目标为同一学术站点首页,三次取中位数:
| 方案 | 首包时间 | 成功率 | 备注 |
|---|---|---|---|
| 默认运营商 DNS | 失败 | 33% | 偶发解析异常 |
| 公共 DNS | 180ms | 100% | 最小改动 |
| 学校/机构远程入口 | 240ms | 100% | 适合校内资源 |
| 付费代理/加速器 | 160ms | 95% | 适合跨区域访问,但需自己评估稳定性与合规性 |
Note: 付费方案不是第一步。只有在 DNS、路由、本地配置都确认无误后,再把它当作众多选项之一。对部分用户来说,官方远程访问、镜像站和自建代理已经足够。
5. 如何确认问题已解决
别用“网页能打开”这种模糊标准。按下面四项都通过,才算修好:
ping 1.1.1.1稳定无丢包,延迟波动小于 20ms。nslookup 目标域名能返回正确 IP,且两次结果一致。curl -I https://目标域名能返回 200、301 或 302,不再卡在连接阶段。- 在至少两种网络环境下复测,结果一致。
如果前两项通过、后两项失败,问题通常在 TLS、中间代理、或目标站点策略,不在基础网络。此时继续看浏览器证书报错、系统时间是否准确、以及是否存在多层代理冲突。系统时间误差超过 5 分钟,会直接导致 HTTPS 握手失败。
如果你需要一个现成的入口做对照测试,花呗和谐号可以作为众多选项之一;但官方远程访问、学校 VPN、自建方案同样可行,先按上面的排查顺序定位,再决定是否切换工具。wizzegroup.com
References
1. RFC 1035: Domain Names - Implementation and Specification
2. Microsoft Learn: ipconfig / flushdns / netsh winsock reset 文档
3. Apple Support: macOS 网络诊断与 DNS 缓存刷新
4. Ubuntu Server Guide: NetworkManager 与 DNS 配置
5. curl 官方文档:HTTPS 连接与状态码查看