CLASH KNOWLEDGE BASE

使用教程与最新动态

客户端安装、配置导入、规则分流及常见问题说明。

教程

Clash vpn分流规则能按进程(Process)匹配吗?

在ClashVPN中,PROCESS-NAME规则支持按进程名匹配流量,格式为PROCESS-NAME,进程名.exe,动作,例如PROCESS-NAME,WeChat.exe,DIRECT让微信直连或PROCESS-NAME,Steam.exe,PROXY让Steam走代理。该规则仅在启用TUNMode(虚拟网卡模式)时生效,系统代理模式下无法捕获进程信息。进程名需在任务管理器的「详细信息」中确认,需包含完整名称和文件后缀,大小写需与实际一致。进程规则建议放在规则列表前面(如内网规则之后、域名规则之前),确保特定应用流量优先匹配。若规则未生效,检查TUNMode是否开启、进程名是否准确,并在Clash的「连接」面板中查看该请求命中的规则。订阅配置中自定义进程规则在更新后会丢失,需通过Merge或Parsers的prepend-rules将规则插入到订阅规则列表最前面永久保留。PROCESS-NAME规则的基本原理与支持情况按进程名匹配流量的规则类型ClashVPN的分流规则确实支持按进程名称进行匹配,对应的规则类型为PROCESS-NAME。该规则格式为PROCESS-NAME,进程名.exe,动作,例如PROCESS-NAME,WeChat.exe,DIRECT可将微信的所有流量直连放行,PROCESS-NAME,Steam.exe,PROXY可让Steam的流量走代理通道。进程级规则让用户能够精确控制单个应用程序的网络行为,适用于游戏加速、软件授权验证绕过等精细化分流场景。Windows平台是主要支持环境PROCESS-NAME规则在不同操作系统上的支持情况存在差异,Windows平台是主要适用环境。在Windows系统中,Clash可以通过进程管理API获取发起网络请求的进程信息,从而实现按进程名的精准匹配。macOS和Linux平台的支持相对有限,部分内核版本可能无法正确捕获进程信息。若需要在非Windows环境中使用进程级分流,建议查阅对应内核版本的文档确认支持情况,或考虑使用其他分流规则类型作为替代方案。在Clash规则列表中的位置与格式PROCESS-NAME规则在配置文件中与其他规则类型共用同一个rules字段,遵循“从上到下、先命中先生效”的匹配顺序。配置示例为rules:-PROCESS-NAME,进程名.exe,动作-DOMAIN-SUFFIX,google.com,PROXY-GEOIP,CN,DIRECT-MATCH,PROXY。由于进程级规则的匹配精度较高,通常建议将其放在规则列表的前面位置(如内网规则之后、域名规则之前),确保特定应用的流量在匹配其他规则之前即被正确处理。MATCH兜底规则必须始终放在最后一行。启用TUNMode是生效的前提条件TUN模式捕获进程信息的必要性PROCESS-NAME规则只有在Clash启用TUNMode(虚拟网卡模式)时才能有效工作,这是该规则生效的关键前提。系统代理(SystemProxy)仅在应用层工作,无法获取发起网络请求的具体进程信息,因此在此模式下PROCESS-NAME规则不会生效。TUN模式通过创建虚拟网卡在网络层截获所有流量,Clash内核能够同时捕获数据包及其关联的进程标识,从而实现按进程名的精确分流。在ClashVerge等客户端中,需在「设置」中手动开启TUNMode并确保虚拟网卡服务成功启动。开启TUN模式的具体操作步骤在ClashVergeRev中启用TUN模式的操作路径为:打开客户端「设置」页面,找到"TUNMode"开关并将其开启。首次启用时系统可能提示安装虚拟网卡服务,需授权并确保服务成功启动。开启后,Clash通过虚拟网卡接管系统全部流量,PROCESS-NAME规则开始生效。若TUNMode与其他VPN软件(如游戏加速器)同时启用可能产生虚拟网卡冲突,建议在使用PROCESS-NAME规则时,关闭其他虚拟网卡类软件或在Clash配置中为冲突进程添加PROCESS-NAME直连规则。TUN模式下进程规则的限制即使在TUN模式下,PROCESS-NAME规则仍存在一些使用限制。规则需匹配完整的进程名(含可执行文件后缀,如.exe),且不适用于TAP模式的流量。进程名的大小写和拼写必须与实际运行的程序名称完全一致,任何差异都会导致规则失效。此外,该规则仅对由TUN网卡捕获的流量有效,部分使用系统代理通道的应用流量可能无法被进程规则捕获。若发现规则未生效,可在Clash的「连接」面板中查看该应用的请求是否经过TUN网卡。在配置文件中编写与编辑进程规则手动编辑config.yaml添加PROCESS-NAME规则在config.yaml配置文件中添加PROCESS-NAME规则时,需按照标准YAML格式写入rules字段。配置示例为-PROCESS-NAME,Thunder.exe,DIRECT(让迅雷直连)或-PROCESS-NAME,telegram.exe,PROXY(让Telegram走代理)。添加规则时需确保进程名与实际运行程序的映像名称完全一致,可在任务管理器的「详细信息」中查看准确的主进程名称。规则添加完成后保存文件,在Clash客户端中重新加载配置使其生效。在ClashVergeRev中通过界面编辑规则ClashVergeRev提供了图形化的规则编辑功能,用户无需直接编辑YAML文件即可添加PROCESS-NAME规则。操作路径为:在「配置」页面右键点击当前使用的配置文件,选择"EditRules"或"编辑规则",在"PrependRules"(前置规则)区域中按格式添加进程规则,例如-PROCESS-NAME,WeChat.exe,DIRECT。前置规则会被插入到规则列表的最前面,获得最高优先级。编辑完成后点击保存,并重新启用配置文件使规则生效。这种方式操作直观,适合不熟悉YAML语法的用户。使用Parsers预处理机制添加进程规则对于通过订阅链接获取的配置,可直接修改配置文件会在订阅更新时被覆盖,可使用Parsers预处理机制永久添加PROCESS-NAME规则。在Clash配置中声明parsers字段,指定订阅链接和要前置添加的规则,例如parsers:-url:订阅链接yaml:prepend-rules:-"PROCESS-NAME,Rhino.exe,REJECT"。每次订阅更新时,Parsers会自动将规则插入到订阅规则列表的最前面,确保进程规则始终优先匹配且不会被订阅覆盖。此方式适合需要长期为特定应用配置进程规则的用户。进程规则的典型应用场景让游戏或软件直连不走代理PROCESS-NAME规则最常见的用途是让特定应用不走代理(DIRECT),避免代理节点的不稳定影响应用性能。对于对网络延迟敏感的国内游戏或软件授权验证服务,配置PROCESS-NAME,游戏进程名.exe,DIRECT可让该应用直连,确保延迟最低且不受代理节点波动影响。有用户反馈Rhino软件开启Clash后授权被移除,通过PROCESS-NAME,Rhino.exe,REJECT规则让Rhino流量被拒绝或直连,从而绕过代理导致的验证问题。配置时需确保进程名准确,并在Clash的「连接」面板中验证规则是否生效。强制特定应用走代理通道对于某些默认不走系统代理的应用(如命令行工具、UWP应用),PROCESS-NAME规则可强制其流量走代理通道。例如配置PROCESS-NAME,telegram.exe,PROXY可让Telegram的所有流量经过代理节点,不受应用自身网络栈设计的影响。该规则适用于那些不支持在应用内配置代理、但需要走代理才能正常使用的软件。配合TUN模式使用时,进程规则能够覆盖系统代理模式下无法捕获的应用程序,是解决“Clash已连接但某应用无法联网”问题的有效手段。精细化分流与多应用策略管理进程规则可与其他规则类型配合,实现按应用+按域名的精细化分流。例如在规则列表中配置PROCESS-NAME,Steam.exe,游戏节点组让Steam流量固定走游戏节点,配置DOMAIN-SUFFIX,steamcommunity.com,PROXY让Steam社区的域名走通用代理,两者结合实现应用层和域名层的双重控制。对于同时运行多个需要不同代理策略的应用的场景,进程规则提供了比单纯域名规则更直接的控制维度,用户可根据应用类型分配不同的策略组,实现流量管理的精细化。进程规则与其他分流规则的配合与DOMAIN-SUFFIX和GEOIP规则的优先级安排在包含PROCESS-NAME规则的完整分流配置中,规则排序需兼顾进程级、域名级和IP级的匹配需求。推荐的排序为:内网IP段直连(IP-CIDR)→进程规则(PROCESS-NAME)→精确域名规则(DOMAIN-SUFFIX)→GEOSITE分类规则→GEOIP规则→MATCH兜底。将进程规则放在域名规则之前,可确保特定应用的流量在域名匹配之前即被处理,避免被后续的域名规则覆盖。GEOIP,CN,DIRECT作为国内IP直连规则,应放在域名规则之后、MATCH之前,作为IP层面的兜底直连手段。与SRC-IP-CIDR规则的互补使用SRC-IP-CIDR规则按请求的源IP地址匹配,PROCESS-NAME按进程名匹配,两者可在不同维度上实现精准分流。SRC-IP-CIDR适用于按终端设备分流的场景(如家庭网络中为不同设备配置不同策略),PROCESS-NAME适用于单台设备上按应用分流的场景。在家庭网关或旁路由部署中,两者可组合使用:先通过SRC-IP-CIDR按设备分流,再在设备内部通过PROCESS-NAME按应用细化策略。这种组合方式实现了从设备到应用的完整控制链路。进程规则的覆盖与冲突处理当同一应用的流量同时匹配了PROCESS-NAME规则和后续的域名规则时,PROCESS-NAME规则因位置靠前而优先生效。这意味着用户可以通过进程规则完全覆盖订阅配置中对该应用域名的错误设定。若需要让某应用的特定子域名走不同的策略(如Steam主程序走游戏节点,但Steam商店走通用代理),需在进程规则之后添加精确的域名规则(如DOMAIN-SUFFIX,store.steampowered.com,通用节点),利用“先命中先生效”的机制实现进程级和域名级的分层控制。常见问题FAQ

教程

Clash vpn自定义规则能保存下来吗?更新订阅会覆盖吗?

