Clash Verge官网
立即下载
代理规则2026/08/09

Clash Verge 是否支持按进程排除代理?如何配置?

Clash Verge 排除进程, 如何配置代理规则排除进程, Clash Verge 进程排除配置, Clash Verge 规则设置, Clash Verge 代理排除, Clash Verge 不走代理的进程, Clash Verge 排除特定进程教程, Clash Verge 代理规则怎么设置, Clash Verge 进程代理排除方法

Clash Verge 按进程排除代理功能详解

在日常使用代理工具时,我们常希望某些程序绕过代理——例如浏览器继续使用代理,而游戏、网盘客户端、系统更新等走直连。Clash Verge 作为一款基于 Clash 内核的图形化代理客户端,是否支持按进程排除代理?答案是肯定的。本文将从版本演进、具体配置方法、平台差异、边界条件及常见问题等方面,全面解析 Clash Verge 按进程排除代理 的实现方式,帮助你在 2026 年的最新版本中高效配置。

版本前提:本文以 Clash Verge Rev(截至当前的最新版本)为例。如果你使用的是早期原版 Clash Verge(如 1.3.x),部分界面路径可能不同,但核心规则语法通用。建议升级到 Rev 分支以获得更好的体验。

Clash Verge 按进程排除代理功能详解
Clash Verge 按进程排除代理功能详解

一、功能定位与变更脉络

Clash 内核从早期版本开始就支持通过 PROCESS-NAME 规则匹配进程名,但图形化客户端对这项功能的暴露程度有所不同。在 Clash Verge 的早期版本(1.0–1.3 系列)中,用户需要在“订阅编辑器”或“配置文件”中手动编写规则,界面未提供专门的“进程排除”开关。到了 Clash Verge Rev 分支(约 2024 年后),开发者增加了“代理规则”可视化编辑面板,用户可以直接添加、删除、排序进程规则,大幅降低了操作门槛。

这一变化的核心驱动力是用户需求:很多人在使用代理时希望只让特定流量走代理(如浏览器、社交媒体),而其他流量直连。Clash 的“按进程排除”正好满足这一场景,它比传统的“按域名排除”更精确——因为一个程序可能连接多个域名,而你只想让该程序所有流量都绕过代理。例如:排除游戏客户端(如 Steam、Epic)以避免延迟,或排除下载工具(如 IDM、迅雷)以节省节点流量。

1.1 与“按域名排除”的区别

按进程排除(Process Exclude)和按域名排除(Domain Exclude)是两种不同的控制粒度:

  • 进程排除:匹配可执行文件名(如 chrome.exe),该程序的所有连接都走指定策略(如 DIRECT)。适合整包控制。
  • 域名排除:匹配请求的域名(如 *.example.com),所有程序访问该域名都走指定策略。适合对特定网站进行控制,但无法区分是哪个程序发起的请求。

两者结合使用效果最佳。例如,让浏览器走代理,但浏览器访问内网域名走直连,就可以同时使用“进程规则”和“域名规则”。

二、配置方法:在 Clash Verge 中添加进程排除规则

以下操作基于 Clash Verge Rev 的默认界面(Windows 版本;macOS 与 Linux 的入口相同,但文件路径可能不同)。假设你已安装并配置好节点,代理处于“全局”或“规则”模式。

2.1 通过“代理规则”面板添加(推荐)

  1. 打开 Clash Verge,点击左侧菜单栏的 「代理」 标签。
  2. 在顶部导航栏中,选择 「代理规则」 选项卡(部分版本显示为“Rules”)。
  3. 点击右下角的 「+」 按钮,添加新规则。
  4. 在弹出的编辑框中,类型选择 PROCESS-NAME(或直接输入 PROCESS-NAME)。
  5. 「内容」 字段输入进程名,例如 notepad.exe(Windows)或 Notes(macOS 应用名)。
  6. 「策略」 下拉框中选择 DIRECT(直连)或 REJECT(拒绝连接)。一般排除代理用 DIRECT
  7. 点击「保存」或「应用规则」。规则会立即生效,无需重启客户端。

