openclash自定义配置订阅规则
文章说明
1.本文采用的路由器openclash插件,通过本地服务器搭建了subconverter服务,来实现本地订阅转换,从而实现节点选择的自动化。
2.各大机场的配置文件的节点规则是通用的,如果没有特别要求,不建议调整。
3.我在家庭网络中,通过路由器代理,实现全屋wifi和有线都可以走代理,无需终端设备(pad\手机\电视等)再打开代理软件。
4.基于以上的背景,自定义订阅配置可以解决以下问题(包括但不限于):
①比如:PC电脑玩游戏时,需要开加速器,不想因此关闭代理,但是游戏的流量不希望走代理,希望走直连,通过PC加速器软件进行流量代理)
②比如:PC使用AI时(例如gemini禁止了香港地区api)需要手动切换流量,很麻烦
③比如:不同节点在不同时间的稳定性和连通速度不一样,甚至节点有时不可用,使用配置后,可以自动找到规则分组内连通且最快的节点,自动选择
……
参考配置youtube视频:【全网唯一】定制OpenClash在线分流规则模板、在线订阅转换模板 自定义规则、策略组、分流策略、配置文件、clash规则、搭建订阅转换后端 一并解决很多问题,BT下载、广告拦截、家庭设备指定节点
准备事项
1.openwrt系统(我这里采用的是红米AX6000刷了openwrt系统,具体系统版本各大论坛不一样,还有定制版,所以版本号不作举例)
2.openclash(在openwrt系统中下载好最新版本的openclash,官方github链接)
3.准备在本地服务器中(最好有NAS或者弃用笔记本玩docker的),通过docker形式安装好subconverter,作为本地节点转换的服务器。注意:subconverter安装好以后,这个服务最好让他一直运行,订阅每次更新都要转换(尤其是设置了自动定时更新订阅的)
4.拥有一个github账号,并且创建一个新的仓库
步骤1:本地服务器安装subconverter
docker run -d --restart=always -p 25500:25500 tindy2013/subconverter:latest
#这里为了方便直接用docker run形式创建subconverter容器
#端口号我这里设置为:25500(宿主机端口号):25500(容器端口号)
#重启规则设置为宿主机开机自启,总是重启
安装好以后,容器日志类似显示如下:
如果是windows版本,一定要确保你的subconverter是在打开运行中的,docker的话,容器一定要是启动且正常运行状态,因为订阅链接转换,就靠这个服务来实现的。
步骤2:从你的机场获取你的订阅链接
1.这里不做展开,给大家推荐我使用的Sakura机场,有需要私聊我。
2.clash客户端的订阅链接格式类似于:(里面包含了subscribe,这个订阅关键字,和token的)
https://XXXXXXX.com/api/v1/client/subscribe?token=XXXXXX
步骤3:复制我的github仓库内容(fork)
fork我的github仓库,自定义命名,比如我命名为:openclash,然后你就可以看到你也把我这个仓库内容全都复制下来了。
步骤4:规划好自己的订阅规则(域名组、节点组)
域名组:就是你希望按照什么使用场景来分配流量的走向,比如看流媒体的时候流量走代理、使用AI的时候流量走代理……
节点组:按照节点分成不同的地区节点,比如【香港】、【台日新韩】、【中东】……
(很多软件和系统对于节点服务有要求,比如gemini不支持香港节点,netflix账号对节点地区有限制)
这个步骤一定要先想好。想好了以后就可以开始在规则文件内编辑【域名组】和【节点组】了
步骤5:在github仓库中设置好自己的订阅模板
1.域名组修改和配置:
按照自己的代理使用场景来分组的【域名组】
在网页中自己的仓库打开clash_rules.ini
文件,修改里面的内容:
原理:根据名单文件,来实现名单内的域名和服务器,走这个域名组规则。
目录下已经分好了常见的一些使用软件的域名,文件名称后缀是.list
,如果需要更多具体细分的软件的域名(用来做域名组区分),可以参考这个仓库,去仓库里搜索,已经有大佬整理好了。把内容复制到自己的仓库下,然后,获取这个.list
文件的raw链接,放进域名组即可
2.节点组修改和配置
按照节点的地区性来分组【节点组】
以【香港-自动】一行举例:
custom_proxy_group=香港-自动'url-test'(广港|香港|澳门|HK|Hong Kong|🇭🇰|HongKong)'http://www.gstatic.com/generate_204'180,5,100
custom_proxy_group=香港-自动
这个部分,【香港-自动】,这个组,就是把所有香港节点都放进去。
(广港|香港|澳门|HK|Hong Kong|🇭🇰|HongKong)
,这个部分,节点中能体现香港节点的区域性关键字,用【|】隔开,例如:HK、hk、香港等
这里需要自己看下自己机场的节点名称来进行修改。照搬我的可能会遗漏一些节点。
这样设置好以后,就会有一个节点组,名称叫做【香港-自动】,这个节点组里,包含了所有我设置的(通过包含关键字)识别出的香港节点,并且,能够通过url-test测速,自动选择延迟最低、最快的节点,是动态的。如果这个分组中节点失效,会自动切换选择有效中最快的。
3.策略组配置和修改:
按照使用场景和地区要求结合,来设置自己的【策略组】
我这里的设置是:无论那种使用场景(AI、TikTok、Telegram……这些域名组)都是展示所有的地区当前最快的节点(你自己划分的节点组,一个地区就是一个节点组)
步骤6:在openclash后台创建订阅转换
1.添加订阅配置
openclash插件-配置订阅-添加
第一张
第三张
第二张
第四张
选择填写好之后保存
备注:不要搞错subconverter的所在的机器ip地址,如果部署在虚拟机上就是虚拟机的ip地址,这里用内网的192.168.X.X即可,因为你在路由器上的openclash插件,和服务是可以内网连接的。记得开头加上http://
,结尾加上/sub
2.启动openclash
启动openclash,并且打开Yacd面板
打开后,配置不同域名组选择的节点
3.在openclash插件的内核日志看状态
最后:大功告成
恭喜你已经成功的实现了:机场节点规则的自定义。
- 感谢你赐予我前进的力量