使用 Clash Verge、Clash Verge Rev、Mihomo Party、OpenClash 等客户端时,很多用户会遇到这些问题:

主节点失效以后为什么没有自动切换?

Clash怎么设置备用节点?

Fallback是什么意思?

URL-Test和Fallback有什么区别?

自动选择为什么总是切到其他节点?

节点Timeout以后怎么自动换下一个?

如果你的目标是:

优先使用香港01。

香港01失效以后切香港02。

香港02失效再切日本01。

节点恢复以后重新按优先级使用。

那么需要重点了解的是:

Fallback代理组。

最快的配置思路是:

建立一个 type: fallback 的代理组。

把节点按照希望使用的优先级从上到下排列。

配置健康检查url。

设置合理的interval。

然后让需要代理的规则指向这个Fallback组。

Fallback和URL-Test最大的区别是:

Fallback优先考虑节点顺序和可用性。

URL-Test主要根据测速结果选择延迟更低的节点。

所以想要“主节点失效以后自动切备用节点”,通常优先考虑Fallback,而不是单纯URL-Test。

下面详细说明。

👉获取稳定 Clash / Mihomo 订阅线路

一、Clash里的Fallback是什么意思?

Fallback可以理解成:

自动回退。

它是一种代理组类型。

配置中通常写成:

type: fallback

这个代理组会对成员节点进行健康检查。

当当前节点出现超时或不可用时,会按照配置中的代理顺序寻找第一个可用节点。

例如:

香港01

香港02

日本01

美国01

如果香港01正常:

优先使用香港01。

如果香港01不可用:

回退到香港02。

如果香港01和香港02都不可用:

继续使用日本01。

这就是Fallback最典型的用途。

二、Fallback适合什么场景?

特别适合:

有固定主节点。

希望备用节点自动接管。

不希望单纯按照最低延迟乱切节点。

办公软件需要稳定IP。

长期访问同一地区服务。

自己维护多个备用线路。

例如你希望:

平时始终使用美国01。

只有美国01失效才用美国02。

那Fallback就比URL-Test更合适。

三、最简单的Fallback配置是什么?

一个基础示例可以写成:

proxy-groups:

这里最重要的是:

type: fallback

以及:

proxies的顺序。

排在越前面的节点,优先级越高。

四、节点顺序重要吗?

非常重要。

Fallback和URL-Test最大的差别之一就在这里。

例如:

proxies:

  • 香港01
  • 香港02
  • 日本01

意味着优先顺序是:

香港01

→ 香港02

→ 日本01

并不是哪个延迟最低就一定用哪个。

如果香港01可用,即使:

香港01延迟120ms。

香港02延迟60ms。

Fallback仍然可能继续优先使用香港01。

因为:

它的核心逻辑是可用性和顺序。

五、URL-Test是什么意思?

URL-Test也是一种自动代理组。

例如:

type: url-test

它会测试多个节点访问指定URL的延迟。

然后倾向于选择:

延迟表现更好的节点。

所以URL-Test更适合:

自动选低延迟节点。

例如:

香港01 68ms

香港02 92ms

日本01 130ms

URL-Test通常更倾向于:

香港01。

六、Fallback和URL-Test有什么区别?

可以简单理解:

Fallback:

主节点优先。

主节点挂了再换备用节点。

URL-Test:

根据测速结果自动选择更优节点。

如果你的需求是:

节点A必须优先。

只有节点A失效才用节点B。

应该优先:

Fallback。

如果你的需求是:

哪个延迟低就自动用哪个。

应该优先:

URL-Test。

七、Fallback会一直选择延迟最低的节点吗?

不会。

这是很多用户最容易搞错的一点。

Fallback并不是:

最低延迟选择器。

它首先关注的是:

节点是否可用。

以及:

节点在代理组里的排列顺序。

所以不要因为备用节点测速更低,就认为Fallback一定会切过去。

八、主节点恢复以后会切回来吗?

通常Fallback会根据后续健康检查重新判断节点可用状态。

