EN

故障排查

连上了但打不开网页:从最可能到最少见,九步排查

客户端显示已连接、节点延迟也正常,但浏览器就是打不开。按出现频率排序的九个原因,每一步都有明确的判断方法。

作者 老毛最后更新 2026-08-26约 7 分钟

「客户端明明显示已连接,延迟也是绿的,但网页就是打不开。」

这个问题的麻烦之处在于:"已连接"这三个字会误导你,让你以为问题在别处。

下面按出现频率从高到低排,一步步来。

第 1 步:系统代理开了吗

最常见,占了一小半。

客户端在跑 ≠ 系统流量走它。这是两件事。

客户端在哪开
Clash Verge Rev设置页 →「系统代理」开关
v2rayN托盘右键 →「自动配置系统代理」
Shadowrocket首页顶部总开关
sing-box首页开关

验证方法:浏览器打开任意 IP 查询页面,看显示的 IP。

第 2 步:模式是不是「直连」

Clash 系有三种模式:规则 / 全局 / 直连。

不小心切到「直连」的话,客户端在跑但所有流量都不走代理。

日常应该是「规则」模式。

第 3 步:节点是不是真的活着

延迟数字可能是缓存的。

很多客户端显示的延迟是上次测速的结果,节点可能在那之后就挂了。

重新测一次延迟,别信界面上那个旧数字。

第 4 步:DNS 出问题了

现象:某些网站能开,某些完全打不开;或者提示"无法解析服务器的 DNS 地址"。

原因:域名解析没走对路。

Clash 系的解法 —— 配置里确认 DNS 段是这样:

dns:
  enable: true
  enhanced-mode: fake-ip
  fake-ip-range: 198.18.0.1/16
  nameserver:
    - https://1.1.1.1/dns-query
    - https://dns.google/dns-query

如果局域网设备(NAS、打印机、路由器管理页)访问不了,是 fake-ip 把它们也拦了。加过滤:

  fake-ip-filter:
    - "*.lan"
    - "*.local"
    - "你的NAS域名"

清一下本地 DNS 缓存

# Windows
ipconfig /flushdns

# macOS
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder

DNS 配置的完整说明在Mihomo 配置文件怎么写

第 5 步:浏览器能上,别的软件不行

现象:Chrome 正常,但 Steam 龟速、游戏连不上、命令行 curl 超时。

原因:这些程序不读系统代理设置,直接从物理网卡出去了。

解法:开 TUN 模式。它创建一个虚拟网卡,在更底层接管全部流量。

注意事项:

详见Windows 免费VPN推荐:TUN 模式那些坑

不想开 TUN 的话,给具体程序单独设代理:

# Git
git config --global http.proxy http://127.0.0.1:7890

# 临时(PowerShell)
$env:HTTP_PROXY="http://127.0.0.1:7890"
$env:HTTPS_PROXY="http://127.0.0.1:7890"

端口要和你客户端的一致(Clash 默认 7890,v2rayN 默认 10809)。

第 6 步:系统时间不同步

现象:所有 vmess 节点全部连不上,但 Trojan/SS 的能用。

原因:vmess 协议对时间敏感,客户端和服务器时间差超过约两分钟就握手失败。

检查:系统设置里确认「自动设置时间」是开的。

Windows:设置 → 时间和语言 → 日期和时间 → 点「立即同步」。

这个坑很隐蔽,因为报错信息通常只说"连接失败",不会告诉你是时间问题。

第 7 步:端口冲突

现象:客户端启动报错,或者显示已连接但完全没流量。

原因:7890(或客户端用的端口)被别的程序占了。

检查

# Windows
netstat -ano | findstr :7890

# macOS / Linux
lsof -i :7890

有输出说明被占用了。解法:在客户端设置里改成别的端口(比如 17890),改完记得同步改其它软件里填的代理端口。

第 8 步:规则配错了

现象:国外网站也走了直连,所以打不开。

检查:打开客户端的「连接」页,访问一次外网,看那条连接走的是 DIRECT 还是节点。

应该是节点。如果是 DIRECT,说明规则把它判成国内了。

常见原因:规则顺序不对。规则是从上往下匹配,GEOIP,CN,DIRECT 放太靠前会误伤。

# ❌ 错
rules:
  - GEOIP,CN,DIRECT          # 先命中
  - DOMAIN-SUFFIX,xxx.com,代理  # 轮不到

# ✅ 对
rules:
  - DOMAIN-SUFFIX,xxx.com,代理  # 具体的放前面
  - GEOIP,CN,DIRECT
  - MATCH,兜底

第 9 步:环境问题

前八步都排除了,看这几个:

杀毒软件/防火墙拦截 临时关掉试一次。如果关了就好,去白名单里加上客户端。

公司网络/校园网有额外限制 换手机热点试一次。热点下能用 → 是那个网络的问题。

IPv6 干扰 有时候 IPv6 会绕过代理。客户端配置里 ipv6: false,或者系统里临时关掉 IPv6 试试。

浏览器插件 某些代理类插件(SwitchyOmega 之类)会和客户端打架。禁用试试。

浏览器缓存 清一下缓存和 cookie,尤其是换了节点之后。

一个万能的判断技巧

快速自查表

十条走完还不行的,换个客户端导入同样的节点试试——能用的话就是客户端配置问题。

接着看

几个常被问到的问题

客户端显示已连接,为什么还是上不了网?

已连接"只说明客户端在跑,不代表流量真的走了它。最常见的三种情况:系统代理没开、模式停在直连、或者节点本身其实是死的(延迟数字可能是缓存的)。本文按顺序排查。

为什么浏览器能上,游戏和 Steam 不行?

因为这些程序不读系统代理设置,直接从物理网卡出去了。浏览器会读系统代理,所以它正常。解法是开 TUN 模式,让客户端在网卡层接管全部流量。

国内网站能开,国外的打不开?

说明分流规则在工作(国内直连是对的),但代理那一侧不通。重点查节点是不是真的活着、以及 DNS 配置。

换了节点还是不行怎么办?

先确认不是本地问题。如果所有节点都不行,八成是你这边的配置或环境问题,不是节点问题——真实的封锁很少那么整齐。按本文第 6~9 步查。

这篇是我自己实测后写的,环境变了结论也会变。发现哪条已经失效,欢迎写信到 [email protected],我会更新并标注日期。

接着看这几篇