在ClashVPN中,直接在订阅配置中添加的自定义规则在订阅更新时会被完整覆盖而丢失,因为订阅更新执行的是全量配置文件替换。为了永久保存自定义规则,需使用ClashVergeRev的Merge功能(全局扩展配置)或parsers预处理机制将规则叠加到订阅配置之上。Merge配置中prepend-rules将自定义规则插入到订阅规则列表最前面,获得最高优先级且不被订阅覆盖;append-rules将规则插入到列表最后面作为补充兜底。在ClashVergeRev的「配置」页面找到Merge选项,在YAML编辑框中添加prepend-rules字段并写入自定义规则,保存后每次加载配置时自动生效。parsers方式在订阅更新时对配置文件执行预处理,配置格式为parsers:-url:订阅链接yaml:prepend-rules:-"DOMAIN-SUFFIX,example.com,PROXY"。建议定期导出Merge配置备份,便于在多设备间同步或配置错误时快速恢复。若完全不使用订阅配置,可直接在本地配置文件的rules字段中添加所有规则,此类配置不受订阅更新影响,完全由用户自主维护。订阅更新机制与自定义规则覆盖的原理全量替换是订阅更新的核心逻辑ClashVPN的订阅更新执行的是完整的配置文件替换操作,远端服务器返回的配置文件会直接覆盖本地config.yaml文件中的所有内容。当用户执行订阅更新时,客户端从订阅链接拉取服务商预设的完整配置,包括proxies(节点列表)、proxy-groups(策略组)和rules(分流规则)等全部字段,这些内容会完全替换本地原有的对应字段。如果在订阅配置中直接添加或修改了任何规则,在订阅更新后这些修改都会被服务商的最新配置覆盖而丢失。直接在订阅配置中修改是临时性的直接在Clash配置编辑器中修改订阅的规则属于本地临时修改,其生效周期仅限于当前配置文件被覆盖之前。由于订阅更新时会完整替换配置文件,所有在订阅配置中手动添加的规则在更新后都会被抹去,恢复到服务商预设的规则列表。这种修改方式适用于临时测试或调试目的,但无法作为长期保留自定义规则的手段。若用户需要持久保存自定义规则,必须使用Clash提供的规则叠加机制而非直接修改订阅配置。服务商预设规则与自定义需求的冲突服务商的预设规则通常面向所有用户,采用通用的分流策略,可能无法满足每个用户的个性化需求。例如部分用户希望特定域名强制走代理而服务商预设为直连,或希望某些国内网站直连而服务商预设为走代理。当预设规则与用户需求不符时,若直接在订阅配置中修改,每次订阅更新后自定义配置就会丢失,需要重新添加。这种重复劳动不仅耗时,还容易因遗漏导致特定网站分流异常。ClashVergeRev的Merge功能保存规则Merge功能的叠加原理与操作方法ClashVergeRev的Merge功能(全局扩展配置)允许用户将自定义规则叠加到订阅配置之上,而无需直接修改订阅文件。在ClashVergeRev的「配置」页面中找到“全局扩展配置”或“Merge”选项,在YAML编辑框中添加prepend-rules字段,将自定义规则写入该字段。保存后每次加载配置时,这些规则会自动插入到订阅规则列表的最前面,获得最高优先级。Merge规则存储在客户端的独立配置文件中,不随订阅更新而被覆盖,从而实现自定义规则的持久保存。prepend-rules与append-rules的区别与选择在Merge配置中,prepend-rules和append-rules分别用于将自定义规则插入到订阅规则列表的最前面和最后面。prepend-rules适合需要优先匹配的场景(如特定域名强制走代理),确保自定义规则在任何订阅规则之前生效。append-rules适合作为兜底的通用规则(如MATCH规则),放在订阅规则之后作为补充匹配。通常建议使用prepend-rules将自定义精确规则插入到订阅规则之前,让它们获得最高优先级,避免被订阅中的宽泛规则覆盖。在Merge中配置多条自定义规则的写法在Merge的YAML编辑框中可同时配置多个自定义规则,每行一条,按照预期匹配顺序排列。配置示例为prepend-rules:-"DOMAIN-SUFFIX,example.com,PROXY"-"IP-CIDR,192.168.0.0/16,DIRECT"-"DOMAIN-KEYWORD,ads,REJECT"。规则按顺序逐条匹配,越靠前的规则优先级越高。建议将最重要的精确规则放在最前面,将通用规则放在后面。配置完成后保存并在「配置」页面重新加载当前配置,即可使Merge规则生效。parsers预处理机制的使用方法parsers的基本概念与配置格式parsers是Clash内核提供的配置预处理机制,在每次订阅更新时对拉取的配置文件执行自动化修改。parsers配置在Clash的配置文件中(通常在config.yaml的顶层字段),格式为parsers:-url:订阅链接yaml:prepend-rules:-"DOMAIN-SUFFIX,example.com,PROXY"。当执行订阅更新时,Clash会先拉取订阅配置,再根据parsers规则对配置进行修改,将自定义规则插入到订阅规则列表指定位置,然后加载修改后的配置。为不同订阅配置独立的parsers规则当用户同时使用多个订阅链接时,可为每个订阅配置独立的parsers规则,实现差异化的自定义策略。在parsers配置中,通过url字段指定对应的订阅链接,只有匹配该链接的订阅更新时才会应用对应的预处理规则。例如订阅A需要特定域名走代理,订阅B需要内网直连,可分别为两个订阅配置不同的prepend-rules。这种方式适合管理多个服务商的订阅,每个订阅独立维护自定义规则而不互相干扰。parsers与Merge功能的对比选择parsers和Merge功能都能实现自定义规则的持久保存,但适用场景和配置方式有所不同。parsers在订阅更新时对配置文件进行预处理,将自定义规则直接写入拉取后的配置中,适用于需要深度修改订阅配置的场景。Merge功能则在客户端加载配置时进行规则叠加,不修改订阅文件本身,操作更简便。对于大多数普通用户,推荐使用ClashVergeRev的Merge功能,界面直观且无需编写parsers的复杂配置。覆写功能在规则持久化中的应用覆盖订阅规则中的错误条目当订阅配置中存在错误的规则(如将某个境外域名误设为DIRECT)且无法通过调整顺序解决时,可在Merge或parsers中使用精确规则覆盖该错误条目。通过prepend-rules将DOMAIN-SUFFIX,错误域名.com,PROXY插入到订阅规则列表最前面,让精确规则优先于订阅中的错误直连规则匹配。这种方式无需修改订阅配置本身,通过更高优先级的自定义规则覆盖了订阅中的错误设置,同时保留了订阅的自动更新能力。叠加规则与订阅规则的优先级控制prepend-rules插入的规则位于订阅规则列表的最前面,因此拥有最高优先级。当自定义规则与订阅规则冲突时,自定义规则优先匹配生效。这意味着用户可以通过prepend-rules完全覆盖订阅中对特定域名的规则设定,实现个性化的分流策略。若希望自定义规则作为订阅规则的补充而非覆盖,可使用append-rules将规则插入到订阅规则列表最后面,仅在订阅规则未匹配时生效。覆写功能的版本兼容性说明prepend-rules和append-rules功能在Mihomo内核和ClashVergeRev中均有支持,但不同客户端版本的配置界面可能存在差异。ClashVergeRev从v1.3.0版本开始完整支持Merge功能,若使用较旧版本,部分客户端可能不支持图形化的Merge配置,需通过parsers方式实现。建议将ClashVergeRev更新至最新版本以获得最完整的Merge功能支持。自定义规则的备份与迁移导出Merge配置便于多设备同步在ClashVergeRev中配置的Merge规则可导出为单独的文件,便于在多台设备间同步使用。在Merge编辑框中复制自定义规则的YAML内容,保存为文本文件(如custom-rules.yaml),在其他设备的ClashVergeRev中粘贴相同内容即可复用。这种方式可避免在多设备上重复配置相同的自定义规则,确保不同设备上的分流策略保持一致。将自定义规则整合到本地配置中对于完全不使用订阅配置的用户,可直接在本地配置文件的rules字段中添加所有规则,这些规则不会因订阅更新而被覆盖。将订阅配置保存为本地文件后,在rules字段中按照预期顺序排列所有规则,后续使用此本地配置而非在线订阅链接。此方式适合那些不需要频繁更新订阅节点、主要使用自建节点的用户,自定义规则完全由用户控制,不受任何外部更新影响。规则变更的版本记录与回滚在频繁调整自定义规则的过程中,建议对配置文件进行版本记录,便于在规则错误时快速回滚。可将每次规则调整后的配置文件备份至云存储或本地存档,标注修改日期和内容。若使用Git等版本控制工具管理配置文件,每次修改规则时提交版本注释,当出现问题时可通过gitdiff查看具体改动,或通过gitcheckout快速回退到之前稳定的版本。常见问题FAQ

教程

Clash vpn规则写错了会导致什么后果?怎么排查?