如果前面优先级更高的节点重新变为可用,代理组可以重新回到更靠前的可用节点。

具体切换时机和:

健康检查。

interval。

当前运行状态。

客户端实现。

有关。

所以不会每秒不停检测并立即切换。

九、interval是什么意思?

interval表示:

健康检查间隔。

单位通常是秒。

例如:

interval: 300

表示大约每300秒进行一次周期健康检查。

也就是:

5分钟。

如果设置:

interval: 60

就是:

约1分钟。

十、interval越小越好吗?

不是。

太小意味着:

频繁健康检查。

产生更多测试请求。

增加节点和客户端负担。

太大又会导致:

节点恢复以后不能很快被发现。

一般用户没有必要设置成:

1秒。

5秒。

10秒。

通常根据实际用途选择几十秒到几分钟级别更合理。

十一、Fallback是怎么判断节点可用的?

它会使用配置中的:

url

进行健康检查。

例如:

url: https://www.gstatic.com/generate_204

客户端会尝试通过节点访问这个测试地址。

根据结果判断节点是否:

alive。

如果测试失败或超时:

节点可能被判断为不可用。

十二、为什么Fallback需要url?

因为系统必须有一个标准来判断:

这个节点现在能不能正常访问网络。

如果没有测试目标,就无法有效判断:

主节点到底失效没有。

所以Fallback配置中通常会设置:

健康检查URL。

十三、测速URL选错会发生什么?

这是很常见的问题。

如果你配置的测试URL本身:

打不开。

响应异常。

被网络拦截。

服务器不稳定。

就可能导致:

正常节点也被判断成不可用。

最终表现为:

Fallback不停切换。

所有节点Test Failed。

自动回退异常。

所以测速URL应该使用:

稳定。

响应快。

适合连通性检测。

的地址。

十四、Fallback和之前的Test Failed有什么关系?

关系很大。

Fallback依赖健康检查判断节点可用性。

如果所有节点测试都:

Test Failed

Fallback自然无法正确判断哪个节点可以使用。

所以如果自动回退异常,同时看到:

Test Failed。

应该先解决:

健康检查问题。

而不是不停调整节点顺序。

十五、timeout是什么意思?

Mihomo代理组可以配置:

timeout

用于健康检查超时判断。

单位是:

毫秒。

如果节点没有在规定时间内完成健康检查:

可能被判断为测试失败。

如果timeout设置过低:

网络稍微波动就容易失败。

十六、timeout越大越好吗?

也不是。

如果设置得非常大:

真正失效的节点需要等待更久才能确认。

自动切换速度会变慢。

因此应该保持合理值。

不要为了避免Test Failed把timeout无限放大。

十七、max-failed-times是什么意思?

Mihomo代理组还支持:

max-failed-times。

它代表:

最大失败次数相关设置。

超过设定失败次数后,可以触发强制健康检查。

这属于更细的健康检查控制参数。

普通用户一般不需要频繁修改。

十八、lazy是什么意思?

lazy表示:

懒惰健康检查。

默认情况下,如果当前代理组没有被实际选择使用,可能不会持续进行健康测试。

这样可以减少:

不必要的测速请求。

资源消耗。

如果你发现:

某个没有使用的Fallback组很久不更新延迟。

不一定是故障。

可能和lazy有关。

十九、Fallback节点怎么排序?

应该按照你的实际优先级排序。

例如你需要:

香港主线路。

香港备用。

日本备用。

新加坡备用。

可以写:

香港01

香港02

日本01

新加坡01

不要单纯按照:

当前延迟。

排序。

因为Fallback本来就是为了:

稳定优先级。

二十、可以把不同地区节点放进Fallback吗?

可以。

例如:

香港01

日本01

新加坡01

美国01

技术上完全可以。

但是需要考虑:

出口IP国家会变化。

例如:

香港01失效以后切到日本01。

你的出口IP也会变成日本。

对于:

ChatGPT。

Google。

流媒体。

账号登录。

电商后台。

社交账号。