⚠️ 注意:规则顺序很重要。Clash 按从上到下的顺序匹配规则,建议将进程排除规则放在 GEOIP 规则之前,以确保优先匹配。如果进程规则放在最后,可能被前面的域名规则拦截。

2.2 通过配置文件直接编辑

对于高级用户,可以直接编辑 YAML 配置文件。在 Clash Verge 中,点击左侧「设置」→「Profiles」→「编辑配置文件」(或使用外部编辑器)。在 rules 部分添加类似下面的行:

rules:
  - PROCESS-NAME,steam.exe,DIRECT
  - PROCESS-NAME,chrome.exe,Proxy
  - PROCESS-NAME,notepad.exe,DIRECT
  # 其他规则...

需要注意的是,PROCESS-NAME 只匹配进程名,不包含路径。如果需要匹配完整路径,可以使用 PROCESS-PATH(Clash Meta 内核支持)。例如:PROCESS-PATH,C:\Program Files\Microsoft Office\root\Office16\WINWORD.EXE,DIRECT。但请注意,PROCESS-PATH 在 Windows 上区分大小写(路径大小写不变),且路径中不能有通配符。

2.3 平台差异

平台 进程名示例 是否支持路径匹配 注意事项
Windows chrome.exesteam.exe 是(PROCESS-PATH) 进程名不区分大小写,路径区分大小写
macOS Google ChromeNotes 是(PROCESS-PATH) 进程名通常为应用包名或显示名称(如“Google Chrome”),可使用活动监视器查看
Linux chromesteam 是(PROCESS-PATH) 进程名通常为可执行文件基名(不含路径),大小写敏感

经验性观察:在 macOS 上,部分应用(如系统应用)的进程名可能与显示名称不同,建议通过终端命令 ps aux | grep -i “应用名” 确认实际进程名。另外,macOS 上 PROCESS-PATH 可能无法匹配到某些沙盒应用,此时使用 PROCESS-NAME 更可靠。

三、例外与取舍:什么情况下不该用进程规则?

进程规则虽然强大,但并非万能。以下场景需要谨慎使用:

3.1 系统级进程与守护进程

svchost.exe(Windows 服务主机)、launchd(macOS 守护进程)等系统进程,通常由多个服务共享。排除它们可能导致系统更新、时间同步等功能失效;反之,如果强制代理这些进程,可能造成系统服务异常。建议不要对系统进程设置代理规则,保持默认直连即可。

3.2 进程名冲突

多个程序可能使用相同的进程名(例如 setup.exeupdate.exe)。如果规则太宽泛,可能会误伤其他程序。例如,你只想排除某个特定软件的更新程序,但系统中有多个软件的更新程序同名为 update.exe。此时建议使用 PROCESS-PATH 或配合域名规则进行二次限制。

3.3 性能影响

Clash 每次连接都会检查进程规则,这涉及系统调用获取进程信息。如果规则数量过多(几百条),可能会轻微增加延迟。经验性观察:在 50 条以内的进程规则下,对性能影响可以忽略不计;超过 200 条且规则复杂度高(如包含路径匹配)时,在老旧设备上可能感觉到连接建立变慢。建议保持规则精简,只排除真正必要的进程。

四、配置示例:常见场景

4.1 排除游戏客户端

场景:你希望浏览器(Chrome)走代理,但 Steam 和 Epic Games 直接连接以避免游戏延迟。

rules:
  - PROCESS-NAME,steam.exe,DIRECT
  - PROCESS-NAME,EpicGamesLauncher.exe,DIRECT
  - PROCESS-NAME,chrome.exe,Proxy
  # 其他规则...