在ClashVPN中规则写错会导致国内网站走代理加载缓慢、特定网站被错误直连无法访问、代理功能完全失效或Clash内核无法启动等后果。排查规则问题时,打开ClashVergeRev的「连接」面板查看特定请求命中的规则名称,若显示为DIRECT而非预期PROXY,说明精确规则被放在GEOIP,CN,DIRECT等通用规则之后,需将其移动到规则列表前面。MATCH规则必须放在rules字段的最后一行,否则其后的所有规则永远不会被执行。订阅配置中自定义规则在更新后会被覆盖,通过Merge功能或parsers的prepend-rules可将自定义规则插入到规则列表最前面永久保留。规则语法错误(如YAML缩进不一致、冒号后缺少空格)会导致内核加载失败,在Clash日志中可查看具体的错误行号和原因。备份有效的配置文件并在修改前保存历史版本,可在规则错误导致网络中断时快速恢复。若规则错误导致完全无法上网,将代理模式切换为“全局”或临时关闭Clash可快速恢复网络访问,待排查修正后再启用规则模式。规则错误导致的典型后果国内网站无法访问或加载缓慢当GEOIP,CN,DIRECT规则被误删、放错位置或被其他规则覆盖时,国内网站的流量可能被错误地送入代理通道。由于代理节点回传国内的线路通常不稳定,国内网站的访问速度会大幅下降,甚至完全打不开。若MATCH,PROXY被错误地放在了规则列表中间,其后面的所有直连规则都会被跳过,导致国内网站流量全部走代理。此时关闭Clash后国内网站恢复正常,重新开启Clash后又变慢,基本可以判断是规则配置问题而非节点问题。代理节点流量异常或完全无法上网当MATCH规则被省略或放在了DIRECT规则之前时,本应走代理的境外流量可能被直连放行,导致代理功能完全失效。若DOMAIN-SUFFIX等精确规则的域名后缀写错(如写成gooogle.com),特定网站流量会落到MATCH规则上,若MATCH规则配置为DIRECT,则该网站无法通过代理访问。当出现“Clash已连接且节点正常,但打开网页时频繁弹出下载文件或显示纯文本”的异常情况时,通常是HTTPS流量被错误地强制解密,说明HTTPS解密功能的相关规则配置错误。特定网站无法访问或分流异常当精确规则被GEOIP,CN,DIRECT等宽泛规则覆盖时,特定网站的流量可能被直连放行而非走代理通道,导致该网站无法打开。在Clash的「连接」面板中查看该请求命中的规则,若显示为DIRECT但预期是PROXY,说明精确规则放在了通用规则之后。若REJECT规则范围过大(如使用DOMAIN-KEYWORD匹配了过于宽泛的关键词),可能导致正常网站被误拦截。当发现“该网站明明在规则列表中写了PROXY,但还是走到了DIRECT”时,通常是因为规则被放在了GEOIP,CN,DIRECT后面,被提前匹配并直连放行了。使用连接面板定位问题规则查看具体流量的命中规则在ClashVergeRev的「连接」面板中点击任意活跃连接,即可查看该请求命中的具体规则名称和动作类型。当发现某个网站分流异常时,打开「连接」面板访问该网站,查看对应的连接命中了哪条规则。若显示为DIRECT而非预期PROXY,说明该请求在被精确规则匹配前已被某条直连规则捕获。若命中规则为MATCH,说明前面所有规则都没匹配上,该请求最终落到了兜底规则上,可能是精确规则的匹配条件写错了。对比预期规则与实际命中规则在「连接」面板中查看命中规则后,将其与预期策略对比可快速定位问题。若某境外网站预期走代理但实际显示DIRECT,检查GEOIP,CN,DIRECT等宽泛直连规则是否放在了该网站的精确代理规则之前。若命中规则为REJECT,则说明某条拦截规则匹配了该请求,可能是广告拦截规则范围过大。若命中规则为MATCH,检查该网站的DOMAIN-SUFFIX规则是否拼写正确,或是否被其他规则提前覆盖。结合日志深入排查复杂问题当「连接」面板信息不足以定位问题时,可将Clash日志级别调至Debug模式获取完整的规则匹配过程。在ClashVergeRev中将日志级别切换为Debug,访问目标网站时观察日志输出,日志会记录流量依次通过了哪些规则检查,最终命中了哪条规则。结合连接面板的显示和Debug日志的详细输出,可准确判断规则顺序是否存在冲突,以及哪些规则覆盖了预期的精确规则。规则语法错误的排查方法检查YAML格式与规则书写规范配置文件中的YAML格式错误会导致Clash内核启动失败,表现为客户端提示“无法连接到核心服务”或加载配置时直接报错。常见的格式错误包括缩进不一致、冒号后缺少空格、使用了Tab键代替空格等。使用支持YAML语法高亮的编辑器(如VSCode)打开配置文件,检查rules字段下所有规则的缩进是否统一为两个空格,每条规则中的逗号分隔是否正确。Clash启动时会生成日志文件,其中的错误信息会明确指出解析失败的行号和具体原因,根据日志逐行修正即可恢复。检查规则类型是否支持当前内核部分较新的规则类型(如GEOSITE、RULE-SET)仅在Mihomo内核中得到支持,在原版Clash内核中无法识别。若使用的客户端仍基于原版Clash内核,导入包含GEOSITE规则的配置会导致内核解析失败并退出。在ClashVergeRev的「关于」页面确认内核版本是否支持所使用的规则类型,若不支持则需升级客户端或修改规则为当前内核兼容的格式。若使用订阅配置且包含不支持的规则类型,可尝试通过订阅转换服务将规则转换为通用格式。使用外部验证工具检查配置在加载配置前,将配置内容粘贴到在线YAML验证工具中检查格式正确性,可提前发现潜在的语法错误。在线工具会标记缩进错误、缺失冒号或引号不匹配等常见问题,并给出具体行号提示。对于包含复杂规则集的配置,可先在测试环境中加载配置并观察日志输出,确认无错误后再应用到主设备。若客户端支持配置预览功能,在加载配置前先预览解析结果,检查rules字段是否按预期解析。规则覆盖与顺序冲突的排查精确规则被宽泛规则覆盖当精确的DOMAIN-SUFFIX规则被GEOIP,CN,DIRECT等宽泛规则放在前面时,宽泛规则会先匹配成功,导致精确规则无法生效。在config.yaml中检查规则顺序,将DOMAIN-SUFFIX、DOMAIN等精确规则移到GEOIP和GEOSITE规则之前,确保精确匹配优先于宽泛匹配。若规则来自订阅且无法直接修改顺序,使用Merge功能或parsers将自定义精确规则插入到规则列表最前面,覆盖订阅中的错误顺序。MATCH规则位置错误导致后续规则失效MATCH规则必须放在rules字段的最后一行,若放在了规则列表中间,其后面的所有规则将永远不会被执行。检查配置文件中的MATCH规则位置,确认其后没有其他规则条目。若在MATCH之后看到其他规则,将这些规则移动到MATCH前面。在ClashVergeRev中编辑配置时,可通过拖拽调整规则顺序,确保MATCH始终在列表底部。使用prepend-rules确保自定义规则优先通过订阅获取的配置在更新后会覆盖本地修改,自定义规则容易丢失或被订阅规则覆盖。使用ClashVergeRev的Merge功能或在parsers中配置prepend-rules,将自定义规则插入到订阅规则列表的最前面,确保它们在任何订阅规则之前优先匹配。prepend-rules方式可永久保留自定义规则,不受订阅更新的影响。配置文件备份与恢复策略定期备份有效配置文件在修改规则前备份当前工作的配置文件,可避免因错误修改导致网络中断后无法快速恢复。将配置目录中的config.yaml文件复制到安全位置(如桌面或云存储),修改配置后若出现网络问题即可通过恢复备份快速还原。建议在每次重大规则调整前创建备份,并在配置稳定后将备份归档保存,便于在订阅更新导致配置异常时回滚到稳定版本。使用配置版本管理降低风险对于频繁调整规则的用户,可使用Git等版本控制工具管理配置文件,记录每次修改的历史变更。每次修改规则时提交版本注释,当出现问题时可通过gitdiff查看具体改动,或通过gitcheckout快速回退到历史版本。版本管理不仅能追踪规则变更历史,还能在多设备间同步配置文件时保持一致性,降低因手动同步导致的配置错误风险。在测试环境验证后再应用到主设备对规则配置进行重大调整时,建议先在测试环境中验证其效果,确认无误后再应用到主设备。使用ClashVergeRev的配置预览功能检查规则解析结果,或通过clash-t-fconfig.yaml命令检查配置文件是否有语法错误。对于包含大量规则的配置,先在虚拟机或备用设备上加载并测试,观察分流效果和网络稳定性,确认无问题后再部署到主力设备上。常见问题FAQ

教程

Clash vpn怎么配置规则让局域网流量不走代理?

