文章

clash规则配置

代理规则大全!!

我一直在用的wmsxwd抑或是一元机场,这些厂商自带的代理规则都太少,对于没匹配上规则的网站,只能要么全部走代理或者全部直连,搞得我经常要手动切换。所以我需要一个相对更加全面的规则列表,让该走代理的网站走代理,该直连的直连!!!

无意中翻到clash-rules这个每日更新代理规则的仓库,便拿来用之。

使用方式如下:

  1. 去机场厂商那里拿到订阅链接,注意有的厂商不会直接给订阅链接而是托管链接,并且会给你一个网站自己去转换成订阅链接

  2. 创建一个.yaml文件(文件名随便),不同的客户端可能配置文件位置不同,比如我是放在~/.config/clash目录下

  3. 编辑文件内容,其中一些配置用原来默认的就行,比如我的是

    1
    2
    3
    4
    5
    6
    
     mixed-port: 7890
     allow-lan: true
     bind-address: '*'
     mode: rule
     log-level: info
     external-controller: '127.0.0.1:9090'
    
  4. 配置proxy-providers配置,顾名思义,配置代理

    1
    2
    3
    4
    5
    6
    
     proxy-providers:
       CNIX: # 代理名称,自定义即可
         type: http # 以远程下载的方式获取代理
         url: "订阅链接" # 填写你的订阅链接
         path: ./cnix.yaml # 从订阅链接下载存到本地的cnix.yaml文件
         interval: 86400 # 更新间隔(s)
    
  5. 配置rule-providers,顾名思义,配置代理规则,同样以远程的方式获取,并定时更新,参考仓库的教程即可,比如加入一个名为google的远程规则(不知道为什么jsdelivr我经常访问不了,所以就直接不走这个cdn了):

    1
    2
    3
    4
    5
    6
    7
    
     rule-providers:
       google:
         type: http
         behavior: domain
         url: "https://raw.githubusercontent.com/Loyalsoldier/clash-rules/release/google.txt"
         path: ./ruleset/google.yaml
         interval: 86400
    
  6. 配置proxy-groups,CNIX就是刚刚配置的proxy-providers,这里定义一个代理组去使用它

    1
    2
    3
    4
    5
    
     proxy-groups:
       - name: PROXY
         type: select
         use:
           - CNIX
    
  7. 配置rules,将规则和代理组关联起来。除了PROXY以外,DIRECT和REJECT可视为默认的代理组,即直连和拒绝,其中拒绝网站通过查看reject.txt就能看到,包含一些广告网站或者人家的内部网站、垃圾网站等。想访问某个网站一直被拒而关掉clash后又能访问的话,可以看看是不是reject.txt的锅

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    
     rules:
       - RULE-SET,applications,DIRECT
       - RULE-SET,private,DIRECT
       - RULE-SET,reject,REJECT
       - RULE-SET,icloud,DIRECT
       - RULE-SET,apple,DIRECT
       - RULE-SET,google,PROXY
       - RULE-SET,proxy,PROXY
       - RULE-SET,direct,DIRECT
       - RULE-SET,lancidr,DIRECT
       - RULE-SET,cncidr,DIRECT
       - RULE-SET,telegramcidr,PROXY
       - GEOIP,LAN,DIRECT
       - GEOIP,CN,DIRECT
       - MATCH,PROXY
    
  8. 最后重启一下clash,选择这个配置就行了

  9. 若后续更换了厂商,更换订阅链接之后要去把cnix.yaml手动删除,再重启clash,否则只有等到下一次interval(24小时)之后cnix.yaml才会自动更新

最后的最后,不知道为什么我配置完成后测速全部是马上失败的,但节点却能用….无语

本文由作者按照 CC BY 4.0 进行授权