注意:Steam 可能以多个进程运行(如 steam.exesteamwebhelper.exe),建议只排除主进程,或者将整个 Steam 文件夹下的可执行文件都排除(使用 PROCESS-PATH 匹配目录?但 Clash 目前不支持目录通配,只能逐条添加)。

4.2 排除下载工具

场景:使用 IDM 下载大文件,希望直连以节省节点流量。

rules:
  - PROCESS-NAME,IDMan.exe,DIRECT
  # 或使用路径匹配
  - PROCESS-PATH,C:\Program Files\Internet Download Manager\IDMan.exe,DIRECT

4.3 排除特定浏览器扩展

如果某个浏览器扩展(如翻译插件)不需要代理,但浏览器本身需要代理,无法通过进程规则区分,因为浏览器是同一个进程。此时应该使用域名规则:例如该扩展的请求域名设置为 DOMAIN-SUFFIX,translation.googleapis.com,DIRECT

4.3 排除特定浏览器扩展
4.3 排除特定浏览器扩展

五、故障排查

5.1 规则不生效

现象:添加了进程规则后,目标程序仍然走代理/直连。

可能原因及验证步骤:

  1. 规则顺序错误:检查规则是否放在了其他规则(如 GEOIP)之后。可以在 Clash Verge 的“代理规则”面板中拖动排序。
  2. 进程名拼写错误:Windows 在任务管理器查看进程名(带 .exe);macOS 在活动监视器查看“进程名称”列。注意大小写:Windows 不区分大小写,macOS 和 Linux 区分。
  3. 内核版本不支持:Clash Verge 默认使用 Clash Meta 内核,它支持 PROCESS-NAMEPROCESS-PATH。如果使用了旧版 Clash Premium 内核(如 2021 年前的版本),可能不支持进程规则。请在 Clash Verge 的“设置”→“内核版本”中确认。
  4. 未重启应用:虽然规则实时生效,但某些程序在建立连接时缓存了代理信息,可能需要重启目标程序或清除系统 DNS 缓存。
  5. 代理模式设置:如果客户端处于“全局”模式,所有流量都会被强制代理,进程规则中的 DIRECT 策略可能被覆盖。建议使用“规则”模式。

5.2 性能问题

如果添加大量进程规则后感觉网络变慢,可以通过以下方法验证:

  1. 在 Clash Verge 的“日志”面板中查看连接建立时间(单位毫秒)。
  2. 临时禁用所有进程规则,对比延迟是否有明显改善。
  3. 如果确认是进程规则导致,精简规则数量,优先使用 PROCESS-NAME 而非 PROCESS-PATH(路径匹配开销更大)。

六、适用与不适用场景清单

✅ 适用场景

  • 需要让特定程序的所有流量都走直连或指定代理(如浏览器、游戏、下载工具)。
  • 需要在代理客户端上快速切换不同程序的代理策略,而不修改全局设置。
  • 配合其他规则(域名、IP、GEOIP)实现精细化的分流策略。
  • 用户有明确的需求:某个程序必须使用代理,而其他程序直连,或反之。

❌ 不适用场景

  • 需要按连接目的地(域名/IP)而非按程序控制流量(此时应使用域名规则)。
  • 需要控制系统服务或后台守护进程(如 Windows 服务、macOS launchd)。
  • 程序以多个进程组件运行,且无法统一命名(如某些大型软件由数十个进程组成,逐一添加不现实)。
  • 在移动端(Android/iOS)上,Clash Verge 的移动版可能不支持进程规则(因为系统限制),建议使用 privacy tool 模式下的“应用分流”功能(如 Surfboard、Clash Meta for Android 的“应用代理”)。

七、最佳实践清单

