缥缈墟 - 发布页

Clash连接成功但打不开网页怎么办?按请求、代理、DNS逐层排查

更新于 2026-10-31 · piaomiaoxu.site

简答:Clash显示“已连接”只说明核心或节点状态正常,不代表浏览器请求已经进入代理并成功返回网页。先清空 Connections 或日志,刷新一个固定网址:没有请求记录,先查系统代理、端口或TUN;有请求但 timeout,重点查节点和策略组;只有域名失败,则优先查DNS、DoH或Fake-IP。

定义:“Clash连接成功但打不开网页”是指客户端核心或代理节点显示运行正常,但浏览器请求没有被正确接管、解析、转发或返回。

适用范围与五步速查

本文面向使用Clash Verge Rev或其他Mihomo内核客户端的Windows、macOS和Android用户,重点处理“客户端显示已连接,但浏览器打不开网页”。不同客户端的菜单名称可能不同,请把“系统代理、Connections、日志、模式、TUN”对应到你正在使用的界面。本文不覆盖订阅链接失效、账号付款、具体服务商状态,也不把单次延迟测试当作网页可用性证明。

  1. 先关闭Clash测试直连:确认普通网络本身能打开一个你平时可访问的固定网站。
  2. 只保留一个接管方式:排障时先关闭其他VPN、浏览器代理插件、抓包工具和加速器。
  3. 清空Connections或日志:刷新同一个网址,观察是否出现新的请求。
  4. 核对模式和策略:临时用Global测试;若能打开,再回到Rule检查规则和策略组。
  5. 最后再查DNS、Fake-IP和TUN:不要一开始就同时改多个配置。

Clash的代理端口、TUN和DNS属于不同入口。Mihomo文档说明,mixed-port可接收代理请求,TUN则负责捕获系统流量;因此“核心运行正常”和“浏览器流量已被接管”是两个不同结论。可分别查看Mihomo入站配置文档与Clash Verge Rev项目说明。

先用现象表定位故障层

现象优先检查下一步
Connections完全没有新请求系统代理、浏览器独立代理、TUN是否接管核对代理端口并关闭冲突软件,再刷新
出现connection refused本地地址或端口没有监听查看当前mixed-port,确认使用127.0.0.1和正确端口
出现timeout策略组、节点、出口链路临时切Global并换一个已配置节点测试
出现DNS_PROBE或域名解析失败DNS、浏览器DoH、Fake-IP先测试IP或其他域名,再检查DNS配置
部分网站打不开Rule规则、策略组或DIRECT/REJECT查看该域名实际命中的规则和代理组
浏览器能用,其他应用不能用应用是否遵守系统代理使用TUN或为应用单独配置代理,并检查权限

这张表只是缩小范围,不代表单一现象只有一个原因。尤其是延迟正常并不等于网页请求一定成功:延迟检测通常只验证一次指定请求,而网页还包含DNS、TLS、规则匹配和实际传输过程。

最短排查步骤:从请求有没有进入Clash开始

  1. 固定测试目标:每次只测试一个网址,建议选择你在关闭Clash时也能打开的普通HTTPS网站。不要同时刷新多个标签页,否则日志难以对应。
  2. 清空连接记录:打开Connections或日志,清空旧记录后刷新测试网址。若完全没有新记录,浏览器流量没有到达Clash,先检查系统代理、浏览器独立代理和TUN。
  3. 核对本地代理端口:在客户端配置中找到mixed-port、HTTP端口或SOCKS端口。地址通常应为127.0.0.1,端口必须以当前配置为准,不能机械照抄7890或7897。
  4. Windows:进入“设置—网络和Internet—代理”,检查手动代理是否指向当前本地地址和端口。微软说明Windows代理设置位于该路径,并支持手动填写代理服务器和端口,详见Windows官方代理设置说明。
  5. macOS:进入“系统设置—网络—当前网络—详细信息—代理”,检查HTTP、HTTPS或SOCKS代理是否与客户端监听端口一致。Apple的路径和代理类型说明见Apple官方Mac代理设置说明。
  6. Android:如果使用系统VPN接管,检查客户端是否获得VPN权限;如果只配置了应用内代理,浏览器或其他应用未必会自动使用它。排障时先只保留一个VPN或代理应用。

如果系统代理已经打开但Connections仍没有请求,优先检查浏览器是否配置了独立代理插件或手动代理。浏览器独立设置可能覆盖系统代理;关闭插件后完全退出并重新打开浏览器,再测试同一个网址。

用curl做一次独立对照测试

如果电脑安装了curl,可以绕过浏览器界面,直接验证本地HTTP代理是否能发出请求。把7890替换为客户端当前的HTTP或mixed-port:

curl -v --proxy http://127.0.0.1:7890 https://example.com/

curl官方文档说明,-x或--proxy用于指定代理;上面的写法使用HTTP代理协议前缀,适合测试HTTP或mixed-port。参考curl官方命令文档。

  • 如果命令直接提示连接127.0.0.1失败,说明本地端口没有监听、端口写错,或客户端核心没有正常运行。
  • 如果能建立到本地代理的连接,但随后出现timeout,重点看当前策略组、节点和日志中的目标域名。
  • 如果curl成功而浏览器失败,优先查浏览器独立代理、扩展、缓存或浏览器自己的DNS设置。
  • 如果浏览器和curl都失败,但Connections有请求,说明流量已进入核心,故障更可能在规则、DNS、节点或远端返回。

不要把命令返回成功理解为所有网站都可用;它只验证指定网址、指定端口和当前环境下的一次请求。