某些对IP地区敏感的服务。

可能产生不同影响。

二十一、想始终保持同一个国家怎么办?

建立地区专用Fallback组。

例如:

美国回退

只放:

美国01

美国02

美国03

美国04

这样即使自动切换:

出口国家仍然主要保持美国。

同理可以建立:

香港回退。

日本回退。

新加坡回退。

二十二、可以建立多个Fallback组吗?

可以。

例如:

香港自动回退

美国自动回退

日本自动回退

AI自动回退

流媒体自动回退

然后让不同规则指向不同策略组。

这比把所有节点全部塞进一个组更容易管理。

二十三、Fallback可以引用其他代理组吗?

代理组的proxies字段可以引用:

具体代理节点。

也可以引用其他代理组。

因此可以做更复杂的嵌套结构。

但是层级越复杂:

排障难度越高。

普通用户不建议一开始建立很多层代理组。

二十四、Fallback可以使用proxy-providers吗?

Mihomo代理组可以通过:

use

引入代理集合。

但需要注意:

通用代理组字段中的url健康检查,仅针对proxies字段时有对应行为说明。

通过provider引入节点时,还涉及:

proxy-provider自己的health-check。

所以使用订阅Provider时:

最好同时理解Provider健康检查。

二十五、Proxy Provider是什么?

Proxy Provider可以理解为:

单独管理的一组代理节点来源。

例如你的机场节点来自:

provider1。

配置可以让多个代理组重复使用这个Provider。

这样不用在每个代理组里重复写几十个节点。

二十六、Provider里的节点怎么做健康检查?

Proxy Provider本身可以配置:

health-check。

例如:

health-check:

enable: true
url: https://www.gstatic.com/generate_204
interval: 300

这样Provider会定期检测节点状态。

如果你使用复杂的:

Fallback + Proxy Provider

配置,这部分也需要检查。

二十七、为什么Fallback里面没有节点?

如果使用:

filter

筛选节点。

正则写错以后:

可能把所有节点过滤掉。

最终Fallback组变成:

空组。

这种问题在自动生成配置里很常见。

二十八、empty-fallback是什么?

Mihomo代理组提供:

empty-fallback

字段。

它的用途是:

当代理组为空时指定一个回退Proxy。

默认值通常为:

COMPATIBLE。

需要注意:

这里说的是“组为空”。

不是普通意义上的:

主节点Timeout以后切备用节点。

它和:

type: fallback

不是完全一回事。

二十九、empty-fallback能填写另一个策略组吗?

当前Mihomo官方文档说明:

empty-fallback只支持填写Proxy名称。

不能直接填写代理组名称。

所以不要把:

自动选择

香港回退

这种策略组名直接塞进去,认为一定可以工作。

三十、DNS里面也有fallback,是一回事吗?

不是。

这是非常容易混淆的地方。

Clash/Mihomo里至少可能看到两种:

fallback。

一种是:

代理组Fallback。

例如:

type: fallback。

用于节点自动回退。

另一种是:

DNS fallback。

用于备用DNS解析。

两者不是同一个功能。

三十一、DNS fallback能切换代理节点吗?

不能。

DNS fallback只是:

DNS解析相关配置。

它不会帮你:

香港01失效切香港02。

所以搜索:

Clash fallback

时,一定先判断自己问的是:

节点回退。

还是:

DNS备用解析。

三十二、Fallback和Load-Balance有什么区别?

Fallback主要是:

按顺序寻找可用节点。

Load-Balance主要用于:

在多个节点之间分配连接。

两者目的完全不同。

如果你只想:

主节点挂了再切备用。

不需要Load-Balance。

三十三、Fallback和Select有什么区别?

Select表示:

手动选择。

例如:

type: select。

你自己点击:

香港01。

客户端就使用:

香港01。

香港01挂了以后:

普通select并不等于自动帮你选择香港02。

Fallback则负责:

根据可用状态自动回退。

三十四、为什么Select节点挂了不会自动切?

因为:

select的设计目标就是:

