Clash高速节点
Clash使用推荐

解决 Clash Verge 开启系统代理后浏览器无效:环境变量与插件冲突终极排查指南

明明在 Clash Verge Rev 里已经把“系统代理”开关打得啪啪响,节点测速也全是绿色的几十毫秒,但一打开浏览器,该转圈的转圈,该报错的报错,甚至连国内网站都跟着一起卡死。

遇到这种情况,先别急着去群里骂机场,也别盲目卸载重装。在 90% 的情况下,问题根本不在 Clash Verge 身上,而是你的浏览器、系统环境变量或者某些“热心”的安全软件在暗中作祟,把流量给劫持或拦截了。

今天咱们就来一场深度的“网络侦探”排查。从浏览器插件到系统底层环境变量,手把手教你揪出那个导致代理失效的“内鬼”。

第一步:基础自检(别急着动大刀)

在深入排查前,先花 10 秒钟确认几个最容易被忽略的基础项,避免“一顿操作猛如虎,一看端口二百五”。

  1. 模式对不对? 去 Clash Verge 的“代理 (Proxies)”页面,确保顶部选中的是 Rule (规则模式),而不是 Direct (直连) 或 Global (全局,有时全局反而会触发某些网站的防代理机制)。
  2. 端口对不对? 去“设置 (Settings)” -> “Clash 内核 (Clash Core)”,看一眼 Mixed Port (混合端口) 是不是默认的 7890。如果被改成了别的数字,后面的排查都要跟着变。
  3. 节点活没活? 随便找个节点点一下测速 (Delay),如果是红字 Timeout,那神仙也救不了,先换节点。

如果以上都没问题,浏览器还是不行,咱们进入正题。

第二步:揪出浏览器里的“内鬼”(插件与设置冲突)

浏览器是代理冲突的重灾区。很多时候,系统代理已经生效了,但浏览器自己“另有打算”。

1. 代理插件“抢方向盘”(SwitchyOmega 等)

如果你安装了 Proxy SwitchyOmega、Pan 等代理管理插件,它们会覆盖操作系统的默认代理设置。

  • 排查方法:点击浏览器右上角的插件图标。如果它当前处于“直接连接 (Direct)”或某个错误的“情景模式”下,系统代理就形同虚设。
  • 解决办法:在插件里新建一个情景模式,协议选 SOCKS5(或 HTTP),服务器填 127.0.0.1,端口填 7890。或者直接暂时禁用该插件,看看浏览器是否恢复正常。

2. 浏览器自带的“顽固”代理设置

有些浏览器(尤其是某些国产魔改版或旧版 Chrome/Edge)会记住之前的代理配置,拒绝使用系统默认值。

  • Chrome / Edge:在地址栏输入 chrome://settings/systemedge://settings/system,找到“打开计算机的代理设置”,点进去看看是不是被锁死了。确保它是“使用系统代理”。
  • Firefox (火狐):火狐默认不使用系统代理!你需要手动去 设置 -> 常规 -> 最底部的 网络设置 -> 点击 设置 -> 选择 使用系统代理设置,或者手动填入 127.0.0.17890

3. 激进的去广告/安全插件

像 AdGuard、uBlock Origin 的某些严格模式,或者一些不知名的“网页安全卫士”插件,可能会误杀代理产生的 HTTPS 证书请求,导致页面直接白屏或显示 ERR_CONNECTION_RESET。尝试在无痕模式(隐身模式)下打开网页,如果无痕模式正常,大概率是某个插件在捣鬼。

第三步:深挖系统“暗箱”:环境变量冲突

这是进阶用户最容易踩的坑。在 Windows 或 Linux/macOS 中,如果系统环境变量里强行写死了代理地址,它会无视 Clash Verge 的开关,强行接管流量。

Windows 系统排查:

  1. Win + S 搜索“环境变量”,选择“编辑系统环境变量”。
  2. 点击右下角的“环境变量”按钮。
  3. 在“用户变量”和“系统变量”两个列表里,仔细找找有没有叫 HTTP_PROXYHTTPS_PROXYALL_PROXY 的变量。
  4. 解决办法:如果有,且里面的值不是你当前 Clash Verge 的地址(比如写着别的加速器地址,或者端口不对),直接选中它,点击“删除”。然后重启浏览器。

macOS / Linux 系统排查:

打开终端 (Terminal),输入以下命令查看当前环境变量:

echo $http_proxy
echo $https_proxy

如果输出了类似 http://127.0.0.1:xxxx 的内容,且端口不是 7890,说明环境变量被污染了。

  • 临时解决:在终端执行 unset http_proxy https_proxy
  • 永久解决:检查你的 ~/.bashrc~/.zshrc~/.profile 文件,把里面写死的 export http_proxy=... 这一行删掉或注释掉(前面加 #),然后执行 source ~/.zshrc 刷新。

第四步:安全软件与防火墙的“过度保护”

你以为的安全软件,有时候是最大的网络路障。

  • Windows 用户:火绒的“联网控制”、360 的“流量防火墙”、或者电脑管家的“网络加速”功能,有时会拦截本地回环地址 (127.0.0.1) 的代理请求。尝试暂时退出这些软件,或者在它们的白名单里把 clash-verge.exemihomo.exe (或 clash-meta.exe) 加进去。
  • macOS 用户:如果你装了 Little SnitchLuLuRadio Silence,它们默认会拦截未知的本地网络连接。你需要在它们的规则里,明确允许 Clash Verge Rev 及其内核进程访问网络。
  • 杀毒软件证书拦截:部分杀软会替换系统的 HTTPS 根证书。如果 Clash Verge 的 TUN 模式或系统代理依赖证书解密,可能会冲突。尝试在杀软设置中关闭“HTTPS 扫描”或“网页防护”。

第五步:终极重置大法(清理注册表与网络栈)

如果以上四步走下来,浏览器还是死活连不上,那可能是系统的代理注册表或网络栈已经“脑血栓”了。咱们直接给它做个大扫除。

Windows 网络重置:

  1. Win + R,输入 cmd右键以管理员身份运行
  2. 依次输入以下命令,每输完一行按一次回车:
    netsh winsock reset
    netsh int ip reset
    ipconfig /flushdns
  3. 重启电脑。这会重置所有网络适配器和代理注册表,让系统回到最干净的状态。

macOS 网络重置:

打开“系统设置” -> “网络”,选中你正在使用的 Wi-Fi 或以太网,点击右下角的“详细信息”或“-”号将其删除,然后重新添加并连接。这会刷新 macOS 的网络配置缓存。

FAQ 常见问答

Q1:我关了所有插件,也清了环境变量,但浏览器还是提示“代理服务器拒绝连接”,怎么办?

A:这通常意味着浏览器确实在尝试连接代理,但 Clash Verge 的内核没有响应。请检查:1. Clash Verge 是否真的在运行(右下角托盘图标还在);2. 端口是否真的是 7890;3. 尝试在 Clash Verge 中切换一下内核(如重启内核),或者以管理员身份重新运行软件。

Q2:为什么我开了系统代理,Edge 浏览器能上网,但 Chrome 却不行?

A:这大概率是 Chrome 安装了某个特定的扩展程序(如某些去广告插件、购物比价插件)在拦截流量,或者 Chrome 的快捷方式被恶意软件篡改,加上了 --proxy-server 的启动参数。右键 Chrome 快捷方式 -> 属性,检查“目标”栏末尾有没有多余的参数,有的话删掉。

Q3:清除环境变量会有副作用吗?

A:不会。对于普通用户来说,系统环境变量里根本不需要配置 HTTP_PROXY。这些变量通常是程序员为了方便终端走代理手动添加的。删除它们只会让系统恢复使用图形界面的“系统代理”设置,反而能解决很多冲突。

Q4:重置网络 (netsh winsock reset) 后,我需要重新配置 Clash Verge 吗?

A:不需要。重置网络只会清除系统的网络配置缓存和代理注册表,不会删除 Clash Verge 软件内部的订阅配置和规则。重启电脑后,重新打开 Clash Verge 并开启“系统代理”即可。

结语

排查浏览器代理失效的问题,就像是在解一个多层嵌套的俄罗斯套娃。从最外层的浏览器插件,到中间的系统环境变量,再到最底层的防火墙规则,只要有一层卡住,流量就过不去。

按照这篇指南从上到下捋一遍,基本上能把 99% 的“玄学”问题揪出来。网络折腾就是这样,多一点耐心,少一点盲目重装,你也能成为自己的网络管理员。

如果试了所有方法还是不行,欢迎在评论区留下你的操作系统版本、浏览器类型以及 Clash Verge 的日志截图,咱们一起“会诊”!

赞(0) 打赏
未经允许不得转载:ClashFast博客 » 解决 Clash Verge 开启系统代理后浏览器无效:环境变量与插件冲突终极排查指南

评论 抢沙发