按错误类型分流处理

一、Connections没有请求

先关闭浏览器代理扩展和其他VPN,再重新打开系统代理。系统代理只能影响遵守系统代理约定的应用,不能保证所有应用都使用它;Clash Verge Rev的项目说明也区分了系统代理、应用自身代理端口和TUN等路径。若浏览器仍不产生请求,再检查是否使用了错误端口。

二、connection refused或502

connection refused通常表示本地端口无程序监听,先核对端口并重启核心。若是502,查看请求是否被送入错误的代理入口,尤其要检查系统代理与TUN同时开启时是否存在绕行或冲突。Windows系统代理还可能有单独的绕过列表,配置文件中的DIRECT规则不一定等同于操作系统的代理绕过设置。

三、timeout

先临时切换到Global并选择一个已经配置的节点,只测试同一个网址。若Global可以打开而Rule不行,查看该域名实际命中的规则、策略组是否误选DIRECT或REJECT。若Global也timeout,不要继续改DNS,先检查节点、出口连接和日志;单次延迟正常只能说明某个延迟检测请求得到响应,不能证明网页访问链路完整。

四、只有域名打不开

先比较域名访问和IP访问,但不要据此直接断定是DNS,因为HTTPS还涉及主机名和证书。Mihomo文档显示,DNS配置包含enable、enhanced-mode、nameserver-policy、fake-ip和IPv6等不同字段;Fake-IP、浏览器DoH、系统DNS和TUN叠加时,可能出现解析路径不一致。可先暂时关闭浏览器的独立安全DNS,清理浏览器DNS缓存,再只改变一个DNS变量进行复测。相关字段和解析流程以Mihomo DNS配置文档及Mihomo DNS解析流程文档为准。

五、只有部分网站打不开

查看该网站请求的规则命中结果。常见排查方向是策略组选择、DIRECT或REJECT规则、域名后缀匹配、IPv6路径和Fake-IP过滤。不要因为某个网站打不开就直接替换全部DNS或订阅;先记录域名、命中的规则、代理组和日志错误。

TUN与DNS的高级排查和回滚

当浏览器可用但其他应用不可用,或系统代理已经正确而应用仍不通,可以考虑TUN。但TUN涉及虚拟网卡、系统路由、DNS劫持和防火墙权限,修改前应导出或备份当前配置。Mihomo文档说明TUN可捕获系统流量,并可用于自动路由和DNS劫持;Windows上还可能受到防火墙和权限影响,参考Mihomo TUN文档。

  1. 先记录当前模式、节点、mixed-port、DNS和TUN开关状态。
  2. 只开启TUN,关闭系统代理,测试固定网址和一个普通应用。
  3. 若TUN开启后完全断网,先关闭TUN恢复网络,再检查防火墙、管理员权限和虚拟网卡状态。
  4. 若TUN可用但域名异常,检查DNS模式、fake-ip-filter和浏览器DoH,不要同时替换整份配置。
  5. 恢复后把临时Global切回Rule,关闭不再需要的TUN,并重新打开系统代理或恢复原始设置。

任何配置修改都应保留“改前—改后—测试结果”。如果改动后无法上网,优先回滚最后一次改动,而不是继续叠加设置。

补充说明与边界

本文是缥缈墟的第三方使用指南,不是Clash、Mihomo或任何客户端项目的官方页面。客户端菜单、内核版本和默认端口可能随版本变化;界面名称和具体能力请以当前项目文档及你安装的版本为准。

如果按流程仍无法定位,整理以下信息再继续排查:操作系统、客户端名称和版本、当前模式、是否启用TUN、实际监听端口、Connections是否有请求、完整错误关键词,以及关闭代理后直连是否正常。不要公开订阅链接、密码、UUID或完整配置中的敏感字段。

常见问题

Clash显示已连接,为什么网页还是打不开?

“已连接”可能只代表核心运行或节点延迟测试成功,并不代表浏览器流量已经进入Clash。先清空Connections,刷新固定网址:没有请求就查系统代理、浏览器独立代理和TUN;有请求再查规则、DNS、节点和日志。

Clash的系统代理端口应该填7890吗?

不能固定照抄7890。应以当前配置中的HTTP、SOCKS或mixed-port为准,地址通常是127.0.0.1。端口写错时,常见结果是connection refused,或浏览器没有请求进入Clash。

Rule模式打不开网页,切Global后能打开,怎么办?

这通常说明基础代理链路可能可用,但Rule模式下的规则或策略组需要继续检查。查看目标域名实际命中的规则,确认没有误选DIRECT、REJECT或失效节点,再把模式切回Rule验证。

只有部分域名打不开,是不是节点失效?

不一定。也可能是DNS、浏览器DoH、Fake-IP过滤、IPv6或规则匹配问题。先记录打不开的域名和日志关键词,用同一节点测试其他域名,并一次只调整一个DNS或规则变量。

什么时候应该开启TUN模式?

当目标应用不遵守系统代理,或需要接管更多系统流量时,才考虑TUN。它涉及虚拟网卡、路由、DNS和权限,建议先备份配置;开启后若断网,先关闭TUN回滚,再检查防火墙和权限。

相关阅读

参考资料

  1. Mihomo入站配置文档
  2. Mihomo TUN配置文档
  3. Mihomo DNS配置文档
  4. Mihomo DNS解析流程文档
  5. Clash Verge Rev项目说明
  6. Microsoft Windows代理设置说明
  7. Apple Mac代理设置说明
  8. curl官方命令文档(curl.se)