翻墙安全手册

首页 › Clash 规则与 provider

Clash 的规则与 provider:同一条订阅为什么换客户端就变样

这一页不教你点哪个按钮——那种教程满地都是。它讲两件教程通常跳过、但恰好是故障来源的机制:订阅内容的格式由谁决定,以及规则为什么写了却不生效。

页面更新:2026-09-09

先说清 provider 是什么,它和订阅链接不是同一件事

很多人把「订阅链接」和配置里的 provider 当成一个东西,这是后面一连串困惑的起点。

订阅链接是一个地址,provider 是配置里描述「去这个地址取节点」的那一段。配置说明去哪取、多久取一次、取回来之后归到哪个策略组里;链接只负责返回内容。所以同一条链接,两份配置可以取出完全不同的可用节点集——差别在配置那一侧,不在链接。

这也解释了一个常见现象:换个客户端,节点少了一半。不是订阅缩水了,是新客户端里那段 provider 的写法(或它内核支持的格式)跟原来不同。

订阅内容有两种格式,客户端支持程度并不一致

服务端返回的内容通常是两种形态之一:一种是 Base64 编码的节点链接清单,一种是 YAML 格式的代理配置。

关键在于:这两种格式并非所有客户端都吃。有的只认其中一种,有的两种都认但对某些字段的解析不一样。于是同一条链接在 A 客户端里节点齐全,在 B 客户端里少几条或者干脆导入失败——而两边的报错都不会告诉你是格式问题。

判断方法很朴素:先确认这条链接返回的是哪一种。用浏览器打开,看到一整块无空格的乱码,多半是 Base64;看到成行的、带缩进的文本,是 YAML。⚠️ 如果看到的是一个普通网页或者 404,那通常不是链接坏了,而是这个源按 User-Agent 分流——换用客户端去拉一次再判断。知道是哪一种,才知道要找支持它的客户端,而不是反复重导。

规则写了却不生效,八成是顺序问题

这一条是本页最有用的一句:规则是自上而下匹配的,第一条命中就停止,后面的不再看。

所以一条写得过于宽泛的规则放在前面,会把后面所有更精确的规则全部吃掉。你新加的那条规则不是没生效,是从来没被读到。这一点和大多数人对「配置」的直觉相反——直觉会以为更精确的规则优先,实际是更靠前的规则优先。

排查方式:把你新加的那条移到最上面试一次。如果这样就生效了,问题确定是顺序,而不是规则写错。这个动作只改一处,结论也就只有一个解释。

「已连接但某个站点不通」通常不是线路问题

当整体能上网、只有某几个站点不通时,先怀疑规则而不是线路。可能性按常见程度排:

三种都不是换服务器能解决的。先看这个站点最终走了哪条策略——多数客户端的连接日志会显示每条连接命中了哪条规则,那一行就是答案,比任何猜测都直接。

这套东西适合谁,以及什么时候不划算

规则和 provider 的价值在于精细:你能决定每一类流量走哪条路,也能自己维护节点来源。代价是这两层的任何变动都由你来跟——服务端换了格式、客户端换了内核、某个域名集合更新了内容,都不会有人通知你。

如果你享受这种控制,这套东西很好用。如果你发现自己每周都在修配置,而原本只是想打开一个网页,那它对你就不划算了——把这三件事收在同一个责任方里的一体化客户端更省事,代价是线路池由对方给定。

两种都成立,只是别混着来:既不想理解规则,又不肯放弃对规则的控制,那是最累的一种状态。

如果末章那段说的是你

这一页讲的是规则与 provider 这两层的机制,末章也说清了它适合谁。如果你的结论是「我不想每周修配置」,那就换一个方向:本手册通篇只点一个名字——「远航极速」。它和这份手册出自同一批人,这一点写在明处,你自己判断要不要因此打折。

这一页没有推荐任何第三方客户端,也没有给它们打分——上面讲的是机制,机制对所有客户端都成立。

下载远航极速(不用维护订阅与规则,永久免费套餐起步)

据 mihomo(Clash Meta)官方 Wiki 的规则文档说明,规则按配置中出现的顺序自上而下匹配,一旦某条命中即采用其策略、不再继续往下比较。这正是「新加的规则看起来没生效」最常见的成因:它并非写错,而是被前面一条更宽泛的规则先命中了。(来源:mihomo(Clash Meta)官方 Wiki · 配置 · Rules(规则))

常见问题

同一条订阅链接,换个客户端节点就少了,是订阅的问题吗?

通常不是。订阅链接只负责返回内容,取哪些、怎么解析由配置里的 provider 那一段和客户端内核决定。两个客户端支持的格式或字段不同,取出的可用节点集就会不一样。

订阅内容有哪几种格式,怎么分辨?

常见两种:Base64 编码的节点链接清单,和 YAML 格式的代理配置。用浏览器打开链接,看到一整块无空格乱码多半是前者;看到成行、带缩进的文本是后者。知道是哪种,才知道该找支持它的客户端。

我加的规则为什么不生效?

八成是顺序。规则自上而下匹配,第一条命中就停,后面不再看,所以一条过于宽泛的规则放在前面会把后面全部吃掉。把新规则移到最上面试一次,如果生效了,问题就确定是顺序而不是写法。

规则是越精确越优先吗?

不是。是越靠前越优先。这一点和大多数人的直觉相反,也是最常见的配置困惑来源。

整体能上网,只有几个站点打不开,要换服务器吗?

先别换。这种形状通常是规则问题:这些站点被判给了直连、或者命中了某个你没逐条看过的域名集合、或者它们所在的策略组当前选中的节点是坏的。看连接日志里那条连接命中了哪条规则,比换服务器直接得多。

为什么日志里显示走了代理,网页却还是打不开?

走了代理只说明流量被送进了通道,不代表通道另一端通。这时问题下移了一层,属于连接本身而不是规则——换一个节点试,若全部节点都这样,才轮到怀疑服务端。

一定要用这类客户端吗?

不一定。它的价值是精细控制,代价是 provider 格式、客户端内核、域名集合内容这几层的变动都由你自己跟,没人通知你。如果你每周都在修配置而原本只想打开网页,一体化客户端把这些收在同一个责任方里,更省事。

继续阅读:V2Ray / Xray 配置 · 机场与订阅链接 · 连接后验证