用户手动指定。

它不会因为另一个节点延迟更低就随便切换。

所以想要自动切换:

应该建立Fallback或URL-Test等自动策略组。

三十五、Clash Verge界面里怎么设置Fallback?

如果订阅已经包含:

自动回退。

Fallback。

故障转移。

备用线路。

类似代理组:

可以直接在代理页面选择该策略组。

如果订阅本身没有:

Fallback组。

通常需要:

修改Mihomo配置。

使用Merge或覆写功能。

或者让订阅服务端生成对应策略组。

具体入口会根据Clash Verge版本有所不同。

三十六、为什么不建议直接修改机场原始配置?

因为:

订阅更新以后。

原始配置可能被重新下载。

你手工加入的:

Fallback。

节点顺序。

URL。

可能被覆盖。

所以如果客户端支持:

覆写。

Merge。

脚本。

订阅转换。

更适合通过这些方式维护长期自定义配置。

三十七、订阅更新后Fallback消失怎么办?

基本说明:

你修改的是订阅生成后的最终YAML。

更新订阅时服务器重新下发配置:

原来的手工修改被覆盖。

需要改成:

持久化覆写方式。

或者使用:

独立本地配置。

三十八、Fallback可以固定某个节点吗?

当前Mihomo的API中,Fallback和URL-Test都存在与固定选择有关的状态支持。

但在实际GUI中是否暴露对应功能:

取决于客户端前端实现。

如果你手动固定了某个自动策略组节点:

需要注意它可能影响原本的自动选择逻辑。

三十九、为什么Fallback一直停在备用节点不回来?

可能原因包括:

主节点健康检查仍然失败。

健康检查还没到下一周期。

测速URL访问异常。

主节点实际没有恢复。

当前节点被固定。

客户端状态没有刷新。

所以不要只看:

节点服务器似乎恢复了。

还应该看:

健康检查结果。

四十、为什么主节点能打开网页但Fallback认为不可用?

可能是:

主节点能打开你测试的网站。

但不能成功访问Fallback配置里的:

健康检查URL。

这和之前:

Test Failed但节点能上网

是同一类逻辑。

所以要检查:

健康检查地址。

四十一、Fallback切换会不会断开现有连接?

有可能。

当出口节点变化以后:

已有TCP连接。

WebSocket。

长连接。

下载任务。

登录会话。

可能需要重新建立。

所以Fallback并不意味着:

所有应用都能完全无感切换。

四十二、打游戏适合频繁Fallback吗?

不一定。

游戏连接通常对:

IP变化。

UDP连接。

会话状态。

较敏感。

节点切换以后可能出现:

掉线。

重新登录。

延迟变化。

Fallback主要解决:

可用性。

不代表无缝漫游。

四十三、ChatGPT适合Fallback吗?

可以使用。

但建议同一Fallback组尽量保持:

相近地区。

例如:

美国01。

美国02。

美国03。

避免:

美国失效以后突然切香港。

香港失效再切日本。

这样出口地区频繁变化。

四十四、流媒体适合Fallback吗?

可以。

但最好:

同地区回退。

例如Netflix美国线路:

美国Netflix01。

美国Netflix02。

美国Netflix03。

否则切到其他地区后:

片库。

地区识别。

解锁状态。

可能变化。

四十五、为什么Fallback会频繁跳节点?

常见原因:

健康检查URL不稳定。

节点线路抖动。

timeout太短。

interval太频繁。

本地网络丢包。

节点本身不稳定。

不要一看到频繁切换就立刻认为:

Fallback配置语法错了。

四十六、怎么判断是节点问题还是本地网络问题?

进行交叉测试。

例如:

家庭Wi-Fi频繁Fallback。

换手机热点以后稳定。

说明更应该检查:

家庭网络。

运营商。

Wi-Fi。

DNS。

如果两个网络下同一个节点都持续失败:

再重点检查节点本身。

四十七、Fallback可以解决节点Timeout吗?

Fallback不能修复:

发生Timeout的服务器。

