Clash可以说是当下最好用的代理软件了,功能丰富,界面清爽,简单易用。但同样的Clash也面临着订阅规则不完善的情况,比如本人经常使用的Notion笔记软件(notion.so),就没有加入本人订阅节点的规则中,以至于每次只能开启全局模式才能打开,其中的不便之处不言而喻。熟悉Clash的同学应该知道Clash提供了自定义新规则的功能界面,对于小白来说十分友好,但是这种方式有一个致命的缺陷,就是每一次更新订阅节点,自定义规则就会被覆盖,造成规则丢失。本文将介绍一种使用Clash的Parser功能,通过书写javascript代码,对订阅规则进行预处理的方式添加自定义规则,这种方式能够避免订阅更新造成的规则丢失。
一、方法详细介绍
- 打开Clash软件的Setting(设置),找到Profiles(配置文件下)的Parsers,
- 点击右侧的Edit,打开编辑界面。
- 并按照规则输入以下代码:
parsers: # array
- url: https://api.v1.mk/sub?xxxxxxxxxxx
yaml:
prepend-rules:
- DOMAIN-SUFFIX,garmin.com,🇭🇰 香港节点
其中需要改动的有 url 和 prepend-rules。
- url:改成本人的订阅地址,如果不知道,可以直接在
Profiles
下点击当前订阅的Change imformation
,复制其中的URL即可。 - prepen-rules 此处添加你的自定义规则,每一条占一行,按照
规则类型
,值
,代理策略
排列,使用逗号分隔。注意的是,每一行都需要以一个短横线-
加一个空格
- 点击右下角保存,在
Profiles
里更新订阅,这样就可以将新的规则添加上了。可以点击Edit rules
查看规则进行验证。之后打开相应网页看是否生效。
目前Clash支持的规则类型如下:
- DOMAIN-SUFFIX:域名后缀匹配
- DOMAIN:域名匹配
- DOMAIN-KEYWORD:域名关键字匹配
- IP-CIDR:IP段匹配
- SRC-IP-CIDR:源IP段匹配
- GEOIP:GEOIP数据库(国家代码)匹配
- DST-PORT:目标端口匹配
- SRC-PORT:源端口匹配
- PROCESS-NAME:源进程名匹配
- RULE-SET:Rule Provider规则匹配
- MATCH:全匹配
其中我们使用最多的就是DOMAIN-SUFFIX域名后缀了,后缀就是域名从后往前数形成的部分。有些公司会在基础域名上加上前缀,将其解析到一个独立的IP地址。比如world.taobao.com,是在taobao.com前加上了域名前缀world。还有一个常见的前缀是www。如果我需要将world.taobao.com和taobao.com都添加到自定义规则中。我们就可以使用域名后缀DOMAIN-SUFFIX这一类型,同时将值填写为taobao.com就可以了。一般情况下都建议使用DOMAIN-SUFFIX,而不是DOMAIN,因为很多时候你不知道你的使用的服务的域名结构,很多时候会跳转到一个带前缀的子域名上,这个时候突然发现打不开了就很尴尬。
其余规则类型根据说明大家也可以基本猜到其用法,读者可以自行探索。
本文章由 brokenway 发布在 个人知识库 ,文章所述不代表本站观点,法律风险由发布者自行承担,转载请注明出处!
评论列表(1条)
[…] 佳明同步缓慢或者连接不上服务器的,请科学上网,并设置规则,http://www.lindavid.cn/4675.html […]