使用sub-store合并多个机场的订阅

本文最后更新于:10 小时前

1
2
3
<style>

</style>

引言

Google AI Studio是非常好的AI工具,不过它的网络检测也很严格;之前我用的机场一直没问题 ;

不过最近可能用户太多;导致被它识别到不支持的地区;经查询,它的地区检测域名是alkalimakersuite-pa.clients6.google.com;

在我单独给它设置规则后发现所有的节点都无法访问:

1
2
rules:
- DOMAIN-SUFFIX,alkalimakersuite-pa.clients6.google.com,AIStudio

但我用的别的按量计费的机场发现可以访问Google AI Studio;每次使用切来切去非常不便;而且我还用了TUN模式,很多应用都会断网

于是研究几天找到了适合的节点,规则,合并方法

解决方案

我之前用的是Clash for Windows,它不具备订阅合并功能;现在我测试使用Mihomo内核的Clash Verge有人说可行

官方的issue:[Feature] 能否合并订阅 #1092里面说了可以自己写配置实现;

但我实在不懂Clash的内核;网上也没有一个完整的教程指导如何合并订阅;

懒人配置是可行的

操作方法如下:

  • 订阅中新建一个Local类型的本地配置

Image

  • 右键新增的配置点击编辑文件
    把懒人配置的所有内容粘贴进去,需要填写自己的订阅地址
1
2
3
4
5
6
7
8
9
10
11
>##我的示例如下:
>proxy-providers:
p1:
url: "https://xxxx.com?clash=3&extend=1" ##主要填这个
type: http
interval: 86400
path: ./proxy_provider/p1.yml
health-check: {enable: true,url: "https://www.gstatic.com/generate_204",interval: 300}
override:
additional-prefix: "[p1]"
>### 其它配置

订阅会自动下载在Clash Verge目录,默认是%APPDATA%\io.github.clash-verge-rev.clash-verge-rev

我加了一个path配置,这样对应订阅yml文件就会在%APPDATA%\io.github.clash-verge-rev.clash-verge-rev\proxy_provider

保存成功后会拉取一次订阅;假如本地要更新;就要把本地的文件(p1.yml)删除重新拉取

多个订阅的合并里面用的节点名称正则匹配(filter);把同一个地区的放到一个proxy-groups中;

要修改订阅,简单的方法就是右键订阅配置,使用编辑规则 编辑节点 编辑代理组 调整

本文主要介绍使用Sub-Store合并订阅的方法

Sub-Store只支持节点合并,不过它的文件管理Mihomo配置支持使用js操作组合订阅;进而生成我需要的配置

基于Sub-Store还让我的手机也能访问组合订阅;可以说好处多多

之前我手机用的Clash for Android,用起来还不错;只是没有方便修改节点或者配置的地方;有了Sub-Store后也能在Sub-Store后台修改了;我现在用的安卓客户端是FIClash

处理脚本我使用的是convert.js

操作步骤

我的sub-store部署在内网,同时使用了Tinyauth保护,方便外网编辑,详见:自托管部署 Pocket ID 与 Tinyauth 完全指南

  • 添加Mihomo配置

在添加多个单条订阅并把他们放到一个组合订阅中后,假如你使用Clash导入订阅;那你本地订阅只有一个Global的所有订阅组

之前机场里面的规则,订阅组都不见了;此时需要使用Mihomo配置功能

  • 打开Sub-Store文件管理添加Mihomo配置添加一个 脚本操作本地内容

添加mihomo配置

添加本地内容

里面的内容可以用convert.js

这个覆写规则会添加地区的节点分组和一些外部的规则组;

由于我还有一些Clash for Windows使用的规则,节点以及节点组;因此我改写了它的脚本;

添加了实现Clash for Windows中的Parsersprepend-rules append-proxies append-proxy-groups功能

这里先给出我的本地内容

我实现了appendProxies appendProxyGroups prependRules方法对应 Parsers中的功能

这里面用的json对象;和Clash for Windows中的yml格式不同;

因此你可以用在线yamljson的工具转化:YAML to JSON Converte

js代码很容易理解,实际就是用js修改生成的对象;有了AI后想要什么逻辑都可以让它帮你生成

我添加了AIStudio代理组及对应规则;同时会把所有的vmesshysteria2类型的节点添加到这个组里面,方便访问

  • 保存文件

在确认好覆写js代码后,可以把代码保存到sub-store路径的data目录下;然后把脚本操作改为远程链接路径填/opt/app/data/xxx.js

remote file

补充说明

  • 防止环回设置

因为我用了tun模式 ,且代理了家里的网络;因此使用clash时不能代理局域网连接防止环回

需要在设置系统设置虚拟网卡模式设置排除自定义网段中添加本地网段的排除规则192.168.50.0/24(请根据你的局域网网段自行填写)

排除网段

  • 防止回环统一方法

    第一种方法要每个客户端分别配置,其实可以在proxy group上做文章
    在代理组中添加url-test类型且配置有DIRECT方式的代理组

    1
    2
    3
    4
    type: url-test
    proxies:
    - Home
    - DIRECT

    然后再在路由器上的指定端口关闭NAT环回

    openwrt的端口回环设置

    这样,在内网时就会默认选择DIRECT而在外网时就会变成家里的代理

    不用openwrt的,也可以用nginx的特性根据ip阻断不同的url-test请求以达到自动切换的目的

参考资料


使用sub-store合并多个机场的订阅
http://blog.wangshuai.app/2026-01-31-clash-verge合并订阅/
作者
王帅
发布于
2026年1月31日
许可协议