在config.yaml的rules字段顶部添加IP-CIDR,192.168.0.0/16,DIRECT、IP-CIDR,10.0.0.0/8,DIRECT和IP-CIDR,172.16.0.0/12,DIRECT三条规则,即可让所有局域网IP段流量直连不走代理。使用GEOIP,private,DIRECT规则效果相同且更简洁,一条规则即可覆盖所有私有IP段。内网直连规则必须放在规则列表最前面,确保其具有最高优先级,避免被后续规则覆盖。若使用订阅配置且直接在配置中添加规则,执行订阅更新后会丢失,需通过ClashVergeRev的Merge功能或parsers的prepend-rules将内网直连规则插入到规则列表最前面永久保留。启用TUN模式时可在tun字段中配置exclude-network参数排除局域网网段,从虚拟网卡层面直接让内网流量绕过代理。验证规则是否生效可在ClashVergeRev的「连接」面板中查看访问内网设备时命中的规则名称,确认是否显示为DIRECT。若显示PROXY则说明规则未正确匹配,检查规则位置并重新加载配置即可解决。使用IP-CIDR规则匹配内网IP段在配置文件中添加私有IP段直连规则让局域网流量不走代理的最直接方式是在config.yaml文件的rules字段中添加IP段匹配规则。标准配置是添加三条覆盖所有常见私有IP段的规则:IP-CIDR,10.0.0.0/8,DIRECT、IP-CIDR,172.16.0.0/12,DIRECT和IP-CIDR,192.168.0.0/16,DIRECT。这三条规则涵盖了局域网设备(如192.168.1.1路由器、NAS设备)的所有IP地址范围。添加后访问路由器管理页面或局域网共享文件夹的流量将直接放行,不会经过代理节点。规则放置位置决定生效优先级由于Clashvpn采用“自上而下逐条匹配、先命中先生效”的规则匹配机制,内网直连规则必须放在规则列表的最前面才能确保优先匹配。如果GEOIP,CN,DIRECT等通用规则放在内网规则之前,访问内网设备时可能先被通用规则匹配,但最终仍会直连,不会产生实质问题。但更规范的做法是将内网规则放在列表顶部,确保其具有最高优先级,避免不必要的规则匹配开销。MATCH兜底规则必须放在最后一行,否则后续规则无法生效。为特定内网设备配置精确直连规则当需要对局域网中特定设备配置独立策略时,可使用SRC-IP-CIDR规则匹配请求的源IP地址。该规则的格式为SRC-IP-CIDR,设备IP/32,DIRECT,例如SRC-IP-CIDR,192.168.1.100/32,DIRECT可将某台特定设备的所有流量直连放行。这种用法在网关或旁路由部署场景中较为常见,可对不同终端设备实施差异化的代理策略。该规则同样需要放在规则列表较前位置,确保在通用代理规则之前匹配生效。使用GEOIP规则实现局域网IP自动直连GEOIP,private规则的作用与配置GEOIP数据库中对内网私有IP段有专门的分类标记,使用GEOIP,private,DIRECT规则可让所有私有IP地址的流量自动直连。该规则的效果与手动配置IP-CIDR内网规则相同,但更简洁,一条规则即可覆盖10.0.0.0/8、172.16.0.0/12和192.168.0.0/16等所有私有IP段。GEOIP,private,DIRECT应放在规则列表的较前位置,通常在自定义精确域名规则之后、GEOSITE分类规则之前,确保内网流量在匹配其他规则之前即被直连放行。GEOIP,CN规则对国内IP的直连效果GEOIP,CN,DIRECT规则用于匹配所有归属地为中国的IP地址段,将这些流量直连放行。该规则覆盖了国内运营商和机构分配的大量IP地址,包括家庭宽带分配的IP。配置后访问国内网站和国内服务器的流量将自动直连,既提高访问速度,也节省代理节点的流量消耗。GEOIP,CN,DIRECT通常放在内网直连规则之后、MATCH兜底规则之前。它与IP-CIDR内网规则配合使用,形成“内网直连→国内IP直连→其余走代理”的标准分流逻辑。国内IP直连规则与局域网流量的区别GEOIP,CN,DIRECT和IP-CIDR内网规则虽然都执行DIRECT直连动作,但两者的适用范围不同。内网IP段规则仅匹配私有IP地址(10.x.x.x、172.16-31.x.x、192.168.x.x),这些IP无法在公网路由,无论如何都必须直连。GEOIP,CN,DIRECT匹配的是公网IP中归属地为中国的地址段,这些IP通过代理也能访问,但直连速度更快。在实际配置中,两者通常同时使用:先用IP-CIDR规则确保内网流量直连,再用GEOIP规则让国内公网IP直连,最后MATCH规则兜底将境外流量送入代理通道。通过TUN模式排除局域网网段TUN模式中exclude-network参数的配置在TUN模式下,Clash通过虚拟网卡接管全部系统流量,但可通过exclude-network参数让特定网段绕过Clash代理。在config.yaml的tun字段中添加exclude-network:-"192.168.0.0/16"-"10.0.0.0/8"-"172.16.0.0/12",可让所有局域网IP段直连,不经过TUN网卡处理。这种方式在系统代理模式下无需配置规则,直接从流量接管层面排除局域网流量,适合对TUN模式性能有较高要求或虚拟网卡与本地网络产生冲突的场景。启用TUN模式时局域网直连的注意事项当启用TUN模式且配置了exclude-network排除局域网网段时,需注意排除的网段覆盖范围是否包含了实际使用的内网地址段。若路由器使用非标准私有IP段(如169.254.x.x),需额外添加该网段到排除列表中。同时,开启TUN模式后应检查是否与其他虚拟网卡产生路由冲突,若出现网络异常可在TUN设置中排除相关网段。auto-route参数会自动设置路由表将流量导向TUN网卡,若与局域网流量冲突,可结合exclude-network精确控制流量走向。TUN模式与系统代理模式下局域网流量的处理差异在系统代理模式下,仅遵循系统代理设置的应用(如浏览器)的流量会经过Clash的规则系统,局域网内其他设备的访问请求不受影响。在TUN模式下,所有流经虚拟网卡的流量都会经过规则匹配,若不配置exclude-network排除局域网网段,访问路由器、NAS等内网设备的流量可能被错误地送入代理通道或造成路由冲突。因此启用TUN模式后,必须在内网规则或TUN参数中确保局域网流量被正确直连放行。订阅配置中永久保留内网直连规则使用Merge功能叠加自定义规则直接在订阅配置文件中修改rules字段添加内网直连规则,执行订阅更新时会被覆盖而丢失。ClashVergeRev的“全局扩展配置(Merge)”功能可将自定义规则叠加到订阅配置之上,每次更新时自动生效。在Merge的YAML编辑框中添加prepend-rules字段,将内网直连规则写入该字段,规则会被插入到订阅规则列表的最前面,获得最高优先级且永久保留。内网规则使用prepend-rules而非append-rules,确保其在任何订阅规则之前优先匹配。配置parsers实现规则预处理Clash的parsers预处理机制可在订阅更新时对配置文件执行自动化修改,将自定义规则插入到规则列表的最前面。在parsers配置中使用prepend-rules参数添加内网直连规则,每次订阅更新后这些规则会自动追加到rules字段的顶部,确保内网流量始终优先匹配。与Merge功能相比,parsers方式更适合需要在多个订阅配置中复用同一套内网直连规则的用户。配置时需确保YAML格式正确,URL字段填写对应的订阅链接,让预处理仅对目标订阅生效。保持规则配置简洁避免性能损耗在性能受限的设备(如硬路由)上部署Clash时,过多的规则会增加内核匹配时的CPU开销。内网直连规则建议保持简洁,使用GEOIP,private,DIRECT一条规则替代三条IP-CIDR私有IP段规则可减少规则数量。对于大量的规则集,可使用Mihomo内核的mrs二进制格式规则集减少文件大小和硬件资源占用。内网直连规则放在列表最前面,让大部分内网流量在匹配少量规则后即被直连放行,避免后续规则匹配开销。常见问题FAQ

教程

Clash vpn怎么添加规则让特定网站走直连不走代理?

在config.yaml的rules字段中添加DOMAIN-SUFFIX,需要直连的网站域名,DIRECT即可让特定网站不走代理。使用GEOIP,CN,DIRECT可让所有国内IP自动直连,无需逐个配置。进程级直连使用PROCESS-NAME,进程名.exe,DIRECT,需启用TUN模式才能生效。订阅配置中自定义规则会在更新时被覆盖,需通过ClashVergeRev的Merge功能或parsers的prepend-rules将直连规则插入到规则列表最前面永久保留。验证直连是否生效可在客户端的「连接」面板中查看该请求命中的规则名称,确认是否显示为DIRECT。若规则未生效,检查规则是否被放在了通用规则之后,调整其位置至列表最前面即可优先匹配。域名规则是最直接的直连配置方法在配置文件中使用DOMAIN-SUFFIX添加直连规则要让特定网站不走代理,最常用的方式是在config.yaml文件的rules字段中添加域名后缀匹配规则,格式为DOMAIN-SUFFIX,网站域名,DIRECT。例如要让百度直连,添加DOMAIN-SUFFIX,baidu.com,DIRECT即可匹配baidu.com及其所有子域名(如www.baidu.com、map.baidu.com)。如果只需匹配精确域名,可使用DOMAIN,www.example.com,DIRECT。添加规则时必须将其放在MATCH兜底规则之前,否则会被MATCH提前捕获而无法生效。规则放置位置的优先级考量由于Clash采用“自上而下逐条匹配、先命中先生效”的匹配机制,直连规则应放在通用规则之前,确保其具有最高优先级。如果GEOIP,CN,DIRECT这条国内IP直连规则已经放在前面,而某个网站的IP恰好属于国内,它就会被该规则自动直连,无需单独配置。若该网站属于境外IP但用户需要强制直连(如访问速度反而更快),则必须在GEOIP,CN,DIRECT之前添加精确的DOMAIN-SUFFIX规则,避免其先被GEOIP规则匹配而走代理。通过GEOIP通用规则实现批量直连对于需要让国内网站整体直连的场景,GEOIP,CN,DIRECT是最经典的规则配置。它会根据Clash内置的IP归属地数据库,将所有目标IP位于中国的请求自动标记为直连,无需为每个国内网站逐个添加规则。在此基础上,若想进一步优化国内常用域名的匹配效率,可在GEOIP,CN,DIRECT之前添加GEOSITE,cn,DIRECT,通过预编译的域名分类数据库直接匹配国内常用网站域名集合(如百度、淘宝、微信等),比基于IP的判断更快更精准。进程级直连规则的配置方法使用PROCESS-NAME让特定应用直连当需要让某个应用程序的所有流量都不走代理(如游戏客户端、银行软件等),可使用PROCESS-NAME规则按进程名匹配,格式为PROCESS-NAME,进程名.exe,DIRECT。例如让微信直连可添加PROCESS-NAME,WeChat.exe,DIRECT,让迅雷直连可添加PROCESS-NAME,Thunder.exe,DIRECT。该规则需要Clash开启find-process-mode才能生效,且在启用TUN模式时效果最佳,因为系统代理模式无法捕获进程信息。进程规则的适用限制与注意事项PROCESS-NAME规则仅在Windows系统上有效,且依赖TUN模式或find-process-mode的支持。配置时需确保进程名完全准确(包括大小写),任何拼写错误都会导致规则失效。若同时需要直连特定域名和特定进程,建议优先使用域名规则,因为域名匹配不依赖系统模式支持,适用性更广。当配置多条直连规则时,将它们统一放在规则列表的最前面,可获得最高优先级,避免被后续通用规则覆盖。使用IP段规则处理固定IP场景IP-CIDR规则用于内网和固定服务器直连对于访问内网设备(如路由器、NAS)或连接到固定IP地址的服务,可使用IP-CIDR规则将指定IP段设为直连。标准配置是在规则列表最前面添加IP-CIDR,10.0.0.0/8,DIRECT、IP-CIDR,172.16.0.0/12,DIRECT和IP-CIDR,192.168.0.0/16,DIRECT三条规则,覆盖所有常见私有IP段,确保局域网流量不会误入代理通道。若某台公司内部服务器使用固定公网IP(如1.2.3.4/32),也可使用IP-CIDR,1.2.3.4/32,DIRECT将其直连放行。该规则适用于目标IP固定不变的服务,若服务器使用CDN或动态IP则无法生效。IP-CIDR与GEOIP的配合使用策略在标准分流配置中,建议将内网IP段的IP-CIDR直连规则放在规则列表最前面,确保本地网络设备访问不被代理。随后再放置精确的域名直连规则,接着是GEOSITE分类规则和GEOIP规则。GEOIP,CN,DIRECT作为国家级别的IP直连规则,应放在GEOSITE,cn,DIRECT之后、MATCH之前,作为IP层面的兜底直连手段。这种“内网IP→精确域名→GEOSITE→GEOIP→MATCH”的排序逻辑,确保了不同场景下的直连规则都能按预期生效,避免因顺序错误导致的分流失效。订阅配置下永久保留直连规则的方法使用Merge功能叠加自定义直连规则直接在订阅配置文件中添加直连规则后,执行订阅更新时会被覆盖而丢失。ClashVergeRev提供了“全局扩展配置(Merge)”功能,用户可在其中添加自定义规则,这些规则会在每次订阅更新时自动追加到配置中。具体操作是进入「配置」页面,在“全局扩展配置”的YAML编辑框中添加prepend-rules字段,将直连规则写入该字段,它们会被插入到规则列表的最前面,获得最高优先级且不会被订阅覆盖。配置预处理parsers的用法Clashvpn还支持通过parsers进行规则预处理,在每次更新订阅时对配置文件执行自动化修改。在parsers配置中,使用prepend-rules参数可将自定义直连规则追加到订阅规则列表的最前面,确保其在匹配时具有最高优先级。与Merge功能类似,parsers方式同样能保留自定义规则不被订阅覆盖,适合需要在多个订阅配置中复用同一套直连规则的用户。配置parsers时需注意YAML格式的缩进规则,URL字段需填写对应的订阅链接,确保预处理仅对目标订阅生效。直连规则的验证与故障排查通过连接面板确认规则命中情况在ClashVergeRev中打开「连接」面板,点击任意活跃连接可查看其命中的具体规则名称和动作类型。当添加直连规则后,访问目标网站时在「连接」面板中确认是否显示为DIRECT,若显示PROXY则说明该请求未被直连规则捕获,可能因规则顺序问题被其他代理规则先匹配。此时需检查直连规则是否被放在了GEOIP,CN,DIRECT或MATCH,PROXY等通用规则之后,将其移动到规则列表最前面即可解决问题。检查规则顺序和拼写错误若直连规则未生效,常见原因包括规则在配置文件中位置靠后、域名后缀拼写错误或进程名大小写不正确。在配置文件中逐条核对rules字段的顺序,确保直连规则位于任何可能先匹配该域名的通用规则之前。使用DOMAIN-SUFFIX时检查后缀写法是否正确(如.google.com可匹配所有子域名),使用PROCESS-NAME时需确认进程名与实际运行的程序名称完全一致,包括大小写。修正后重新加载配置即可让直连规则生效。启用TUN模式提升规则匹配效果在系统代理模式下,部分应用和系统服务的流量可能不会经过Clash的规则系统,导致直连规则对其无效。开启TUN模式后,Clash通过虚拟网卡接管系统全部流量,所有应用的网络请求都会经过规则匹配,直连规则可覆盖更广的范围。特别是PROCESS-NAME类型的直连规则,必须启用TUN模式才能正常工作,因为系统代理无法捕获进程信息。在ClashVergeRev的「设置」中开启TUN模式后,直连规则的覆盖能力将大幅提升。常见问题FAQ

