缥缈墟 - 发布页

Clash Verge 配置白名单不生效?先分清网站规则和应用分流

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

简答:Clash Verge 的“白名单”不是单一开关:网站白名单用规则覆写,应用白名单用 PROCESS-NAME 分流;若要只让部分应用进入 TUN,目前应优先用进程规则,而不是寻找不存在的 exclude-process 配置。

定义:Clash Verge 配置白名单,是在 Clash Verge Rev 中通过扩展覆写或规则配置,让指定域名、IP、应用进程走 DIRECT、代理策略或订阅原有的兜底规则。

先判断:你要配置的是哪一种白名单

搜索“Clash Verge 配置白名单”时,最容易把三种需求混在一起。先按下面的决策表选择方法:网站或域名分流使用 DOMAIN、DOMAIN-SUFFIX、GEOSITE 等规则;应用分流使用 PROCESS-NAME 或 PROCESS-PATH;TUN 本身的官方配置字段主要是接口、UID、网卡和地址范围,并不是任意桌面进程开关。

你的目标应该使用常见写法注意点
指定网站直连规则覆写DOMAIN-SUFFIX,example.com,DIRECT规则必须放在订阅兜底规则之前
指定网站走代理规则覆写DOMAIN-SUFFIX,example.com,代理组名代理组名必须与当前订阅完全一致
国内网站直连、其他按订阅处理GEOSITE 或 GEOIP 规则GEOSITE,cn,DIRECT订阅中的策略组和兜底规则仍会继续生效
只让某个应用走代理PROCESS-NAME 或 PROCESS-PATHPROCESS-NAME,chrome.exe,代理组名需要 TUN 或其他能捕获该应用连接的模式
只让某些应用进入 TUN不能直接套用进程排除字段优先用进程规则分流Mihomo 当前文档的 TUN 字段没有桌面端 exclude-process

截至 2026-10-24,Releases 标记为 Latest 的是 v2.5.8。Clash Verge Rev 的界面将扩展配置分为全局扩展覆写、全局扩展脚本、配置文件扩展覆写和配置文件扩展脚本,并明确说明扩展顺序以及由应用设置管理的字段可能在最后重新应用。Clash Verge Rev Releases Clash Verge Rev 配置文件界面与扩展顺序

网站白名单:在 Clash Verge Rev 的扩展覆写中添加规则

先备份当前订阅或配置文件。不要直接修改远程订阅生成的文件,因为更新订阅后可能被覆盖。打开 Clash Verge Rev 的“配置文件”或“Profiles”页面,找到正在使用的订阅卡片,右键打开扩展配置;中文界面通常显示为“扩展覆写配置”或“Extend Config”,有些版本也会把配置文件级入口称为“Merge”。如果只想对当前订阅生效,使用该订阅卡片的扩展覆写;如果要对所有配置生效,再考虑全局扩展配置。

下面这份示例只使用追加规则语法,不直接覆写顶层 rules、proxies 或代理组。示例中的 example.com 是占位域名,复制前替换成真实域名;示例刻意不放 MATCH,DIRECT,因为兜底规则应继续由原订阅提供。

prepend-rules:
  - DOMAIN,login.example.com,DIRECT
  - DOMAIN-SUFFIX,example.com,DIRECT
  - GEOSITE,cn,DIRECT
  - GEOIP,CN,DIRECT,no-resolve

规则从上到下匹配,排在前面的规则优先级更高。DOMAIN 只匹配完整域名,DOMAIN-SUFFIX 适合匹配主域名及其子域名,GEOSITE 使用地理域名集合,GEOIP 根据目标 IP 的国家代码匹配。Mihomo 官方规则文档还说明,针对目标 IP 的规则可能触发 DNS 解析,no-resolve 可跳过这一步,因此局域网和明确的 IP 段通常适合搭配它。Mihomo 路由规则文档

如果需要让指定网站走代理,必须把第三列替换成当前订阅中已经存在的策略组名称,例如订阅里确实存在的“Proxy”或“自动选择”。不要凭空填写名称。最稳妥的做法是先在“代理”页面查看策略组标题,再把它写入规则:

prepend-rules:
  - DOMAIN-SUFFIX,work.example.com,订阅中的代理组名
  - DOMAIN-SUFFIX,docs.example.com,订阅中的代理组名

保存后重新激活当前配置,打开“日志”查看目标域名实际命中的规则和策略组。只看浏览器是否能打开并不足以证明白名单生效;日志命中规则和出口 IP 变化更能说明实际路径。

完整的国内直连、其他流量按订阅处理示例

如果你的需求是“国内常用站点直连,海外站点继续使用订阅原有代理规则”,可以使用下面的 Merge 追加结构。它只添加国内直连规则,不添加新的兜底规则,也不替换原订阅的策略组。这样更适合远程订阅,因为订阅更新后,原有代理组和最终规则仍由订阅维护。

