Skip to content

自动生成多款代理软件规则的一组shell脚本 / a bunch of shell scripts that can auto generate rules for multi-kind proxy tools

License

Notifications You must be signed in to change notification settings

chinanoahli/autogen_proxy_rules

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

代理规则生成器 / autogen_proxy_rules

自动生成多款代理软件规则的一组shell脚本 / a bunch of shell scripts that can auto generate rules for multi-kind proxy tools

工具特色

  • 以纯shell以及awksed实现,让所有人都看得懂,进而可以自行修改

  • 可以自动从ipdeny下载最新的国家IP段,并利用其生成规则

  • 一键生成多款代理软件的配置文件(含规则)

工具缺点

  • 根据手头有的线路下载对应的国家IP段文件,所以有可能造成配置文件非常大的情况

  • 不够智能,部分功能被写死

如何使用

  1. 先到Resources按照自己的实际情,况修改各个代理软件的config_settings.xxx文件,如加入代理服务器等

  2. 然后将例外规则加入Resources/exception.csv

  • 需要注意的是,目前Clash / ClashX仍未支持USER-AGENT过滤器,
    所以USER-AGENT仅对Quantumult / Quantumult X生效

  • Resources/exception.csv并非标准格式的csv,其分隔符为, (一个英文逗号 + 一个英文空格)

  • Resources/exception.csvgroupcomment不会对生成的规则文件产生任何影响,仅作例外文件规则辨识及标注用

  • Resources/exception.csv的格式化脚本是Resources/format_exception.sh

  1. 回到项目根目录运行./Generate_Rules.sh即可
  • 第一次运行后,会多出几个xx-aggregated.zone文件,这就是从ipdeny下载最新的国家IP段,这几个文件将会被awk清洗和格式化,且下次运行脚本时会用wget增量下载文件更新,所以无需手动更改或删除

  • ClashX.ymlClash / ClashX都有效,可直接通用

  • Quantumult / Quantumult X配置不通用,取所需即可

  • 以上并非实现项目功能的核心文件,已加入.gitignore

格式化脚本说明

格式化IP段文件的脚本为Generate_Rules.sh

  • 因为IP段文件偶尔会出现一些错误的IP段表达,这回导致ClashX崩溃,所以需要用正侧表达式进行过滤
    在脚本第32行

  • 第46行开始,根据不同的国家IP段安排不同的线路,请根据实际需要修改

  • 如果你只有一条线路,推荐将脚本改成下载中国的IP段,然后将其全部指向DIRECT;并将Final指向你的线路标签
    而不是像项目这样分开好几个国家安排线路,这样就可以有效地减少生成文件的体积

其他说明

  • 目前本项以为个人使用为目的,所以某些功能上的设计可能比较死板,欢迎各位大佬前来完善和拓展其功能🙏

  • 目前项目有三个线路标记,即Japan_Tokyo / USA_Oregon / Korea_Seoul
    (因为本人有三条线路,这是方便自己使用的设计)

  • Quantumult设置了一个延时策略,名为ChatLatency

  • Quantumult X设置了一个可用性策略,名为Available_KUJ

  • Clash设置了一个延时策略,名为Chat_Group

  • 以上请根据自身需要修改

About

自动生成多款代理软件规则的一组shell脚本 / a bunch of shell scripts that can auto generate rules for multi-kind proxy tools

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages