Clash Verge如何配置代理排除列表?

功能定位与变更脉络
代理排除列表(Proxy Bypass List)是Clash Verge中用于指定某些域名或IP地址不经过代理直接连接的功能。它的核心价值在于解决“全局代理模式下,国内网站、内网资源或本地服务意外走代理导致访问失败或延迟”的问题。与规则模式(Rule Mode)不同,排除列表是作用于系统代理层面的全局旁路——规则模式通过解析流量特征决定是否代理,而排除列表在系统代理捕获流量之前就已生效,优先级更高。简而言之,排除列表是系统代理的“第一道关卡”,而规则模式则是代理客户端内部的“精细化分流”。
在Clash Verge的早期版本中,排除列表常与“系统代理”设置绑定,位于“设置—系统代理—代理绕过”处。后续版本(以当前最新版本为例)将入口保留在相同位置,并增加了对IP段CIDR格式和通配符的支持。理解这一演变有助于用户定位功能,并避免与配置文件的“rules”字段混淆。如果你曾因找不到排除列表而困惑,不妨回顾这个路径:它从未离开过系统代理区域。
提示
排除列表仅在“系统代理”模式开启时生效。若使用“TUN模式”或“虚拟网卡”模式,排除逻辑需通过配置文件中的“rule-set”或“bypass”实现,与本文所述的系统代理排除列表不同。因此,在开始配置前,请确认你当前使用的代理模式。
操作路径:分平台配置排除列表
桌面端(Windows / macOS / Linux)
以当前最新版本为例,启动Clash Verge后,点击主界面左侧导航栏的“设置”图标(齿轮状),进入“系统代理”区域。找到“代理绕过(Proxy Bypass)”输入框,默认已包含一些常见本地地址(如 127.0.0.1、localhost、192.168.0.0/16 等)。用户可在此处添加或删除条目,每个条目占一行,支持以下格式:
- 域名:如
baidu.com,匹配所有子域名(如www.baidu.com、api.baidu.com)。 - 通配符域名:如
*.example.com,仅匹配一级子域名。 - IP地址:如
10.0.0.1,精确匹配单个IP。 - CIDR网段:如
10.0.0.0/8,匹配整个私有网段。
完成编辑后,点击“保存”按钮。若系统代理已开启,新配置将立即生效,无需重启客户端。具体操作步骤:打开Clash Verge → 设置 → 系统代理 → 在“代理绕过”文本框中添加 → 保存。
注意
部分Linux发行版(如Ubuntu)使用Wayland显示协议时,系统代理设置可能需要额外手动配置环境变量(如 http_proxy、no_proxy)。Clash Verge的“代理绕过”仅影响通过Clash Verge系统代理钩子管理的流量,若应用未遵循系统代理,排除列表无效。建议在终端中执行 curl -v http://example.com 验证是否实际绕过了代理。
移动端(Android / iOS)
Clash Verge官方并未提供移动端版本,但Android用户可使用Clash Meta for Android、Clash for Android等第三方客户端,它们通常集成类似排除列表功能。以Clash Meta for Android为例(经验性观察):进入“设置→代理→绕过代理”或“设置→规则→代理旁路”,可添加排除域名或IP段。操作逻辑与桌面端一致,但需注意部分客户端将排除列表与“仅代理规则”模式绑定,若开启“全局模式”则排除列表无效。
iOS用户因系统限制,无法直接修改系统代理排除列表。使用Surge、Quantumult X等App时,可在“配置→避免代理”中设置。若使用Clash Verge的iOS变体(如Clash Verge Rev的iOS测试版,未公开确认),请以App内实际界面为准。由于平台差异,建议在移动端先查阅对应客户端的官方文档,避免因功能命名不同而困惑。
例外与取舍:何时不应使用排除列表
代理排除列表虽然便捷,但并非万能。以下场景建议优先使用规则模式而非排除列表:
- 需要按URL或路径精细控制:排除列表仅支持域名和IP,无法匹配路径(如
example.com/cn/)。若需“国内流量直连,国外流量代理”,规则模式(如DOMAIN-SUFFIX,cn,直连)更灵活。 - 使用TUN模式时:系统代理排除列表不作用于TUN发起的虚拟网卡流量。此时应通过配置文件的
rule-set或bypass字段实现。 - 多用户或企业环境:排除列表为全局生效,无法按用户或进程隔离。若需针对特定程序(如浏览器)代理而其他程序直连,建议使用代理客户端(如Proxifier)配合规则。
副作用方面,滥用排除列表可能导致代理流量误判(例如将需要代理的网站加入排除列表,造成无法访问)。经验性观察:在排除列表中添加过多条目(如数百条)可能略微增加系统代理的匹配延迟,但通常难以感知。可通过移除不必要的条目并观察代理响应时间来验证。总之,排除列表的应用场景是“大而全”的直连需求,而非“细颗粒度”的分流。
与配置文件的协同:规则模式 vs 排除列表
Clash Verge支持通过配置文件(YAML)定义规则,其中 rules 字段可指定特定域名直连或代理。与排除列表不同,规则模式在系统代理之后、代理客户端内部处理流量,优先级较低但更精细。一个典型场景:用户希望所有流量走代理,但排除公司内网和国内视频网站。此时可在排除列表中添加公司内网IP段,同时通过规则模式将国内视频网站(如youku.com)设为直连。两者结合使用,既保证内网访问,又避免视频网站占用代理带宽。
具体操作:在Clash Verge中,点击“配置”标签页,选择当前使用的配置文件,点击“编辑”打开YAML。在 rules 部分添加类似 - DOMAIN-SUFFIX,youku.com,DIRECT 的规则。保存后,Clash Verge会自动重载。注意:若排列表与规则模式冲突(例如排列表包含youku.com但规则也指定DIRECT),以排列表为准,因为其优先级更高。建议在排列表仅保留必须直连的内网或本地地址,而将域名级别的直连交给规则模式处理。这样既能利用排除列表的“全局绕过”优势,又能享受规则模式的“精细控制”灵活性。
故障排查:排除列表不生效的常见原因
现象1:添加排除项后,目标网站仍走代理
可能原因:系统代理未开启;排除列表格式错误(如使用了全角逗号、多余空格);或者用户使用了“TUN模式”而非“系统代理模式”。
验证步骤:在Clash Verge主界面查看“系统代理”状态是否显示“已开启”。若未开启,点击“开启系统代理”。检查排除列表条目,确保每行一个,无多余空格(例如 baidu.com 正确, baidu.com 前面有空格则可能无效)。在浏览器中访问测试网站(如 http://httpbin.org/ip),查看返回的IP是否为代理IP。若为代理IP,说明排除未生效。
现象2:排除列表保存后自动还原
可能原因:Clash Verge配置文件被订阅更新覆盖,或用户权限不足无法写入配置文件。
解决方案:排除列表通常存储在Clash Verge的本地设置中,而非配置文件中。若订阅更新后排除列表丢失,可能是软件bug或设置冲突。建议在修改后重启Clash Verge进程,并检查 ~/.config/clash-verge/ 目录下的配置文件(具体路径因版本和安装方式而异,请以实际为准)。确保排除列表写入正确。
现象3:排除列表导致部分网站无法访问
可能原因:将需要代理才能访问的网站错误地加入了排除列表,导致直连被墙或DNS解析失败。
处置方法:从排除列表中移除可疑条目,依次测试。若问题解决,则确认该条目不应被排除。建议仅排除明确已知的国内网站或内网地址。
适用与不适用场景清单
| 场景 | 推荐方案 | 理由 |
|---|---|---|
| 本地开发、内网访问 | 排除列表(CIDR) | 简单高效,一劳永逸 |
| 国内网站直连 | 规则模式(DOMAIN-SUFFIX) | 精细控制,避免污染全局 |
| 多用户共享代理 | 排除列表 + 规则模式结合 | 兼顾安全和性能 |
| TUN模式全代理 | 配置文件 rule-set 或 bypass | 系统代理排除列表无效 |
最佳实践清单
- 最小化原则:仅排除必须直连的地址,避免过多条目影响性能和维护。
- 优先使用CIDR:对于内网段(如192.168.0.0/16、10.0.0.0/8),使用CIDR格式覆盖整个子网,避免遗漏。
- 定期审计:每季度检查一次排除列表,移除不再需要的条目(如已废弃的内部域名)。
- 测试验证:每次修改后,使用
curl -x http://127.0.0.1:7890 -v http://排除的域名确认是否直连(端口以实际代理端口为准)。 - 备份设置:导出Clash Verge的配置文件(如
config.yaml)和本地设置文件,以便恢复。 - 区分平台:桌面端使用系统代理排除列表,移动端(若适用)注意不同客户端的行为差异。
FAQ(常见问题)
1. 排除列表和规则模式有什么区别?
排除列表作用于系统代理层面,优先级高于规则模式。它适用于需要全局绕过代理的场景(如内网、本地服务),但无法按路径或URL匹配。规则模式在代理客户端内部处理,支持更精细的匹配(如域名、IP、GeoIP、进程等),适合需要分流的场景。两者可联合使用,但需注意排除列表的优先级更高。
2. 排除列表支持通配符吗?
支持。在桌面端Clash Verge中,可以使用 *.example.com 匹配所有一级子域名;单独使用 example.com 则匹配该域名及其所有子域名。注意:通配符仅用于域名前缀,不支持正则表达式。
3. 配置排除列表后不生效怎么办?
首先确认系统代理已开启,且排除列表格式正确(每行一个,无多余空格)。其次检查是否使用了TUN模式,若是则排除列表不生效。最后重启Clash Verge进程,并检查日志输出(日志文件位于 ~/.config/clash-verge/logs/ 或客户端内查看)。
4. 移动端如何配置排除列表?
Clash Verge官方无移动端版本。Android用户可使用Clash Meta for Android,在“设置—代理—绕过代理”中配置;iOS用户可使用Surge等App,在“配置—避免代理”中设置。具体操作因App而异,请参考对应软件文档。
5. 排除列表会影响代理速度吗?
经验性观察:排除列表本身仅进行简单的字符串匹配或CIDR计算,对性能影响微乎其微。但若在排除列表中包含大量条目(如数千条),可能略微增加系统代理的匹配延迟。实际使用中,保持条目在100条以内通常无感知。若担心性能,可通过移除不必要的条目并对比浏览器加载时间验证。
总结与下一步行动
代理排除列表是Clash Verge中实现灵活代理控制的重要工具,尤其适合解决全局代理模式下的内网直连需求。通过本文介绍的操作步骤、场景分析和故障排查方法,你应能快速配置并避免常见陷阱。建议根据自身需求,将排除列表与规则模式结合使用,以达到最佳体验。
下一步行动:打开Clash Verge,检查当前排除列表是否包含冗余条目;若未配置,根据内网地址添加对应CIDR,并测试直连效果。同时,针对国内网站,考虑在配置文件中添加规则模式直连,以优化代理流量。随着未来Clash Verge版本的更新,排除列表的易用性可能会进一步提升(例如支持正则表达式或更直观的界面),届时请关注官方更新日志。


