Clash Verge Rev覆写(Override)使用教程:自定义规则不求人
目录
什么是 Clash Verge Rev 覆写
大多数用户在使用 Clash Verge Rev 时,仅仅停留在导入机场订阅、开启系统代理的基础阶段。然而,机场提供的默认配置往往为了兼容所有用户而牺牲了个性化需求,比如 DNS 污染处理不够彻底、特定网站分流错误、或者缺少最新的内核优化参数。为了解决这些问题,Clash Verge Rev 引入了强大的覆写(Override)机制。
覆写功能允许你在不修改原始订阅文件的前提下,通过叠加自定义配置来改变最终生效的规则和参数。这种方式不仅保证了订阅更新的稳定性,还能让你根据自身网络环境进行深度定制。掌握覆写功能,是从小白迈向高阶玩家的必经之路。
覆写文件的三种核心类型
在 Clash Verge Rev 中,覆写机制主要分为三种类型,它们的作用范围和生效时机各有不同。理解这三者的区别,是正确配置的前提。
Global 覆写:全局生效,优先级最高。它会覆盖所有订阅的配置,适合设置全局的 DNS、TUN 模式或通用规则。
Profile 覆写:仅对当前选中的订阅生效。适合针对特定机场的节点特性进行微调,例如修改某个订阅的默认策略组名称。
Script 覆写:使用 JavaScript 脚本在配置加载前进行动态处理。这是最灵活的方式,可以通过代码批量修改节点名称、添加隐藏参数或过滤劣质节点。
基础实操:使用 Profile 覆写修改内核参数
Profile 覆写是最常用的配置方式。通过它,我们可以轻松优化 mihomo 内核的底层参数,提升解析速度和连接稳定性。
在 Clash Verge Rev 主界面左侧菜单选择“订阅”,点击你正在使用的订阅卡片右侧的“编辑”图标,切换到“覆写”标签页。选择 Profile 类型,点击新建。
在编辑器中输入以下 YAML 配置,用于开启 fake-ip 模式并优化 TUN 栈:
dns:
enable: true
enhanced-mode: fake-ip
fake-ip-range: 198.18.0.1/16
fake-ip-filter:
- '*.lan'
- localhost.ptlogin2.qq.com
nameserver:
- https://doh.pub/dns-query
- https://dns.alidns.com/dns-query
tun:
enable: true
stack: mixed
dns-hijack:
- any:53
使用 mixed 栈可以在 TUN 模式下兼顾系统兼容性与网络性能。如果你的设备内存充足,建议在内核配置中开启 tcp-concurrent: true 以启用 TCP 并发,显著提升多连接场景下的吞吐量。
进阶实操:利用 Script 覆写动态处理节点
当机场下发的节点缺少某些关键参数(如 TLS 指纹伪装)时,手动修改几百个节点是不现实的。此时,Script 覆写就能大显身手。
在覆写编辑器中新建一个 Script 类型的覆写,选择 JavaScript 语言,输入以下代码:
function main(params) {
if (Array.isArray(params.proxies)) {
params.proxies.forEach(proxy => {
if (proxy.type === 'vmess' || proxy.type === 'vless' || proxy.type === 'trojan') {
proxy["client-fingerprint"] = "chrome";
proxy.udp = true;
}
});
}
return params;
}
这段脚本会遍历所有代理节点,为支持的协议自动添加 client-fingerprint: chrome 参数,并强制开启 UDP 转发。这能有效降低被防火墙识别为异常流量的概率,提升连接成功率。
规则覆写:自定义分流规则不求人
机场自带的规则往往滞后于互联网变化,导致部分国内网站被错误代理,或者某些小众网站无法直连。通过覆写,我们可以强制插入自定义规则。
在 Profile 覆写中,我们可以使用 prepend-rules 和 append-rules 来调整规则优先级。例如,强制让特定域名直连或走代理:
prepend-rules:
- DOMAIN-SUFFIX,my-custom-site.com,PROXY
- DOMAIN-KEYWORD,adservice,DIRECT
append-rules:
- GEOIP,CN,DIRECT,no-resolve
prepend-rules 会将规则插入到规则列表的最顶部,确保最高优先级;append-rules 则追加到最底部。关于如何编写更复杂的分流规则,建议参考Clash 规则配置入门教程,而针对多出口的精细化路由,可以阅读Clash 分流路由规则详解。
覆写配置的优先级与合并逻辑
很多新手在配置覆写后,发现设置没有生效,这通常是因为没有理清 Clash Verge Rev 的配置合并逻辑。
配置的合并顺序为:订阅原始配置 -> Profile 覆写 -> Global 覆写。后加载的配置会覆盖先加载的同名键值。但是,对于数组类型的配置(如 rules),默认行为是替换而非追加,除非你显式使用了 prepend-rules 或 append-rules。
如果你发现 Global 覆写覆盖了 Profile 中的关键设置,可以尝试将部分配置转移到 Profile 中,或者在 Global 中使用更精确的键名。深入了解这些合并机制,可以参考Clash Verge Rev 进阶技巧中的相关说明。
常见覆写错误排查与调试技巧
编写覆写配置时,YAML 语法错误或逻辑冲突是常见问题。掌握调试技巧可以节省大量排查时间。
Clash Verge Rev 的编辑器自带语法高亮。如果某一行标红,通常意味着缩进错误或拼写错误。确保使用空格进行缩进,严禁使用 Tab 键。
开启“日志”面板,将日志级别设置为 Debug 或 Info。重新加载订阅后,观察日志中是否有 parse config error 或 merge profile failed 的报错信息。日志会精确指出出错的行号和原因。
对于复杂的 Script 覆写,建议在本地使用 Node.js 环境先运行测试脚本,确保 JSON 对象处理逻辑无误后,再粘贴到 Verge Rev 中。
总结与进阶学习建议
Clash Verge Rev 的覆写功能是实现个性化代理体验的核心。通过 Global、Profile 和 Script 三种覆写方式的灵活组合,你可以完全掌控 DNS 解析、节点属性和分流规则,不再受制于机场的默认配置。
建议初学者从 Profile 覆写修改 DNS 和基础规则开始,逐步过渡到 Script 脚本处理节点。在配置过程中,保持耐心,多看日志,多参考社区的优秀配置示例。随着你对 mihomo 内核理解的加深,你将能够打造出最契合自身网络环境的完美代理方案。