但它可以在某个节点不可用以后:

自动选择下一个可用节点。

所以:

它解决的是“故障转移”。

不是“修复坏节点”。

四十八、所有节点都Timeout怎么办?

如果Fallback组里:

所有节点都不可用。

那也没有备用节点可以切换。

这时需要排查:

本地网络。

机场线路。

DNS。

协议兼容。

Mihomo内核。

服务器状态。

Fallback不是万能修复工具。

四十九、为什么Fallback所有节点都是Test Failed?

优先检查:

测试URL。

DNS。

网络连接。

Health Check。

timeout。

如果全部节点同时失败:

通常先排查共同因素。

不要先调整节点顺序。

五十、URL-Test和Fallback可以一起使用吗?

可以设计组合结构。

例如:

香港URL-Test。

日本URL-Test。

美国URL-Test。

再把这些策略组用于更高级的策略结构。

但是:

配置层级越多。

理解和排障难度越高。

普通用户只需要自动备用时:

一个简单Fallback组通常更容易维护。

五十一、我想“优先香港,香港都挂了再日本”怎么做?

推荐先分别建立地区组。

例如香港组只包含:

香港01。

香港02。

香港03。

然后再设置更高层策略。

但如果节点数量不多:

也可以直接按顺序写:

香港01。

香港02。

香港03。

日本01。

日本02。

Fallback会按照顺序判断可用节点。

五十二、我想“香港节点里自动选最快,香港全挂再日本”怎么办?

这种需求已经不是单一Fallback能最直观解决的。

可以组合:

URL-Test

和:

Fallback。

例如:

香港自动选择使用URL-Test。

日本自动选择使用URL-Test。

更高层再设计故障转移。

不过这种配置建议对YAML和代理组已经熟悉以后再做。

五十三、为什么自动切换以后IP没马上变化?

可能存在:

浏览器连接复用。

网站缓存。

已有TCP连接。

DNS缓存。

IP查询页面缓存。

所以切换节点以后:

重新打开新窗口。

刷新连接。

必要时重启目标应用。

再检查出口IP。

五十四、Fallback需要开启TUN吗?

不需要。

Fallback本身属于:

代理策略选择机制。

TUN属于:

流量接管机制。

即使不开TUN:

使用系统代理的应用一样可以使用Fallback代理组。

不要把:

代理组选择

和:

TUN

混为一谈。

五十五、Fallback需要开启系统代理吗?

取决于应用流量怎么进入Mihomo。

如果浏览器依赖:

系统代理。

那通常需要系统代理开启。

如果应用通过:

TUN

进入Mihomo。

则由TUN接管。

但Fallback本身并不要求:

必须系统代理。

五十六、Fallback配置错误会导致整个Profile加载失败吗?

会。

如果YAML结构错误。

缩进错误。

节点名称不存在。

代理组引用异常。

可能导致:

配置验证失败。

无法切换Profile。

所以修改之前最好:

备份原配置。

一次只改一部分。

五十七、节点名称需要完全一致吗?

需要。

例如配置里真实节点叫:

香港 01

你却在Fallback中写:

香港01

可能被视为:

不同名称。

最终出现引用失败。

所以proxies列表中的名称应与实际节点:

完全对应。

五十八、为什么出现Proxy Not Found?

通常说明:

代理组引用了不存在的代理。

例如:

Fallback里写了香港01。

但订阅更新以后节点改名成:

香港-01。

旧代理组仍然引用:

香港01。

就可能出现:

Proxy Not Found。

五十九、机场经常改节点名怎么办?

可以考虑:

Provider。

filter。

正则筛选。

等方式动态引入节点。

这样比写死:

几十个节点名称

更容易长期维护。

但正则配置错误也可能导致:

一个节点都筛不出来。

六十、filter是什么?

filter可以通过:

关键词。

正则表达式。

筛选满足条件的节点。

例如只筛选:

香港。

HK。

Hong Kong。

这样可以建立:

香港策略组。

节点名称变化不大的情况下很方便。