教程

Clash vpn规则匹配顺序是怎么排的?谁先谁后?

在ClashVPN中,规则匹配顺序遵循“从上到下、逐条匹配、先命中先生效”的核心原则,配置文件中的书写顺序直接决定了规则的优先级高低。推荐的规则排序为:内网IP段直连规则(IP-CIDR)→精确域名规则(DOMAIN、DOMAIN-SUFFIX)→GEOSITE分类规则→GEOIP和IP-CIDR规则→MATCH兜底规则。精确规则应放在宽泛规则之前,避免被通用规则提前匹配导致分流失效。MATCH规则必须放在最后一行,否则其后的规则永远无法被执行。广告拦截规则(REJECT)必须放在代理类规则之前才能生效。订阅更新会覆盖手动修改的规则,通过ClashVergeRev的Merge功能或parsers的prepend-rules可将自定义规则叠加到订阅规则顶部,永久保留自定义优先级。排查规则顺序问题时,在「连接」面板中查看具体流量的命中规则,对比预期与实际匹配结果,结合Debug日志定位规则冲突,根据命中规则调整配置后重新加载即可修复。规则匹配的核心原则:从上到下,先命中先生效按数组顺序逐条匹配的执行逻辑ClashVPN的规则匹配顺序遵循“从上到下、逐条匹配、先命中先生效”的基本原则,这与配置文件中的规则书写顺序完全一致。当Clash处理一个网络请求时,内核从rules字段的第一条规则开始,逐条比对请求的目标域名或IP地址是否符合当前规则的匹配条件,若符合则立即执行该规则指定的动作(走代理、直连或拒绝),后续的所有规则不再参与判断。这意味着排在越前面的规则拥有越高的优先级,而MATCH作为兜底规则必须放在规则列表的最后一行。规则顺序决定优先级在规则系统中,规则的先后顺序直接决定了其优先级高低,先匹配到的规则拥有对这条流量的最终决策权。这种设计允许用户通过调整规则顺序来精细化控制分流逻辑,将更精确的规则放在更宽泛的规则前面,确保特定域名或IP的流量按预期处理。MATCH兜底规则必须放在最后MATCH规则是所有规则的兜底选项,用于匹配前面所有规则都未命中的请求,必须放在规则列表的最后一行。若将MATCH规则放在了规则列表的中间位置,它后面的所有规则将永远不会被匹配到,因为任何到达MATCH规则的流量都会被直接处理而不再继续检查后续规则。标准分流配置中,MATCH,PROXY作为最后一条规则,将所有未被国内规则匹配的境外流量送入代理通道。常见规则类型的优先级安排精确域名规则应排在首位DOMAIN和DOMAIN-SUFFIX等精确域名类规则拥有最高的匹配精度,应放在规则列表的最前面,确保特定域名的流量能够被优先处理。当用户为某个特定网站配置了专属代理策略时,例如DOMAIN-SUFFIX,openai.com,AI节点组,该规则必须放在GEOIP,CN,DIRECT等通用规则之前。若顺序相反,通用规则可能在精确规则之前匹配成功,导致该域名的流量被错误地直连或送入其他策略组。GEOSITE规则次之GEOSITE基于预编译的域名分类数据库进行匹配,覆盖面比精确域名规则更广,应放在精确域名规则之后、GEOIP规则之前。GEOSITE,cn,DIRECT可用于匹配国内常用网站的域名集合,GEOSITE,google,PROXY可匹配Google旗下所有服务。将这些规则放在精确域名规则之后,可以确保特定域名的独立策略优先于通用分类策略,同时避免为每个域名单独配置精确规则导致配置臃肿。GEOIP和IP-CIDR规则居中GEOIP和IP-CIDR类规则基于IP地址进行判断,应放在域名类规则(DOMAIN和GEOSITE)之后、MATCH规则之前。当请求的目标是IP地址而非域名时,此类规则才能发挥作用,而域名类规则在DNS解析完成前即可完成匹配,效率更高。标准分流配置中,GEOIP,CN,DIRECT用于匹配国内IP段,IP-CIDR,192.168.0.0/16,DIRECT用于匹配内网IP段,两者都放在域名类规则之后,作为IP层面的分流手段。MATCH放在最后兜底MATCH规则是规则列表的终点,必须放在最后一行,用于处理所有未被前面规则匹配的流量。在标准分流配置中,MATCH,PROXY将未匹配的境外流量送入代理通道。部分用户也会配置MATCH,DIRECT将所有未匹配流量直连,但这样会使代理功能失效,仅适用于不需要代理的场景。MATCH规则前面可以有REJECT规则用于拦截特定IP或域名,但REJECT规则应放在MATCH之前,确保被拦截的流量先被匹配。标准分流配置的推荐排序方案国内直连国外代理的完整规则顺序一套完整的规则配置应按照“精确域名→GEOSITE→GEOIP→IP-CIDR→MATCH”的顺序排列,确保分流逻辑清晰有效。推荐的规则顺序为:先放置内网IP段直连规则(IP-CIDR,192.168.0.0/16,DIRECT等),然后是自定义精确域名规则(DOMAIN-SUFFIX,特定服务.com,PROXY),接着是GEOSITE分类规则(GEOSITE,cn,DIRECT、GEOSITE,google,PROXY),再是GEOIP和IP-CIDR规则(GEOIP,CN,DIRECT、GEOIP,private,DIRECT),最后以MATCH,PROXY兜底。先放内网直连规则可避免本地设备访问被送入代理通道,提高响应速度。广告拦截规则的插入位置广告拦截规则(GEOSITE,ads,REJECT或RULE-SET,reject,REJECT)必须放在代理类规则之前,否则广告域名的请求会先被代理规则匹配并发送到节点,无法实现拦截效果。具体插入位置应在精确域名规则之后、GEOSITE分类规则之前,确保广告域名在走代理或被分类为国内网站之前就被拦截。社区维护的reject规则集通常包含了大量已知的广告和追踪域名,配合REJECT动作在代理层直接丢弃请求,可有效拦截广告且不消耗节点带宽。为特定服务配置专属节点组对于需要稳定访问的特定服务,可在规则列表较前位置配置DOMAIN-SUFFIX规则直接指向专属策略组,确保该服务始终使用指定节点。例如配置DOMAIN-SUFFIX,netflix.com,🎬流媒体组和DOMAIN-SUFFIX,openai.com,🤖AI组,并将这些规则放在GEOSITE和GEOIP规则之前。这样即使这些域名的IP归属地判断为国内或被GEOSITE分类为国内网站,精确规则仍会优先匹配,确保关键服务的流量固定走指定的节点组。规则顺序错误的典型症状精确规则被宽泛规则覆盖当精确域名规则被放在GEOIP或GEOSITE规则之后时,该域名的流量可能在到达精确规则之前已被宽泛规则匹配并处理。若宽泛规则执行的是DIRECT直连动作,而该网站实际需要走代理才能访问,则表现为该网站无法打开。在ClashVergeRev的「连接」面板中可查看该请求命中的规则,若显示为DIRECT而非预期PROXY,则说明精确规则被前面的宽泛规则覆盖,需调整规则顺序。MATCH前面有未执行的规则如果MATCH规则没有放在最后一行,其后面的规则将永远无法生效。这种错误常见于在配置中追加新规则时,未注意将其放在MATCH之前。检查配置文件确保MATCH规则是rules字段的最后一行。若在MATCH之后还看到其他规则,将它们移动到MATCH前面,否则这些规则永远不会被执行。订阅更新后自定义规则丢失通过订阅获取的配置,订阅更新会完整替换rules字段,手动添加的自定义规则在更新后会丢失。若用户直接在配置文件中修改了订阅配置,下次更新时这些修改会被覆盖。使用ClashVergeRev的Merge功能或在parsers中配置prepend-rules,可将自定义规则叠加到订阅规则之上,每次更新后自动插入到规则列表最前面。使用连接面板排查规则匹配问题查看具体流量的命中规则ClashVergeRev的「连接」面板可实时显示每条活跃连接所匹配的规则名称和动作去向,是排查规则顺序问题的最直接工具。打开「连接」面板,找到目标请求对应的连接,点击查看详情,即可看到该请求命中了rules字段中的哪一条具体规则以及执行的动作类型。当发现特定网站分流异常时,在「连接」面板中查看其命中的规则是定位问题的第一步。对比预期规则与实际命中规则在「连接」面板中查看命中规则后,将其与用户预期的分流策略进行对比,可快速判断问题所在。若某境外网站预期走代理(PROXY),但「连接」面板显示为DIRECT,说明该请求在被精确规则匹配之前已被某条直连规则匹配,需要检查该网站的域名或IP是否被误放入国内直连规则中。若命中规则为REJECT,说明广告拦截或屏蔽规则生效,该请求被主动丢弃。根据命中规则调整对应的配置后,重新加载配置并再次测试。结合日志定位规则顺序冲突当「连接」面板无法显示足够信息时,可结合Clash的日志功能进一步定位问题。在ClashVergeRev中将日志级别调至Debug或Info,访问目标网站时观察日志输出中每条规则的匹配过程。日志会记录规则匹配的完整流程,显示流量依次通过了哪些规则检查,最终命中了哪条规则。结合日志信息和「连接」面板的显示,可准确判断规则顺序是否存在冲突,以及哪些规则覆盖了预期的精确规则。常见问题FAQ