prepend-rules:
  - GEOIP,LAN,DIRECT,no-resolve
  - GEOSITE,cn,DIRECT
  - GEOIP,CN,DIRECT,no-resolve

GEOSITE,cn,DIRECT 适合按域名集合判断,GEOIP,CN,DIRECT,no-resolve 适合已经获得目标 IP 或需要按 IP 国家归属判断的连接。两者并不完全等价:有些网站使用境外 CDN、共享 IP 或复杂跳转,单纯按 GEOIP 判断可能与域名规则结果不同。因此遇到“规则写了但网站仍打不开”,先在日志里确认命中了哪一条规则,再决定是否为具体域名添加 DOMAIN-SUFFIX。

不要把下面这条放进 prepend-rules:

- MATCH,DIRECT

MATCH 会匹配所有剩余请求。如果它被放在订阅原有规则之前,后面的代理规则就不会再获得匹配机会,表现通常是“所有网站都直连、代理像失效一样”。如果确实要自定义最终兜底,应完整理解原订阅规则后再修改;一般白名单场景只追加前置规则即可。Mihomo 规则优先级与 MATCH 说明

应用白名单:用 PROCESS-NAME 做浏览器或程序分流

应用分流和网站分流是两条不同路径。网站规则看目标域名或 IP;应用规则看发起连接的进程。Mihomo 支持 PROCESS-NAME、PROCESS-PATH 以及通配符和正则形式。Windows 示例可以这样写:

prepend-rules:
  - PROCESS-NAME,chrome.exe,订阅中的代理组名
  - PROCESS-NAME,msedge.exe,订阅中的代理组名
  - PROCESS-NAME,WeChat.exe,DIRECT

macOS 通常需要使用实际进程名,例如通过“活动监视器”查看,或执行:

ps ax -o pid=,comm= | grep -Ei 'Safari|Chrome|Firefox'

Windows 可以打开“任务管理器”→“详细信息”,查看“映像名称”;不要只看应用桌面快捷方式的显示名称。macOS 沙盒应用、自动更新器、后台助手和多进程浏览器可能由多个进程共同产生连接,主程序名称命中后仍有部分流量不匹配,此时可在日志中观察实际进程名,再补充规则。Linux 则应使用实际可执行文件名或完整路径。

进程规则能否命中,还取决于 Mihomo 是否启用了进程识别。配置中的 find-process-mode 有 always、strict 和 off 等模式;如果日志里没有进程信息,或 PROCESS-NAME 始终不命中,可以在确认权限和性能影响后测试 always。不要把它误认为 TUN 的进程白名单:它是规则匹配前的进程识别设置。Mihomo 配置示例中的 find-process-mode Mihomo PROCESS-NAME 与 PROCESS-PATH 规则

如果使用 TUN,Clash Verge Rev 还需要在设置中启用 TUN,并确认相应的服务或权限已经启动。Windows 通常需要服务模式或管理员权限;macOS 需要在“隐私与安全性”中允许相关系统扩展或网络权限;Linux 则要确认虚拟网卡、路由和防火墙权限。iOS 没有对应的 Clash Verge Rev 桌面客户端,不能直接照搬 Windows 的配置路径。

TUN 白名单和进程白名单不要混用

很多教程会把“只让某些应用进入 TUN”写成 include-process 或 exclude-process,但这不能直接当作 Clash Verge Rev 与 Mihomo 的通用配置。Mihomo 官方 TUN 文档列出的相关字段包括 include-interface、exclude-interface、include-uid、exclude-uid、地址范围和网卡等,并没有桌面端通用的 exclude-process 字段。Mihomo 的相关功能请求也曾明确记录为未计划实现。Mihomo TUN 配置文档 Mihomo exclude-process 功能请求

因此,想让浏览器走代理、聊天软件直连时,建议使用“启用 TUN + PROCESS-NAME 规则”,而不是给 TUN 配置添加未经支持的进程字段。一个可执行的判断顺序是:

  1. 确认 Clash Verge Rev 当前内核是 Mihomo,并在设置页开启 TUN。
  2. 确认系统代理或 TUN 至少有一种接管方式正在工作。
  3. 把应用进程名写入 PROCESS-NAME 规则。
  4. 把进程规则放在可能提前匹配的 GEOIP、GEOSITE 或 MATCH 规则之前。
  5. 打开日志,确认该连接显示了进程名并命中了预期策略。

如果你只想让某个用户或某个 Linux 服务绕过 TUN,可以研究 Mihomo 文档支持的 UID 或网卡字段;这与 Windows、macOS 桌面应用的进程名分流不是同一个功能,不能混写成一套跨平台配置。

规则写了但仍走代理:按这个顺序排查

1. 先看运行模式。如果当前处于 Global/全局模式,规则可能不会按预期决定连接路径,应切换到 Rule/规则模式。然后重新激活配置。