六十一、exclude-filter是什么?

exclude-filter作用相反:

排除符合条件的节点。

例如你想自动组里不要出现:

剩余流量。

套餐到期。

官网。

可以使用排除规则。

这对机场订阅自动分组非常有用。

六十二、exclude-type是什么?

exclude-type可以根据:

节点协议类型

排除某些代理。

它与:

按节点名称筛选

不是一回事。

普通用户没有明确需求时:

不需要随便配置。

六十三、Fallback最常见错误有哪些?

第一:

把Fallback当成最低延迟选择。

第二:

节点顺序写反。

第三:

健康检查URL不可用。

第四:

interval过短。

第五:

timeout过低。

第六:

引用不存在的节点。

第七:

订阅更新后自定义配置被覆盖。

第八:

把DNS fallback和代理组Fallback混淆。

第九:

所有节点都失败却期待Fallback还能自动修复。

第十:

同时运行多个代理客户端导致测试异常。

六十四、最推荐的简单配置思路

如果你只是普通Clash Verge用户:

不要一开始构建复杂多层策略。

可以先做:

一个Fallback代理组。

加入3到5个稳定节点。

按实际优先级排序。

配置稳定健康检查URL。

interval设置合理。

测试主节点失效时是否自动切换。

确认工作正常以后:

再考虑URL-Test。

地区筛选。

Proxy Provider。

复杂自动分组。

六十五、常见问题

Clash Verge回退节点怎么设置?

核心是建立type: fallback代理组,并按照优先顺序加入节点,再设置健康检查URL和interval。

Fallback会自动选择延迟最低节点吗?

不会。Fallback重点是节点可用性和排列顺序。

想自动选最低延迟应该用什么?

通常使用URL-Test。

Fallback和URL-Test哪个好?

没有绝对哪个好。需要主备故障切换用Fallback,需要自动低延迟选择用URL-Test。

主节点Timeout以后Fallback会切吗?

如果健康检查判断主节点不可用,会按照顺序寻找下一个可用节点。

为什么Fallback没有自动切换?

检查健康检查URL、节点状态、interval、timeout以及当前节点是否被固定。

为什么所有节点都Test Failed?

优先检查测速地址、本地网络、DNS和健康检查配置。

DNS fallback和节点Fallback一样吗?

不一样。DNS fallback用于DNS解析,type: fallback用于代理节点自动回退。

Fallback需要开启TUN吗?

不需要。Fallback与TUN属于不同功能。

订阅更新后Fallback配置没了怎么办?

说明手工修改可能被新订阅覆盖,应考虑客户端覆写、Merge或独立本地配置。

Fallback能修复坏节点吗?

不能。它只能在节点失效以后切换到其他可用节点。

六十六、总结

如果你的需求是:

主节点优先。

主节点失效自动切备用。

备用失效继续向后切换。

那么Clash/Mihomo里应该重点使用:

Fallback。

基础逻辑可以概括成:

type: fallback

→ 按优先级排列节点

→ 配置健康检查URL

→ 设置合理interval

→ 让规则使用这个策略组。

如果你的需求是:

哪个节点延迟最低就用哪个。

更适合:

URL-Test。

所以一定要先区分:

Fallback解决的是故障回退。

URL-Test解决的是自动测速选择。

另外需要特别注意:

代理组Fallback

和:

DNS fallback

不是同一个功能。

如果Fallback出现:

不自动切换。

频繁切换。

所有节点Test Failed。

一直停留在备用节点。

优先按照以下顺序排查:

检查节点实际能否使用

→ 检查健康检查URL

→ 查看Test Failed状态

→ 检查interval和timeout

→ 检查节点排序

→ 检查节点名称是否存在

→ 检查是否被手动固定

→ 检查订阅更新是否覆盖了配置。

对于大多数普通用户:

不要一开始追求复杂自动策略。

先把一个简单Fallback组配置正确,再逐步加入URL-Test、Provider和地区筛选,会更稳定,也更容易排查问题。

相关阅读