在 Shadowrocket(小火箭)中实现按延迟自动选路,通常是通过配置 URL Test(延迟测试)策略组来实现,系统会自动定时测试节点延迟,并切换到延迟最低的节点。
通过配置文件配置(推荐)
在配置文件的 [Proxy Group] 部分添加:
[Proxy Group] 自动选择 = url-test, 节点1, 节点2, 节点3, 节点4, http://www.gstatic.com/generate_204, interval=300, tolerance=50
参数说明:
url-test:表示这是一个延迟测试策略组节点1, 节点2...:要参与测试的节点名称(需与[Proxy]中定义的节点名一致)http://www.gstatic.com/generate_204:测速地址(可换成其他如http://cp.cloudflare.com/generate_204)interval=300:每 300 秒(5分钟)测试一次tolerance=50:容差值,只有当新节点比当前节点延迟低 50ms 以上才切换(防止频繁跳动)
然后在 [Rule] 部分引用:
[Rule] FINAL,自动选择
通过 App 界面配置
-
创建策略组
- 进入「配置」→ 点击当前使用的配置文件 →「编辑纯文本」
- 或在「首页」→ 点击右上角「+」→ 选择「策略」
-
设置参数
- 类型:选择
URL 测试(URL Test) - 节点:选择要参与自动选择的节点
- 测试链接:建议使用
http://www.gstatic.com/generate_204或http://cp.cloudflare.com/generate_204 - 间隔:测试频率(建议 300-600 秒)
- 容差:建议 30-100ms
- 类型:选择
-
应用策略
- 在「全局路由」中选择该策略组作为默认代理
- 或在分流规则中指定特定流量走该策略组
使用订阅自动配置
部分高级订阅链接已包含自动选路策略,导入后会自动生成:
自动选择/Auto/URLTest等名称的策略组- 直接选择该策略组即可
注意事项
- 测速消耗流量:每次测速会产生少量流量(约 1-2KB),频繁测速(interval 设置过小)可能消耗较多流量
- 节点屏蔽:部分节点可能屏蔽测速地址,导致显示超时,建议更换测速 URL
- 容差设置:建议设置
tolerance=30或更高,避免网络波动导致频繁切换节点 - 手动干预:即使开启自动选路,仍可在主界面手动选择特定节点,手动选择会覆盖自动选择
进阶:故障转移(Fallback)
如果希望主节点失效时自动切换,可使用 fallback 策略:
故障转移 = fallback, 节点1, 节点2, 节点3, http://www.gstatic.com/generate_204, interval=300
这样当节点1不通时,会自动切换到节点2,以此类推。
配置完成后,Shadowrocket 会显示当前自动选择的节点名称,并定期自动切换到延迟最低的可用节点。