2. 看规则命中。在日志中搜索目标域名,确认命中的规则类型、规则内容和策略组。如果命中的是更早的 RULE-SET、GEOSITE 或 MATCH,说明你的白名单没有排在足够靠前的位置。

3. 看 Merge 是否真的生效。打开配置文件的扩展覆写编辑器,确认 YAML 缩进正确、键名写成 prepend-rules,而不是直接写顶层 rules。保存后重新激活配置;必要时使用“查看运行时配置”检查最终配置中是否出现规则。

4. 看策略组名称。规则第三列必须与当前订阅中的策略组名称完全一致,包括大小写、空格和符号。写错后,配置可能无法启动,也可能在客户端提示策略不存在。

5. 排查 DNS 和 fake-ip。启用 fake-ip 后,应用看到的可能是虚拟地址;IP 类规则的匹配时机与域名规则不同。对于明确的域名,优先使用 DOMAIN 或 DOMAIN-SUFFIX;对于局域网、固定网段等 IP 规则,再考虑 no-resolve。Mihomo 官方 DNS 文档说明了 fake-ip、nameserver-policy、respect-rules 等设置的作用,DNS 设置与规则分流需要一起检查。Mihomo DNS 配置文档

6. 看 TUN 和系统权限。TUN 没启动时,未设置系统代理的应用可能完全不会进入 Mihomo;Windows 检查服务模式和管理员权限,macOS 检查“隐私与安全性”中的放行状态,Linux 检查虚拟网卡、路由和防火墙。端口常见默认为 7897 或 7890,以设置页为准。

7. 排查应用自身的后台进程。浏览器、游戏启动器、更新器和沙盒应用经常由多个进程发起网络连接。主程序规则不命中时,先从日志里找实际进程名,再使用 PROCESS-NAME 或 PROCESS-PATH 补充。

Merge 和 Script 的区别,以及如何避免配置被覆盖

扩展覆写配置适合静态 YAML,例如添加前置规则、DNS 字段或简单的配置项;扩展脚本适合需要读取原配置、按条件修改数组或批量追加内容的场景。Clash Verge Rev 的界面说明了全局 Merge、全局 Script、配置文件 Merge、配置文件 Script 的执行顺序;由客户端设置直接管理的字段,扩展里写了也可能在最后被客户端设置重新应用。Clash Verge Rev 扩展顺序说明

对于普通网站白名单,优先使用 prepend-rules,不要直接把完整订阅的 rules 数组复制出来再修改。直接写顶层 rules 容易覆盖远程订阅原有规则;直接写顶层 proxies 也可能导致订阅节点消失。只有在你明确知道扩展语法和数组合并行为时,才使用 Script 做更复杂的追加。

保存后建议做三项验证:第一,重新激活配置后规则仍然存在;第二,订阅更新后规则仍然存在;第三,日志能显示目标连接命中预期规则。三项中任一项失败,就回到配置文件级 Merge 检查,而不是继续叠加更多规则。

常见问题

Clash Verge 配置白名单应该放在哪个位置?

普通网站白名单放在当前订阅卡片的扩展覆写配置中,使用 prepend-rules 添加到原规则之前。不要直接修改远程订阅文件,也不要在前置规则末尾添加 MATCH,DIRECT。

为什么写了 DOMAIN-SUFFIX 规则,网站还是走代理?

先检查当前是否为 Rule 模式,再看日志实际命中的规则。如果更早的 RULE-SET、GEOSITE 或 MATCH 已经匹配,说明自定义规则没有排在前面;如果命中了 DIRECT 仍打不开,再检查 DNS、fake-ip、IPv6 和应用自身的后台域名。

Clash Verge 能不能设置 exclude-process,让某个应用不进入 TUN?

不能把 exclude-process 当作当前通用配置直接使用。Mihomo TUN 文档列出的是网卡、UID、地址等字段;桌面应用更稳妥的做法是启用 TUN 后用 PROCESS-NAME 或 PROCESS-PATH 规则指定 DIRECT 或代理策略。

PROCESS-NAME 规则为什么不生效?

确认进程名是否正确、规则是否排在前面、TUN 或系统代理是否真正接管连接,并检查 find-process-mode 是否关闭。Windows 在任务管理器“详细信息”查看映像名,macOS 用活动监视器或 ps 查看实际进程名。

配置更新后白名单消失了怎么办?

不要编辑订阅生成的运行时文件。把规则保存到当前订阅的扩展覆写配置中,重新激活后再更新订阅;如果仍消失,检查 Merge 是否保存成功以及运行时配置中是否出现 prepend-rules。

相关阅读

参考资料

  1. Clash Verge Rev Releases
  2. Clash Verge Rev 配置文件界面与扩展顺序
  3. Mihomo 路由规则文档
  4. Mihomo DNS 配置文档
  5. Mihomo TUN 配置文档
  6. Mihomo exclude-process 功能请求
  7. Mihomo 配置示例中的 find-process-mode