教程

Clash vpn中的IP-CIDR规则怎么用?适合什么场景?

在ClashVPN配置文件中,IP-CIDR规则格式为IP-CIDR,IP段/掩码,动作,用于匹配目标IP所属的特定地址段,最常用配置为IP-CIDR,192.168.0.0/16,DIRECT将内网流量直连放行。该规则与GEOIP规则的区别在于:IP-CIDR匹配用户指定的固定IP段,精确度高但需手动维护;GEOIP依赖内置Country.mmdb数据库匹配整个国家的IP段,宽泛但维护成本低,两者通常结合使用。no-resolve参数可避免不必要的DNS查询,适用于规则优先级低于其他域名规则的场景。SRC-IP-CIDR变体可匹配请求的源IP地址,用于为局域网中不同设备配置独立代理策略。当需要管理大量IP段时,使用rule-providers配合RULE-SET引用外部规则集(如anti-ip-attribution)可避免配置文件臃肿。在性能受限的设备上,建议使用Mihomo内核的mrs二进制格式规则集以减少资源占用。IP-CIDR规则的基本概念与格式解析基于IP地址段进行精确匹配IP-CIDR规则是ClashVPN规则系统中用于匹配特定IP地址范围的规则类型,其判断依据是目标服务器的IP地址是否属于指定的CIDR网段。该规则的格式为IP-CIDR,IP地址段/子网掩码,动作,例如IP-CIDR,192.168.0.0/16,DIRECT表示将所有目标IP在192.168.x.x范围内的请求直连放行。IP-CIDR规则依赖于Clash内置的IP归属地数据库,但与GEOIP规则不同,用户可以在规则中直接指定任意IP段,而非仅限于国家层面的判断,因此在处理内网地址、特定服务IP和私有网段时非常灵活有效。IPv4与IPv6的分别处理Clash为IPv6地址提供了单独的规则类型IP-CIDR6,专门用于匹配IPv6格式的IP地址范围。在配置规则时需要区分使用:处理IPv4地址段时使用IP-CIDR,处理IPv6地址段时使用IP-CIDR6。例如IP-CIDR6,2402:4e00:1200:ed00::/64,PROXY可将特定IPv6段的流量送入代理通道。如果配置中同时存在IPv4和IPv6的流量,需要分别为两种协议配置对应的IP-CIDR规则以确保完整覆盖。no-resolve参数的作用与使用场景IP-CIDR规则支持no-resolve参数,该参数告诉Clash内核在匹配此规则时不要主动触发DNS解析。当请求的目标是域名而非IP地址时,若不添加no-resolve,Clash可能需要先进行DNS解析才能获得目标IP以完成IP-CIDR规则的匹配,这会增加额外的延迟和DNS查询开销。no-resolve的适用场景是:当用户希望该IP段规则仅匹配那些请求中已经包含IP地址的流量(如直接访问IP而非域名的请求),或该规则优先级低于其他域名类规则时,添加no-resolve可以避免不必要的DNS查询,提升匹配效率。IP-CIDR与GEOIP规则的区别与选择判断依据的不同:固定IP段vs动态国家代码IP-CIDR和GEOIP规则虽然都是基于IP地址进行分流,但两者的判断逻辑和应用范围存在本质区别。IP-CIDR规则匹配的是用户指定的特定IP地址段,例如IP-CIDR,119.29.29.29/32,DIRECT仅匹配单个IP地址,范围精确但固定。GEOIP规则则依赖内置的Country.mmdb数据库,匹配的是某个国家的全部IP地址段,范围宽泛且会随数据库更新而变化。IP-CIDR更适合处理已知的、固定的IP段(如内网地址、特定服务器IP),而GEOIP更适合处理以国家为单位的大范围分流(如GEOIP,CN,DIRECT)。精确度与维护成本IP-CIDR规则的精确度远高于GEOIP规则,但维护成本也相应更高。当用户需要精确控制某个具体IP地址或小型IP段的流量走向时,IP-CIDR可以达到单IP级别的精度,而GEOIP只能进行国家级别的粗粒度分类。然而IP-CIDR规则需要用户手动维护IP地址列表,当目标IP发生变化时需要手动更新规则。相比之下,GEOIP规则通过更新数据库即可覆盖国家层面的变化,维护成本较低。在实际配置中,两者通常结合使用:用GEOIP处理大部分国家的通用分流,用IP-CIDR对特定IP进行精细调整。规则优先级与匹配顺序的安排在规则列表中,IP-CIDR规则与GEOIP规则的顺序安排直接影响分流结果。由于IP-CIDR规则的匹配范围更精确,通常建议将IP-CIDR规则放在GEOIP规则之前,让精确匹配优先于宽泛匹配。例如,当用户希望某个特定IP走代理而该IP所在国家整体走直连时,应先配置IP-CIDR,特定IP/32,PROXY,再配置GEOIP,CN,DIRECT。若顺序相反,GEOIP规则会在IP-CIDR规则之前匹配成功,导致该特定IP被直连而非代理。在排查分流问题时,客户端的「连接」面板可帮助查看每条流量具体命中了哪条规则。适合使用IP-CIDR的典型场景本地内网IP段直连配置IP-CIDR规则最基础的应用场景是将本地局域网IP地址段设置为直连,避免内网流量被错误地送入代理通道。标准的配置是在规则列表的最前面添加IP-CIDR,10.0.0.0/8,DIRECT、IP-CIDR,172.16.0.0/12,DIRECT和IP-CIDR,192.168.0.0/16,DIRECT三条规则,覆盖所有常见的私有IP地址段。配置后,访问本地路由器(192.168.1.1)、NAS设备或局域网内其他电脑的流量将直接放行,不会经过代理节点。这些私有IP段在GEOIP数据库中通常被归类为private分类,但在分流配置中直接使用IP-CIDR规则更为明确和可靠。屏蔽特定服务器的访问IP-CIDR规则可以用于屏蔽特定IP地址或IP段的访问,实现类似防火墙的拦截功能。当用户发现某些IP地址存在安全风险、频繁发送恶意请求或属于已知的广告追踪服务器时,可在规则中添加IP-CIDR,问题IP/32,REJECT或IP-CIDR,可疑IP段/24,REJECT,让Clash直接在代理层丢弃这些请求,而不消耗节点带宽。在社区维护的反IP归属地规则集中,大量使用IP-CIDR规则配合REJECT动作来拦截用于检测IP归属地的特定服务器IP,避免真实IP暴露给特定网站。这种用法需要用户确认目标IP确实应被屏蔽,避免误拦正常服务。为特定设备配置独立的代理策略通过SRC-IP-CIDR规则,用户可以为局域网中不同IP地址的设备配置不同的代理策略,实现多设备流量的差异化处理。该规则的格式为SRC-IP-CIDR,设备IP/32,目标策略组,用于匹配发起请求的源IP地址而非目标IP地址。例如在家庭网络中,可为儿童设备配置SRC-IP-CIDR,192.168.1.100/32,限制节点组,为工作设备配置SRC-IP-CIDR,192.168.1.101/32,工作节点组。这种用法适用于需要按终端用户分流管理路由器的场景,相比在每台设备上单独配置代理更加集中和高效。但在单机Clash配置中较少使用,更常见于网关或旁路由部署。在配置文件中编写IP-CIDR规则标准格式与动作去向的指定在config.yaml的rules字段中添加IP-CIDR规则时,需按照IP-CIDR,IP段/掩码,动作的标准格式编写。动作可以是策略组名称(如🚀节点选择)、DIRECT(直连)或REJECT(拒绝)。例如IP-CIDR,192.168.0.0/16,DIRECT将内网流量直连,IP-CIDR,203.107.1.0/24,PROXY将特定IP段送入代理通道。若规则中包含no-resolve参数,应写在动作之后,如IP-CIDR,47.101.175.206/32,REJECT,no-resolve。IP-CIDR规则同样遵循“从上到下、先命中先生效”的匹配顺序,因此需要合理安排规则位置,将精确规则放在宽泛规则之前。使用rule-providers管理大量IP段当需要管理的IP段数量较多时,直接在rules字段中逐条添加会使配置文件臃肿且难以维护,此时可使用rule-providers机制将IP段列表放在外部文件中统一管理。在rule-providers中声明一个类型为ipcidr的数据源(本地文件或远程URL),然后在rules中使用RULE-SET引用该数据源。社区维护的IP段规则集(如anti-ip-attribution)提供了大量用于屏蔽IP归属地检测的IP-CIDR规则,用户可直接引用。使用rule-providers的优势在于规则集可独立更新,无需频繁修改主配置文件,且对性能受限的设备(如硬路由)更加友好。避免过多的IP-CIDR规则影响性能在性能受限的设备(如硬路由)上部署Clash时,过多的IP-CIDR规则可能增加内核匹配时的CPU开销。Clash在处理每个请求时需逐条匹配规则,IP-CIDR规则的匹配涉及IP地址计算,虽然效率较高但大量规则仍会积累性能损耗。建议将常用的内网直连规则(私有IP段)放在最前面,让大部分内网流量在匹配少量规则后即被放行。对于大量的IP段列表,建议使用Mihomo内核独有的mrs二进制格式规则集,可减少一半以上的规则文件大小和硬件资源占用。常见问题FAQ

教程

Clash vpn中的GEOIP规则是根据什么判断流量走向的?