📋 决策规则(检查表)

  1. 确认需求:你是想控制单个程序的行为,还是控制一组域名?如果是前者,使用进程规则;如果是后者,使用域名规则。
  2. 确认平台:Windows 上进程名后缀 .exe;macOS 上使用“活动监视器”查看准确名称;Linux 区分大小写。
  3. 优先使用 PROCESS-NAME:除非路径匹配是必须的(如多个同名进程需区分路径),否则优先使用 PROCESS-NAME,性能更好。
  4. 规则数量控制在 20 条以内:对于大多数家庭用户,需要排除的进程通常不超过 10 个,过度添加反而增加维护负担。
  5. 规则顺序:先进程后域名:将进程规则放在规则列表靠前位置,确保优先匹配。
  6. 测试验证:添加规则后,访问一个只在该程序中出现的目标网站,通过 Clash 日志查看该连接匹配的规则和策略。
  7. 备份配置文件:在编辑配置文件前,先复制一份作为备份,防止误操作导致代理失效。

八、FAQ(常见问题)

Q1: Clash Verge 是否支持排除多个进程?

支持。可以添加多条 PROCESS-NAME 规则,分别对应不同的进程。Clash 会依次匹配,第一条匹配到的规则生效。注意:如果多个进程需要走相同策略,可以逐条添加,但无法使用通配符匹配多个进程名(如 PROCESS-NAME,*game*.exe 无效)。

Q2: 进程规则在 macOS 上需要注意什么?

macOS 上进程名通常为应用显示名称,如“Google Chrome”“Safari”。但部分系统进程名称可能不含空格,如 Terminal。建议通过活动监视器查看“进程名称”列。另外,PROCESS-PATH 在 macOS 上可能无法匹配到 SwiftUI 或沙盒应用,因此优先使用 PROCESS-NAME

Q3: 进程规则和域名规则冲突时,哪个优先?

规则列表中的顺序决定优先级。Clash 按顺序从上到下匹配,因此如果进程规则写在域名规则之前,则进程规则优先匹配;反之亦然。建议将进程规则放在域名规则之前,因为进程匹配通常更精确(针对整包),域名匹配更宽泛。例如:先写 PROCESS-NAME,chrome.exe,Proxy,再写 DOMAIN-SUFFIX,google.com,DIRECT,则 Chrome 访问 google.com 时,由于进程规则先匹配,会走代理,而不是直连。

Q4: 如何查看当前 Clash 内核是否支持进程规则?

在 Clash Verge 中,点击左下角“设置” → “Clash 内核” → 查看内核版本。如果版本号包含“Meta”字样(如 Clash Meta v1.18.0),则支持;如果显示“Clash Premium 2021.05.08”等旧版,可能不支持。你也可以在“代理规则”面板中尝试添加 PROCESS-NAME 规则,如果保存后不报错,则说明支持。

Q5: 进程规则能否匹配 64 位和 32 位程序?

可以。进程名是系统任务管理器显示的进程名称,与位数无关。例如,32 位和 64 位的 chrome.exe 进程名相同,规则会同时匹配。但注意,同名的不同版本程序(如 java.exe 可能由多个 Java 应用启动)都会被匹配,无法区分。

九、总结与下一步行动

Clash Verge 通过 PROCESS-NAMEPROCESS-PATH 规则,提供了强大的按进程排除代理能力。从早期版本的手动编辑到 Rev 分支的可视化配置,用户体验持续优化。你可以灵活利用这一功能,让代理只服务于需要的程序,提升网络效率和控制精度。

建议你立即尝试以下步骤:

  1. 打开 Clash Verge,进入“代理规则”面板,添加一条排除 Steam 的规则(PROCESS-NAME,steam.exe,DIRECT)。
  2. 启动 Steam 并观察“日志”面板,确认 Steam 的连接匹配了该规则,直连成功。
  3. 根据实际需求,逐步添加其他需要排除的进程,保持规则精简。
  4. 定期检查 Clash Verge 和内核版本更新,以获取更好的功能支持。

如果在配置过程中遇到问题,可以查阅官方文档或社区论坛。记住:规则是活的,需要根据使用场景不断调整优化


本文基于 Clash Verge Rev 版本编写,所有功能均可在截至当前的最新版本中复现。如有变更,请以官方文档为准。