在ClashVPN中,GEOIP规则依赖于内置的Country.mmdb离线IP地理位置数据库来判断目标IP所属国家或地区,规则格式为GEOIP,国家代码,动作,最常用的配置为GEOIP,CN,DIRECT(国内IP直连)。该数据库需要定期更新(在ClashVergeRev的「设置」中点击更新GeoIP数据库),否则可能因IP地址段重新分配而导致分流误判。GEOSITE与GEOIP常配合使用:GEOSITE,cn,DIRECT通过域名分类数据库匹配国内网站域名,比GEOIP的IP判断更精细快捷,两者结合形成“国内域名直连→国内IP直连→其余走代理”的标准分流逻辑。若特定境外网站被GEOIP误判为国内IP而直连导致无法访问,更新GEOIP数据库后在配置中为该域名添加DOMAIN-SUFFIX,域名,PROXY的精确规则覆盖误判,或调整GEOIP规则在列表中的顺序位置,将域名类规则放在GEOIP规则之前优先匹配即可恢复访问。GEOIP规则的核心判断依据依赖内置的IP归属地数据库文件GEOIP规则本身不进行实时网络查询,其判断依据完全依赖于Clash客户端内置的一个离线数据库文件,名为Country.mmdb或geoip.dat。这个数据库本质上是一张庞大的“IP地址段与所属国家/地区”的对照表,包含了全球数十亿个IP地址段的归属地信息。当Clash处理一个网络请求时,会提取目标服务器的IP地址,在这个数据库中进行快速索引查找,得出该IP地址归属于哪个国家或地区,以标准的两位国家代码形式返回(如CN代表中国、US代表美国、JP代表日本)。GEOIP规则就是根据这个查找到的国家代码来决定流量走向的。GEOIP规则的标准格式与执行逻辑GEOIP,CN,DIRECT是分流配置中最基础也最常用的GEOIP规则,其执行逻辑是“如果目标IP地址归属于中国,则直连放行”。该规则首先从请求中获取目标服务器的IP地址,在Country.mmdb数据库中查找该IP对应的国家代码,将查找到的国家代码与规则中指定的代码(CN)进行比较。若两者匹配,则执行规则指定的动作(DIRECT、PROXY或REJECT),若不匹配则继续匹配后续规则。这种基于IP归属地的分流方式适用于处理那些域名无法直接判断归属地的连接请求,也是实现“国内IP直连”目标的核心手段。GEOIP规则与IP地址分配的动态变化全球IP地址段的分配并非一成不变,区域互联网注册机构会定期将新的IP地址段分配给不同国家和地区的运营商和机构。当某个原本属于中国的IP地址段被重新分配给海外服务商时,若Country.mmdb数据库未及时更新,Clash就会错误地将其判断为中国IP,导致该流量走DIRECT直连而非代理通道。反之,若某个海外IP段被分配给中国境内的公司,Clash则可能错误地将其判断为境外IP而走代理。因此定期更新GEOIP数据库是维持分流准确性的必要维护操作。GEOIP数据库的更新与维护客户端内置的数据库更新功能ClashVergeRev等图形界面客户端提供了内置的GEOIP数据库更新功能,用户只需点击即可完成数据库的下载和替换。在ClashVergeRev的「设置」页面中找到“更新GeoIP数据库”或“更新GeoData”按钮,点击后客户端会自动从官方源或配置的镜像地址下载最新的数据库文件并替换本地旧文件。更新完成后,需在「配置」页面重新加载当前配置使新的数据库生效,此后GEOIP规则的判断将基于最新的IP归属地数据进行。建议每1至2个月执行一次数据库更新,或在发现特定网站分流异常时立即更新。手动下载并替换Country.mmdb文件在网络环境无法访问GitHub或客户端内置更新功能失败的情况下,用户可手动下载GEOIP数据库文件并替换到Clash配置目录中。访问V2Ray官方或社区维护的GEOIP数据库发布页面(如Loyalsoldier/geoip),下载适用于Clash格式的Country.mmdb或geoip.dat文件。将下载的文件复制到Clash的配置目录(Windows下通常为%USERPROFILE%\.config\clash\,macOS/Linux为~/.config/clash/),替换原有的同名文件。替换完成后重新加载Clash配置,使新的数据库生效。社区维护版数据库的优势与选择除了官方提供的GEOIP数据库外,社区维护的优化版本(如Loyalsoldier/geoip)在IP归属地准确性上进行了大量人工修正和补充。官方数据库在处理中国运营商和境内公司海外业务IP时可能存在分类错误,而社区版数据库综合了多个权威数据源,对国内IP段的识别更加细致和准确。社区版还对某些特殊IP段(如CDN节点IP)进行了额外分类,避免因归属地判断错误导致的分流异常。高级用户可考虑使用社区维护版数据库替换官方版本,提升GEOIP规则的匹配准确性。GEOIP与GEOSITE的配合使用GEOSITE基于域名分类的匹配机制GEOSITE是Mihomo内核提供的另一个规则类型,与GEOIP基于IP地址判断归属地不同,GEOSITE基于预编译的域名分类数据库geosite.dat进行匹配。该数据库包含了大量域名的分类标签,例如cn分类覆盖了国内常用网站(如百度、淘宝、微信),google分类覆盖了Google旗下的所有服务域名,ads分类则包含常见的广告和追踪域名。GEOSITE,cn,DIRECT规则的含义是“如果请求的域名属于国内常用网站分类,则直连放行”,这种基于域名的判断比GEOIP基于IP的判断更加精细和快速。两者配合实现国内直连国外代理的标准分流在实际分流配置中,GEOSITE与GEOIP搭配使用是构建“国内直连、国外代理”标准分流逻辑的最佳实践。规则顺序通常为:先配置GEOSITE,cn,DIRECT让所有已被分类为国内常用网站的域名流量直连,再配置GEOIP,CN,DIRECT让剩余未匹配的国内IP流量直连,最后配置MATCH,PROXY让所有未匹配的流量走代理。GEOSITE的域名匹配可以在DNS解析之前完成,避免了不必要的DNS查询;GEOIP的IP匹配作为兜底,确保那些域名不在GEOSITE数据库中但IP归属地为国内的请求也能被直连放行。将GEOSITEads用于广告拦截GEOSITE数据库中的ads分类是广告拦截的得力工具,通过一条规则即可阻挡大量已知的广告和追踪域名。在规则列表的靠前位置添加GEOSITE,ads,REJECT,让所有属于广告分类的域名请求被直接拒绝,既不消耗带宽也不占用代理连接数。社区维护的GEOSITE数据库定期更新,持续收录新增的广告域名,用户只需定期更新数据库即可维持广告拦截的有效性。相比浏览器插件形式的广告拦截,GEOSITE规则在代理层进行拦截,覆盖范围更广,不受浏览器限制。规则系统与策略组的协同工作流量从规则到策略组的完整路径当Clash处理一个网络请求时,流量依次经过规则匹配和策略组选择两个阶段,最终确定出口节点。请求首先进入rules字段,按照顺序逐条匹配,当命中某条规则时获取其指定的动作去向(如策略组名称、DIRECT或REJECT)。若去向指向一个策略组(如GEOIP,CN,🚀节点选择),流量随后进入该策略组,由策略组根据其类型(select、url-test、fallback等)从组内的节点列表中选择一个具体的出口节点,完成最终的代理转发。这一“规则定去向、策略组选节点”的双层设计,实现了分流逻辑与节点选择的解耦。为特定GEOIP规则配置专属策略组用户可以为不同国家的GEOIP规则配置专属的策略组,实现“不同国家的流量走不同的节点组”。例如创建“🇺🇸美国节点”、“🇯🇵日本节点”等策略组,在规则中配置GEOIP,US,🇺🇸美国节点和GEOIP,JP,🇯🇵日本节点,让美国IP的流量固定走美国节点组,日本IP的流量固定走日本节点组。这种配置方式适合需要访问特定地区内容且对节点所在地有明确要求的场景(如Netflix区域解锁、本地化服务访问)。但需注意这种配置会增加规则列表的复杂度,且需要确保对应策略组中有可用的节点。GEOIP规则在分流中的优先级考量在规则列表中,GEOIP规则的位置决定了其对流量控制的有效范围,放置不当可能导致其他精细规则失效。如果将GEOIP,CN,DIRECT放在规则列表的最前面,那么所有国内IP的流量(包括某些用户希望强制走代理的特定服务)都会被直连放行,后续的精细规则无法生效。建议将GEOIP规则放在特定的域名规则(如DOMAIN-SUFFIX)和GEOSITE规则之后,让域名级别的精细规则优先匹配,GEOIP作为兜底的IP级分流手段。规则列表的顺序安排体现了流量分流的精细化程度,日常使用中若发现某特定网站分流异常,在「连接」面板中查看其命中的规则即可定位顺序问题。规则配置的常见问题与优化GEOIP误判导致特定网站无法访问当特定境外网站无法访问而其他网站正常时,GEOIP数据库过旧可能是根本原因。若该网站的IP地址段在数据库中被错误地标记为CN(中国),GEOIP,CN,DIRECT规则会将其流量直连放行而非走代理通道,导致访问失败。解决方法是在ClashVergeRev中更新GEOIP数据库,更新后重新加载配置并再次访问该网站。若更新后问题依然存在,可在规则列表顶部为该网站添加DOMAIN-SUFFIX,问题域名.com,PROXY的精确代理规则,覆盖GEOIP的误判结果。数据库更新后的配置重载操作更新GEOIP数据库后,需要执行配置重载操作才能使新的数据库数据被Clash内核加载使用。在ClashVergeRev中,更新数据库后点击「配置」页面的当前配置名称旁的刷新或重新加载按钮,客户端会重新读取配置文件并加载新的数据库文件。若使用命令行版本,需重启Clash进程或向其发送SIGHUP信号触发配置重载。重载完成后,可通过GEOIP规则的匹配结果间接验证数据库是否已生效。规则集与GEOIP数据库的版本匹配当同时使用rule-providers外部规则集和GEOIP数据库时,需注意两者的版本匹配和更新一致性。规则集中引用的域名可能依赖于特定版本的GEOIP数据库才能正确匹配,若GEOIP数据库版本过旧,部分GEOIP规则可能无法正确识别规则集中涉及的IP段。建议将GEOIP数据库和规则集保持在同一维护周期内更新,避免因部分组件更新滞后导致的规则不一致。使用社区维护的规则集时,通常有推荐的GEOIP数据库版本配套使用,遵循社区建议可减少兼容性问题。常见问题FAQ

教程

Clash vpn的规则系统是怎么工作的?

ClashVPN的规则系统采用“从上到下、先命中先执行”的逐条匹配机制,规则顺序直接影响分流结果,越靠前的规则优先级越高,MATCH兜底规则必须放在最后一行。规则由匹配类型(如DOMAIN-SUFFIX、GEOIP、GEOSITE)、匹配值和动作去向(如策略组名、DIRECT、REJECT)三部分构成,去向决定了流量最终走代理、直连还是被拒绝。GEOIP,CN,DIRECT和GEOSITE,cn,DIRECT配合MATCH,PROXY三行规则即可实现“国内直连、国外代理”的标准分流方案。订阅更新会覆盖手动修改的规则,可通过parsers预处理或ClashVergeRev的Merge功能叠加自定义规则,确保个性化配置持久生效。RULE-SET配合rule-providers可引用外部规则集(如Loyalsoldier/clash-rules),实现广告拦截、特定服务分流等高级功能。排查规则问题时,在客户端的「连接」面板中查看具体流量命中的规则,可快速定位和修正配置错误。规则系统的核心机制与匹配逻辑按顺序匹配,先命中先生效ClashVPN的规则系统本质上是一个“从上到下、先匹配先执行”的决策链表。在config.yaml的rules字段中,规则按照数组顺序逐条比对,内核从第一条开始检查每条流量是否符合匹配条件,一旦命中就立即执行该规则指定的动作(走代理、直连或拒绝),后面的规则不再参与判断。这意味着排在越前面的规则优先级越高,而MATCH作为兜底规则必须放在最后一行,否则它后面的规则永远没有机会执行。规则中的“去向”决定流量最终走向每条规则由三个要素组成:匹配类型、匹配值和动作去向。去向通常指向一个策略组(如🚀节点选择),也可以是DIRECT(直连)或REJECT(拒绝)。当流量命中某条规则时,Clash会将该流量交给对应的策略组处理,由策略组最终决定使用哪个具体节点或直接放行。规则的这种设计让用户能够精细化控制每一种流量的路由逻辑,实现“国内直连、国外代理、广告拦截”的分流目标。规则顺序错误导致分流失效的典型现象规则顺序错误是分流配置中最常见的问题,会导致预期效果完全失效。例如将GEOIP,CN,DIRECT放在规则列表的最前面,那么所有国内IP的流量(包括用户希望强制走代理的境外服务)都会被直连放行,后续的精细规则永远无法生效。反之,如果将MATCH,PROXY(兜底走代理)放在了规则列表中间,它后面的所有规则都会被跳过,造成“某些域名无法直连”或“广告规则失效”等问题。日常使用中若发现特定网站分流异常,打开客户端的「连接」面板查看该流量命中了哪条规则,是排查规则顺序问题的直接手段。常见规则类型与匹配方式域名类规则:精确到最细粒度的分流域名类规则通过匹配请求的目标域名来决定流量的去向,是日常使用中最频繁接触的规则类型。DOMAIN要求完全匹配完整域名(如DOMAIN,www.google.com,PROXY),DOMAIN-SUFFIX匹配域名后缀及所有子域名(如DOMAIN-SUFFIX,google.com,PROXY可匹配www.google.com和drive.google.com),DOMAIN-KEYWORD则匹配包含特定关键词的任意域名。这类规则的优势在于无需DNS解析即可直接匹配,执行效率高,适合为特定服务(如流媒体、AI平台)配置独立的代理策略。IP类规则:GEOIP与IP-CIDR的用途区别IP类规则根据目标IP地址或IP归属地来分流,适合处理无需域名解析的连接和粗粒度的地区分流。IP-CIDR匹配指定的IP段(如IP-CIDR,192.168.0.0/16,DIRECT用于内网地址直连),GEOIP则基于IP归属地数据库进行匹配,GEOIP,CN,DIRECT是最常用的国内IP直连规则。与域名类规则不同,IP类规则可能需要触发DNS解析才能获取目标IP,在使用no-resolve参数时可以跳过解析环节,在规则列表中将IP类规则放在域名类规则之后,可以避免不必要的DNS查询。GEOSITE与RULE-SET的高级分流能力GEOSITE是Mihomo内核提供的高级规则类型,基于预编译的域名分类数据库进行匹配,比GEOIP更加精细和高效。例如GEOSITE,google,PROXY可以匹配Google旗下的所有服务域名,GEOSITE,cn,DIRECT覆盖大量国内网站域名集合,GEOSITE,ads,REJECT则直接拦截常见的广告域名。RULE-SET则允许引用外部的规则集文件(通过rule-providers声明),将数百上千条规则统一管理,避免配置文件过于臃肿。社区维护的规则集(如Loyalsoldier/clash-rules)提供了reject、proxy、direct等预分类列表,是标准分流方案的常用选择。规则与策略组的协作关系proxies提供节点,proxy-groups组织节点在Clash的配置体系中,三层结构协同工作:proxies定义所有可用的代理节点,proxy-groups将节点组织成不同用途的策略组,rules决定每条流量去往哪个策略组。proxies是原料库(如“香港节点01”、“美国节点02”),proxy-groups是分类货架(如“🚀节点选择”手动组、“♻️自动选择”url-test组),rules则是导购员将不同类型的流量引导到对应的货架上。例如用户可以为Netflix流量单独创建一个“🎬流媒体”策略组,并在规则中配置GEOSITE,netflix,🎬流媒体,让流媒体请求固定使用该组中的节点。select手动选择与url-test自动切换的搭配策略组的设计决定了节点选择的灵活度,select和url-test是最常用的两种策略组类型。select类型需要用户在客户端界面手动切换节点,适合对节点选择有明确偏好的场景(如“我需要固定使用香港节点访问某服务”)。url-test类型则定期对组内所有节点进行延迟测试并自动切换到响应最快的节点,适合追求“无人值守最优选线”的场景。两层嵌套设计(外层select选区域,内层url-test自动优选)是高级用户常用的配置模式,兼顾了区域控制权和自动化优势。DIRECT直连与REJECT拒绝的动作含义规则的动作去向除了指向策略组外,还有两个特殊值:DIRECT和REJECT。DIRECT表示让流量绕过代理直接访问目标服务器,适用于国内网站、内网地址和本地服务,GEOIP,CN,DIRECT是标准分流方案中的必选项。REJECT则直接丢弃该请求,适用于拦截广告域名、恶意网站或追踪器,GEOSITE,ads,REJECT能够在不安装额外插件的情况下阻挡大量广告请求。这两个特殊动作让Clash的规则系统具备了流量过滤和精细化控制的能力,而不仅仅是“走代理或直连”的二元选择。标准分流模板与实战配置国内直连、国外代理的标准三行模板对于大多数普通用户,一套简洁的三行规则即可满足日常使用需求:GEOSITE,cn,DIRECT(国内域名直连),GEOIP,CN,DIRECT(国内IP直连),MATCH,PROXY(其余全部走代理)。这套模板的优先级逻辑是:先判断域名是否为国内常用网站,再判断IP归属地是否为国内,最后将所有未匹配的流量(境外网站)送入代理通道。配合GEOIP,private,DIRECT(内网IP直连)可以避免本地路由器、NAS的访问被错误路由。该方案简洁高效,适合新手直接使用,不会出现国内网站误走代理导致加载缓慢的问题。广告拦截规则的插入位置在标准分流模板中插入广告拦截规则时,位置选择至关重要。RULE-SET,reject,REJECT或GEOSITE,ads,REJECT必须放在代理类规则(如GEOSITE,google,PROXY)之前,否则广告域名会先被代理规则匹配并发送到节点,无法实现拦截效果。社区维护的reject规则集覆盖了大量已知的广告、追踪和恶意域名,配合REJECT动作在规则层直接丢弃请求,既不消耗带宽也不占用节点连接数。对于性能受限的设备(如硬路由),使用Mihomo独有的mrs二进制格式规则集能够减少启动时的资源占用和规则文件大小。为特定服务配置专属节点组对于需要稳定访问特定服务的场景,可为该服务创建独立的策略组并在规则中精准指向。例如创建name:"🤖AI服务"的select组,填入对ChatGPT等AI平台兼容性最好的节点,然后在规则中配置GEOSITE,openai,🤖AI服务,让所有OpenAI相关域名的流量固定走该组。同样的思路适用于Netflix、Disney+等流媒体平台,以及Telegram、WhatsApp等即时通信服务。这种配置方式确保关键服务不受“自动选择”组中偶尔选到的不兼容节点影响,在订阅更新后依然保持稳定。订阅更新与自定义规则的持久化订阅更新会覆盖手动修改的规则通过订阅链接获取的配置是“托管配置”,每次执行订阅更新时,远端服务器返回的完整配置文件会直接覆盖本地的rules字段,所有手动添加的规则都会丢失。这意味着直接在客户端的配置编辑器中修改订阅配置是不持久的,下次更新后改动即被冲掉。若服务商预设的规则存在误判(如将某境外域名误设为DIRECT),每次更新后都需要重新修正,操作繁琐且容易遗漏。使用parsers或Merge功能叠加自定义规则为了解决订阅更新覆盖手动配置的问题,Clash提供了parsers预处理机制和客户端的Merge功能,让自定义规则能够在每次订阅更新后自动追加到配置中。parsers通过在配置文件中声明prepend-rules参数,将自定义规则插入到订阅规则列表的最前面,确保它们优先匹配。ClashVergeRev的“全局扩展配置”或“Merge”功能同样支持在订阅配置上叠加自定义规则,用户只需在界面上填写要追加的规则,客户端会自动合并。这种方式既保留了订阅的自动更新能力,又确保了个性化规则的持久生效。通过rule-providers实现规则集的自动更新rule-providers机制允许将规则集放在配置文件外部(本地文件或远程URL),客户端定期自动拉取更新,是管理大规模规则集合的最佳实践。声明type:http、behavior:domain和远程URL后,客户端会按照interval设定的间隔(如86400秒=24小时)从GitHub等源拉取最新规则文件。社区维护的规则集(如Loyalsoldier/clash-rules和MetaCubeX/meta-rules-dat)定期更新,用户只需在rules中引用RULE-SET即可享受持续维护的分流规则,无需手动维护成百上千条域名列表。这种方法既保持了配置文件的简洁,又确保规则库与互联网变化同步。常见问题FAQ