├── .github └── workflows │ ├── Airport_Collector.yml │ ├── Collector.yml │ ├── clash_yaml.yml │ ├── merge.yml │ ├── speedtest.yml │ ├── speedtest_yml.yml │ └── test_ip.yml ├── .gitignore ├── Eternity ├── Eternity.txt ├── Eternity.yml ├── EternityAir ├── EternityAir.txt ├── EternityAir.yml ├── EternityBase ├── LICENSE ├── LogInfo.txt ├── LogInfoAir.txt ├── README.md ├── sub ├── airport_merge_base64.txt ├── airport_merge_yaml.yml ├── airport_sub_merge.txt ├── list │ ├── 00.txt │ ├── 01.txt │ ├── 02.txt │ ├── 03.txt │ ├── 07.txt │ ├── 09.txt │ ├── 12.txt │ ├── 13.txt │ ├── 14.txt │ ├── 15.txt │ ├── 16.txt │ ├── 17.txt │ ├── 18.txt │ ├── 20.txt │ ├── 23.txt │ ├── 24.txt │ ├── 27.txt │ ├── 29.txt │ ├── 32.txt │ ├── 36.txt │ ├── 38.txt │ ├── 40.txt │ ├── 41.txt │ ├── 42.txt │ ├── 53.txt │ ├── 54.txt │ ├── 55.txt │ ├── 56.txt │ ├── 57.txt │ ├── 58.txt │ ├── 59.txt │ ├── 60.txt │ ├── 61.txt │ ├── 64.txt │ ├── 65.txt │ ├── 66.txt │ ├── 68.txt │ ├── 73.txt │ ├── 75.txt │ └── 78.txt ├── splitted │ ├── ss.txt │ ├── ssr.txt │ ├── trojan.txt │ └── vmess.txt ├── sub_list backup.json ├── sub_list.json ├── sub_list_airport.json ├── sub_merge.txt ├── sub_merge_base64.txt └── sub_merge_yaml.yml ├── update ├── 2207 │ ├── 220701.txt │ ├── 220702.txt │ ├── 220703.txt │ ├── 220704.txt │ ├── 220705.txt │ ├── 220706.txt │ ├── 220707.txt │ ├── 220708.txt │ ├── 220709.txt │ ├── 220710.txt │ ├── 220711.txt │ ├── 220714.txt │ ├── 220715.txt │ ├── 220716.txt │ ├── 220717.txt │ ├── 220718.txt │ ├── 220719.txt │ ├── 220720.txt │ ├── 220721.txt │ ├── 220722.txt │ ├── 220723.txt │ ├── 220724.txt │ ├── 220725.txt │ ├── 220726.txt │ ├── 220727.txt │ ├── 220728.txt │ ├── 220729.txt │ ├── 220730.txt │ └── 220731.txt ├── 2208 │ ├── 220801.txt │ ├── 220802.txt │ ├── 220803.txt │ ├── 220804.txt │ ├── 220805.txt │ ├── 220806.txt │ ├── 220807.txt │ ├── 220808.txt │ ├── 220809.txt │ ├── 220810.txt │ ├── 220811.txt │ ├── 220812.txt │ ├── 220813.txt │ ├── 220814.txt │ ├── 220815.txt │ ├── 220816.txt │ ├── 220817.txt │ ├── 220818.txt │ ├── 220819.txt │ ├── 220820.txt │ ├── 220821.txt │ ├── 220822.txt │ ├── 220823.txt │ ├── 220824.txt │ ├── 220825.txt │ ├── 220826.txt │ ├── 220827.txt │ ├── 220828.txt │ ├── 220829.txt │ ├── 220830.txt │ └── 220831.txt ├── 2209 │ ├── 220901.txt │ ├── 220902.txt │ ├── 220903.txt │ ├── 220904.txt │ ├── 220905.txt │ ├── 220906.txt │ ├── 220907.txt │ ├── 220908.txt │ ├── 220909.txt │ ├── 220910.txt │ ├── 220911.txt │ ├── 220912.txt │ ├── 220913.txt │ ├── 220914.txt │ ├── 220915.txt │ ├── 220916.txt │ ├── 220917.txt │ ├── 220918.txt │ ├── 220919.txt │ ├── 220920.txt │ ├── 220921.txt │ ├── 220922.txt │ ├── 220923.txt │ ├── 220924.txt │ ├── 220925.txt │ ├── 220926.txt │ ├── 220927.txt │ ├── 220928.txt │ ├── 220929.txt │ └── 220930.txt ├── 2210 │ ├── 221001.txt │ ├── 221002.txt │ ├── 221003.txt │ ├── 221004.txt │ ├── 221005.txt │ ├── 221006.txt │ ├── 221007.txt │ ├── 221008.txt │ ├── 221010.txt │ ├── 221011.txt │ ├── 221014.txt │ ├── 221015.txt │ ├── 221016.txt │ ├── 221017.txt │ ├── 221018.txt │ ├── 221019.txt │ ├── 221020.txt │ ├── 221021.txt │ ├── 221022.txt │ ├── 221023.txt │ ├── 221024.txt │ ├── 221025.txt │ ├── 221026.txt │ ├── 221027.txt │ ├── 221028.txt │ ├── 221029.txt │ ├── 221030.txt │ ├── 221031.txt │ ├── ss.yaml │ ├── test.txt │ └── v2ray.txt ├── 2211 │ ├── 221101.txt │ ├── 221102.txt │ ├── 221103.txt │ ├── 221104.txt │ ├── 221105.txt │ ├── 221106.txt │ ├── 221107.txt │ ├── 221108.txt │ ├── 221109.txt │ ├── 221110.txt │ ├── 221111.txt │ ├── 221112.txt │ ├── 221113.txt │ ├── 221114.txt │ ├── 221115.txt │ ├── 221116.txt │ ├── 221117.txt │ ├── 221118.txt │ ├── 221119.txt │ ├── 221120.txt │ ├── 221121.txt │ ├── 221122.txt │ ├── 221123.txt │ ├── 221124.txt │ ├── 221125.txt │ ├── 221126.txt │ ├── 221127.txt │ ├── 221128.txt │ ├── 221129.txt │ └── 221130.txt ├── 2212 │ ├── 221201.txt │ ├── 221202.txt │ ├── 221203.txt │ ├── 221204.txt │ ├── 221205.txt │ ├── 221206.txt │ ├── 221207.txt │ ├── 221208.txt │ ├── 221209.txt │ ├── 221210.txt │ ├── 221211.txt │ ├── 221212.txt │ ├── 221213.txt │ ├── 221214.txt │ ├── 221215.txt │ ├── 221216.txt │ ├── 221217.txt │ ├── 221218.txt │ ├── 221219.txt │ ├── 221220.txt │ ├── 221221.txt │ ├── 221222.txt │ ├── 221223.txt │ ├── 221224.txt │ ├── 221225.txt │ ├── 221226.txt │ ├── 221227.txt │ ├── 221228.txt │ ├── 221229.txt │ ├── 221230.txt │ └── 221231.txt ├── 2301 │ ├── 230101.txt │ ├── 230102.txt │ ├── 230103.txt │ ├── 230104.txt │ ├── 230105.txt │ ├── 230106.txt │ ├── 230107.txt │ ├── 230108.txt │ ├── 230109.txt │ ├── 230110.txt │ ├── 230111.txt │ ├── 230112.txt │ ├── 230113.txt │ ├── 230114.txt │ ├── 230115.txt │ ├── 230116.txt │ ├── 230117.txt │ ├── 230118.txt │ ├── 230119.txt │ ├── 230120.txt │ ├── 230121.txt │ ├── 230122.txt │ ├── 230123.txt │ ├── 230124.txt │ ├── 230125.txt │ ├── 230126.txt │ ├── 230127.txt │ ├── 230128.txt │ ├── 230129.txt │ ├── 230130.txt │ └── 230131.txt ├── 2302 │ ├── 230201.txt │ ├── 230202.txt │ ├── 230203.txt │ ├── 230204.txt │ ├── 230205.txt │ ├── 230206.txt │ ├── 230207.txt │ ├── 230208.txt │ ├── 230209.txt │ ├── 230210.txt │ ├── 230211.txt │ ├── 230212.txt │ ├── 230213.txt │ ├── 230214.txt │ ├── 230215.txt │ ├── 230216.txt │ ├── 230217.txt │ ├── 230218.txt │ ├── 230219.txt │ ├── 230220.txt │ ├── 230221.txt │ ├── 230222.txt │ ├── 230223.txt │ ├── 230224.txt │ ├── 230225.txt │ ├── 230226.txt │ ├── 230227.txt │ └── 230228.txt ├── 2303 │ ├── 230301.txt │ ├── 230302.txt │ ├── 230303.txt │ ├── 230304.txt │ ├── 230305.txt │ ├── 230306.txt │ ├── 230307.txt │ ├── 230308.txt │ ├── 230309.txt │ ├── 230310.txt │ ├── 230311.txt │ ├── 230312.txt │ ├── 230313.txt │ ├── 230314.txt │ ├── 230315.txt │ ├── 230316.txt │ ├── 230317.txt │ ├── 230318.txt │ ├── 230319.txt │ ├── 230320.txt │ ├── 230321.txt │ ├── 230322.txt │ ├── 230323.txt │ ├── 230324.txt │ ├── 230325.txt │ ├── 230326.txt │ ├── 230327.txt │ ├── 230328.txt │ ├── 230329.txt │ ├── 230330.txt │ └── 230331.txt ├── 2304 │ ├── 230401.txt │ ├── 230402.txt │ ├── 230403.txt │ ├── 230404.txt │ ├── 230405.txt │ ├── 230406.txt │ ├── 230407.txt │ ├── 230408.txt │ ├── 230409.txt │ ├── 230410.txt │ ├── 230411.txt │ ├── 230412.txt │ ├── 230413.txt │ ├── 230414.txt │ ├── 230415.txt │ ├── 230416.txt │ ├── 230417.txt │ ├── 230418.txt │ ├── 230419.txt │ ├── 230420.txt │ ├── 230421.txt │ ├── 230422.txt │ ├── 230423.txt │ ├── 230424.txt │ ├── 230425.txt │ ├── 230426.txt │ ├── 230428.txt │ ├── 230429.txt │ └── 230430.txt ├── 2305 │ ├── 230501.txt │ ├── 230502.txt │ ├── 230503.txt │ ├── 230504.txt │ ├── 230505.txt │ ├── 230506.txt │ ├── 230507.txt │ ├── 230508.txt │ ├── 230509.txt │ ├── 230510.txt │ ├── 230511.txt │ ├── 230512.txt │ ├── 230513.txt │ ├── 230514.txt │ ├── 230515.txt │ ├── 230516.txt │ ├── 230517.txt │ ├── 230518.txt │ ├── 230519.txt │ ├── 230520.txt │ ├── 230521.txt │ ├── 230522.txt │ ├── 230523.txt │ ├── 230524.txt │ ├── 230525.txt │ ├── 230526.txt │ ├── 230527.txt │ ├── 230528.txt │ ├── 230529.txt │ ├── 230530.txt │ └── 230531.txt ├── 2306 │ ├── 230601.txt │ ├── 230602.txt │ ├── 230603.txt │ ├── 230604.txt │ ├── 230605.txt │ ├── 230606.txt │ ├── 230607.txt │ ├── 230608.txt │ ├── 230609.txt │ ├── 230610.txt │ ├── 230611.txt │ ├── 230612.txt │ ├── 230613.txt │ ├── 230614.txt │ ├── 230615.txt │ ├── 230616.txt │ ├── 230617.txt │ ├── 230618.txt │ ├── 230619.txt │ ├── 230620.txt │ ├── 230621.txt │ ├── 230622.txt │ ├── 230623.txt │ ├── 230624.txt │ ├── 230625.txt │ ├── 230626.txt │ ├── 230627.txt │ ├── 230628.txt │ ├── 230629.txt │ └── 230630.txt ├── 2307 │ ├── 230701.txt │ ├── 230702.txt │ ├── 230703.txt │ ├── 230704.txt │ ├── 230705.txt │ ├── 230706.txt │ ├── 230707.txt │ ├── 230711.txt │ ├── 230712.txt │ ├── 230713.txt │ ├── 230714.txt │ ├── 230715.txt │ ├── 230716.txt │ ├── 230717.txt │ ├── 230718.txt │ ├── 230719.txt │ ├── 230720.txt │ ├── 230721.txt │ ├── 230722.txt │ ├── 230723.txt │ ├── 230724.txt │ ├── 230725.txt │ ├── 230726.txt │ ├── 230727.txt │ ├── 230728.txt │ ├── 230729.txt │ ├── 230730.txt │ └── 230731.txt ├── 2308 │ ├── 230801.txt │ ├── 230802.txt │ ├── 230803.txt │ ├── 230804.txt │ ├── 230805.txt │ ├── 230806.txt │ ├── 230807.txt │ ├── 230808.txt │ ├── 230809.txt │ ├── 230810.txt │ ├── 230811.txt │ ├── 230812.txt │ ├── 230813.txt │ ├── 230814.txt │ ├── 230815.txt │ ├── 230816.txt │ ├── 230817.txt │ ├── 230818.txt │ ├── 230819.txt │ ├── 230820.txt │ ├── 230821.txt │ ├── 230822.txt │ ├── 230823.txt │ ├── 230824.txt │ ├── 230825.txt │ ├── 230826.txt │ ├── 230827.txt │ ├── 230828.txt │ ├── 230829.txt │ ├── 230830.txt │ └── 230831.txt ├── 2309 │ ├── 230901.txt │ ├── 230902.txt │ ├── 230903.txt │ ├── 230904.txt │ ├── 230905.txt │ ├── 230906.txt │ ├── 230907.txt │ ├── 230908.txt │ ├── 230909.txt │ ├── 230910.txt │ ├── 230911.txt │ ├── 230912.txt │ ├── 230913.txt │ ├── 230914.txt │ ├── 230915.txt │ ├── 230916.txt │ ├── 230917.txt │ ├── 230918.txt │ ├── 230919.txt │ ├── 230920.txt │ ├── 230921.txt │ ├── 230922.txt │ ├── 230923.txt │ ├── 230924.txt │ ├── 230925.txt │ ├── 230926.txt │ ├── 230927.txt │ ├── 230928.txt │ ├── 230929.txt │ └── 230930.txt ├── 2310 │ ├── 231001.txt │ ├── 231002.txt │ ├── 231003.txt │ ├── 231004.txt │ ├── 231005.txt │ ├── 231006.txt │ ├── 231007.txt │ ├── 231008.txt │ ├── 231009.txt │ ├── 231010.txt │ ├── 231011.txt │ ├── 231012.txt │ ├── 231013.txt │ ├── 231014.txt │ ├── 231015.txt │ ├── 231016.txt │ ├── 231017.txt │ ├── 231018.txt │ ├── 231019.txt │ ├── 231020.txt │ ├── 231021.txt │ ├── 231022.txt │ ├── 231023.txt │ ├── 231024.txt │ ├── 231025.txt │ └── 231026.txt ├── 2311 │ ├── 231102.txt │ ├── 231103.txt │ ├── 231104.txt │ ├── 231105.txt │ ├── 231106.txt │ ├── 231107.txt │ ├── 231108.txt │ ├── 231109.txt │ ├── 231110.txt │ ├── 231111.txt │ ├── 231112.txt │ ├── 231113.txt │ ├── 231114.txt │ ├── 231115.txt │ ├── 231116.txt │ ├── 231117.txt │ ├── 231118.txt │ ├── 231119.txt │ ├── 231120.txt │ ├── 231121.txt │ ├── 231122.txt │ ├── 231123.txt │ ├── 231124.txt │ ├── 231125.txt │ ├── 231126.txt │ ├── 231127.txt │ ├── 231128.txt │ ├── 231129.txt │ └── 231130.txt ├── 2312 │ ├── 231201.txt │ ├── 231202.txt │ ├── 231203.txt │ ├── 231204.txt │ ├── 231205.txt │ ├── 231206.txt │ ├── 231207.txt │ ├── 231208.txt │ ├── 231209.txt │ ├── 231210.txt │ ├── 231211.txt │ ├── 231212.txt │ ├── 231213.txt │ ├── 231214.txt │ ├── 231215.txt │ ├── 231216.txt │ ├── 231217.txt │ ├── 231218.txt │ ├── 231219.txt │ ├── 231220.txt │ ├── 231221.txt │ ├── 231222.txt │ ├── 231223.txt │ ├── 231224.txt │ ├── 231225.txt │ ├── 231226.txt │ ├── 231227.txt │ ├── 231228.txt │ ├── 231229.txt │ ├── 231230.txt │ └── 231231.txt ├── 2401 │ ├── 240101.txt │ ├── 240102.txt │ ├── 240103.txt │ ├── 240104.txt │ ├── 240105.txt │ ├── 240106.txt │ ├── 240107.txt │ ├── 240108.txt │ ├── 240109.txt │ ├── 240110.txt │ ├── 240111.txt │ ├── 240112.txt │ ├── 240113.txt │ ├── 240114.txt │ ├── 240115.txt │ ├── 240116.txt │ ├── 240117.txt │ ├── 240118.txt │ ├── 240119.txt │ ├── 240120.txt │ ├── 240121.txt │ ├── 240122.txt │ ├── 240123.txt │ ├── 240124.txt │ ├── 240125.txt │ ├── 240126.txt │ ├── 240127.txt │ ├── 240128.txt │ ├── 240129.txt │ ├── 240130.txt │ └── 240131.txt ├── 2402 │ ├── 240201.txt │ ├── 240202.txt │ ├── 240203.txt │ ├── 240204.txt │ ├── 240205.txt │ ├── 240206.txt │ ├── 240207.txt │ ├── 240208.txt │ ├── 240209.txt │ ├── 240210.txt │ ├── 240211.txt │ ├── 240212.txt │ ├── 240213.txt │ ├── 240214.txt │ ├── 240215.txt │ ├── 240216.txt │ ├── 240217.txt │ ├── 240218.txt │ ├── 240219.txt │ ├── 240220.txt │ ├── 240221.txt │ ├── 240222.txt │ ├── 240223.txt │ ├── 240224.txt │ ├── 240225.txt │ ├── 240226.txt │ ├── 240227.txt │ ├── 240228.txt │ └── 240229.txt ├── 2403 │ ├── 240301.txt │ ├── 240302.txt │ ├── 240303.txt │ ├── 240304.txt │ ├── 240305.txt │ ├── 240306.txt │ ├── 240307.txt │ ├── 240308.txt │ ├── 240309.txt │ ├── 240310.txt │ ├── 240311.txt │ ├── 240312.txt │ ├── 240313.txt │ ├── 240314.txt │ ├── 240315.txt │ ├── 240316.txt │ ├── 240317.txt │ ├── 240318.txt │ ├── 240319.txt │ ├── 240320.txt │ ├── 240321.txt │ ├── 240322.txt │ ├── 240323.txt │ ├── 240324.txt │ ├── 240325.txt │ ├── 240326.txt │ ├── 240327.txt │ ├── 240328.txt │ ├── 240329.txt │ ├── 240330.txt │ └── 240331.txt ├── 2404 │ ├── 240401.txt │ ├── 240402.txt │ ├── 240403.txt │ ├── 240404.txt │ ├── 240405.txt │ ├── 240406.txt │ ├── 240407.txt │ ├── 240408.txt │ ├── 240409.txt │ ├── 240410.txt │ ├── 240411.txt │ ├── 240412.txt │ ├── 240413.txt │ ├── 240414.txt │ ├── 240415.txt │ ├── 240416.txt │ ├── 240417.txt │ ├── 240418.txt │ ├── 240419.txt │ ├── 240420.txt │ ├── 240421.txt │ ├── 240422.txt │ ├── 240423.txt │ ├── 240424.txt │ ├── 240425.txt │ ├── 240426.txt │ ├── 240427.txt │ ├── 240428.txt │ ├── 240429.txt │ └── 240430.txt ├── 2405 │ ├── 240501.txt │ ├── 240502.txt │ ├── 240503.txt │ ├── 240504.txt │ ├── 240505.txt │ ├── 240506.txt │ ├── 240507.txt │ ├── 240508.txt │ ├── 240509.txt │ ├── 240510.txt │ ├── 240511.txt │ ├── 240512.txt │ ├── 240513.txt │ ├── 240514.txt │ ├── 240515.txt │ ├── 240516.txt │ ├── 240517.txt │ ├── 240518.txt │ ├── 240519.txt │ ├── 240520.txt │ └── 240521.txt └── provider │ ├── config.yml │ ├── config.yml.old │ ├── provider-all-airport.yml │ ├── provider-all.yml │ ├── provider-cn.yml │ ├── provider-meta-cn.yml │ ├── provider-meta-others.yml │ ├── provider-meta.yml │ ├── provider-others.yml │ └── provider.yml └── utils ├── Country.mmdb ├── airport └── speedtest │ ├── lite_config_yaml_airport.json │ ├── output.py │ ├── speedtest2_yaml.sh │ └── speedtest2_yamlc.sh ├── eternity_convert.py ├── eternity_convert_airport.py ├── get_subs.py ├── list_merge.py ├── list_merge_airport.py ├── list_update.py ├── localserver ├── index.js ├── package-lock.json ├── package.json └── yarn.lock ├── requirements.txt ├── speedtest ├── clash_config.yml ├── clash_config_eu.yml ├── ip_test.sh ├── lite_config.json ├── lite_config_yaml.json ├── output.py ├── provider.yaml ├── proxychains.conf ├── speedtest.sh ├── speedtest2.sh ├── speedtest2_yaml.sh └── speedtest2_yamlc.sh ├── sub_convert.py └── subs_function.py /.github/workflows/Airport_Collector.yml: -------------------------------------------------------------------------------- 1 | name: Airport Collect 2 | 3 | on: 4 | workflow_dispatch: 5 | 6 | schedule: 7 | # - cron: '*/5 * * * *' 8 | # 表达式生成 https://crontab.guru/ 9 | - cron: "30 */2 * * *" 10 | 11 | jobs: 12 | main: 13 | name: Collect & SpeedTest & Filter 14 | runs-on: ubuntu-latest 15 | steps: 16 | - uses: actions/checkout@v3 17 | - uses: actions/setup-python@v4 18 | with: 19 | python-version: "3.11" 20 | cache: "pip" 21 | # setup actions has built-in caching function 22 | # - uses: actions/cache@v3 23 | # with: 24 | # path: ~/.cache/pip 25 | # key: ${{ runner.os }}-pip-${{ hashFiles('**/run_in_Actions/requirements.txt') }} 26 | # restore-keys: | 27 | # ${{ runner.os }}-pip- 28 | - name: Set Timezone 29 | run: sudo timedatectl set-timezone 'Asia/Tehran' 30 | - name: Install Requirements 31 | run: | 32 | pip install -r ./utils/requirements.txt 33 | 34 | - name: Running Collector 35 | run: | 36 | wget -O subconverter.tar.gz https://github.com/tindy2013/subconverter/releases/download/v0.7.2/subconverter_linux64.tar.gz 37 | tar -zxvf subconverter.tar.gz -C ./ 38 | chmod +x ./subconverter/subconverter && nohup ./subconverter/subconverter >./subconverter.log 2>&1 & 39 | python ./utils/list_merge_airport.py 40 | - name: Commit Changes 41 | run: | 42 | git config --local user.email "actions@github.com" 43 | git config --local user.name "GitHub Actions" 44 | git pull origin master 45 | git add ./sub 46 | git checkout master 47 | # git add README.md 48 | # git add ./utils/Country.mmdb 49 | git commit -m "♻️ $(date '+%Y-%m-%d %H:%M:%S') Collected" 50 | - name: Push Changes 51 | uses: ad-m/github-push-action@master 52 | with: 53 | branch: master 54 | 55 | - name: Run Lite Speedtest 56 | run: | 57 | sleep 5 58 | sudo sh ./utils/airport/speedtest/speedtest2_yaml.sh 59 | python ./utils/airport/speedtest/output.py 60 | - name: Commit changes 61 | run: | 62 | git config --local user.email "actions@github.com" 63 | git config --local user.name "GitHub Actions" 64 | git pull origin master 65 | git add EternityAir 66 | git add EternityAir.txt 67 | git add LogInfoAir.txt 68 | git add ./sub 69 | # git add ./sub/airport_sub_merge.txt 70 | # git add ./sub/airport_merge_base64.txt 71 | git commit -m "♻️ $(date '+%Y-%m-%d %H:%M:%S') Tested" 72 | - name: Push Change 73 | uses: ad-m/github-push-action@master 74 | with: 75 | branch: master 76 | 77 | - name: Run Convertor & Formatter 78 | run: | 79 | sleep 5 80 | wget -O subconverter.tar.gz https://github.com/tindy2013/subconverter/releases/download/v0.7.2/subconverter_linux64.tar.gz 81 | tar -zxvf subconverter.tar.gz -C ./ 82 | chmod +x ./subconverter/subconverter && nohup ./subconverter/subconverter >./subconverter.log 2>&1 & 83 | python ./utils/eternity_convert_airport.py 84 | - name: Commit changes 85 | run: | 86 | git config --local user.email "actions@github.com" 87 | git config --local user.name "GitHub Actions" 88 | git pull origin master 89 | git add EternityAir.yml 90 | git add ./update/* 91 | git add LogInfoAir.txt 92 | # git add Eternity 93 | # git add README.md 94 | git commit -m "♻️ $(date '+%Y-%m-%d %H:%M:%S') Filtered" 95 | - name: Push Change 96 | uses: ad-m/github-push-action@master 97 | with: 98 | branch: master 99 | -------------------------------------------------------------------------------- /.github/workflows/Collector.yml: -------------------------------------------------------------------------------- 1 | name: Collect 2 | 3 | on: 4 | workflow_dispatch: 5 | 6 | push: 7 | paths: 8 | - "./EternityBase" 9 | - "./sub/sub_merge_base64.txt" 10 | - "./sub/sub_merge_yaml.yml" 11 | 12 | schedule: 13 | # - cron: '*/5 * * * *' 14 | # 表达式生成 https://crontab.guru/ 15 | - cron: "0 0,12 * * *" 16 | 17 | jobs: 18 | main: 19 | name: Collect & SpeedTest & Filter 20 | runs-on: ubuntu-latest 21 | steps: 22 | - uses: actions/checkout@v3 23 | - uses: actions/setup-node@v3.7.0 24 | with: 25 | node-version: "18.x" 26 | - uses: bahmutov/npm-install@v1.6.0 27 | with: 28 | working-directory: ./utils/localserver 29 | - uses: actions/setup-python@v4.7.0 30 | with: 31 | python-version: "3.11" 32 | cache: "pip" 33 | # setup actions has built-in caching function 34 | # - uses: actions/cache@v3 35 | # with: 36 | # path: ~/.cache/pip 37 | # key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }} 38 | # restore-keys: | 39 | # ${{ runner.os }}-pip- 40 | # - uses: actions/cache@v3 41 | # with: 42 | # path: ~/.cache/yarn 43 | # key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} 44 | # restore-keys: | 45 | # ${{ runner.os }}-node- 46 | - name: Set Timezone 47 | run: sudo timedatectl set-timezone 'Asia/Tehran' 48 | - name: Install Requirements 49 | run: | 50 | pip install -r ./utils/requirements.txt 51 | 52 | - name: Running Collector 53 | run: | 54 | wget -O subconverter.tar.gz https://github.com/tindy2013/subconverter/releases/download/v0.7.2/subconverter_linux64.tar.gz 55 | tar -zxvf subconverter.tar.gz -C ./ 56 | chmod +x ./subconverter/subconverter && nohup ./subconverter/subconverter >./subconverter.log 2>&1 & 57 | node ./utils/localserver/index.js & 58 | sleep 2 59 | python ./utils/list_merge.py 60 | - name: Commit Changes 61 | run: | 62 | git config --local user.email "actions@github.com" 63 | git config --local user.name "GitHub Actions" 64 | git pull origin master 65 | git add ./sub 66 | git add ./utils/Country.mmdb 67 | git add README.md 68 | git checkout master 69 | git commit -m "✔️ $(date '+%Y-%m-%d %H:%M:%S') Collected" 70 | - name: Push Changes 71 | uses: ad-m/github-push-action@master 72 | with: 73 | branch: master 74 | 75 | - name: Run Lite Speedtest 76 | run: | 77 | sleep 5 78 | sudo sh ./utils/speedtest/speedtest2_yaml.sh 79 | python ./utils/speedtest/output.py 80 | - name: Commit changes 81 | run: | 82 | git config --local user.email "actions@github.com" 83 | git config --local user.name "GitHub Actions" 84 | git pull origin master 85 | git add EternityBase 86 | git add Eternity 87 | git add Eternity.txt 88 | git add ./sub/sub_merge.txt 89 | git add ./sub/sub_merge_base64.txt 90 | git add LogInfo.txt 91 | git add ./sub/splitted/* 92 | git commit -m "✔️ $(date '+%Y-%m-%d %H:%M:%S') Tested" 93 | - name: Push Change 94 | uses: ad-m/github-push-action@master 95 | with: 96 | branch: master 97 | 98 | - name: Run Convertor & Formatter 99 | run: | 100 | sleep 5 101 | wget -O subconverter.tar.gz https://github.com/tindy2013/subconverter/releases/download/v0.7.2/subconverter_linux64.tar.gz 102 | tar -zxvf subconverter.tar.gz -C ./ 103 | chmod +x ./subconverter/subconverter && nohup ./subconverter/subconverter >./subconverter.log 2>&1 & 104 | python ./utils/eternity_convert.py 105 | - name: Commit changes 106 | run: | 107 | git config --local user.email "actions@github.com" 108 | git config --local user.name "GitHub Actions" 109 | git pull origin master 110 | git add Eternity.yml 111 | git add Eternity 112 | git add README.md 113 | git add ./update/* 114 | git add LogInfo.txt 115 | git clean -f -d 116 | git commit -m "✔️ $(date '+%Y-%m-%d %H:%M:%S') Filtered" 117 | - name: Push Change 118 | uses: ad-m/github-push-action@master 119 | with: 120 | branch: master 121 | -------------------------------------------------------------------------------- /.github/workflows/clash_yaml.yml: -------------------------------------------------------------------------------- 1 | name: clash_yaml 2 | 3 | # 触发条件 4 | on: 5 | workflow_dispatch: 6 | 7 | push: 8 | paths: 9 | - "./EternityBase" 10 | 11 | schedule: 12 | - cron: "45 2,14 * * *" 13 | 14 | jobs: 15 | deploy: 16 | runs-on: ubuntu-latest 17 | steps: 18 | - name: Checkout code 19 | uses: actions/checkout@v2 20 | - name: Install Python 21 | uses: actions/setup-python@v2 22 | with: 23 | python-version: "3.x" 24 | - name: Load Cache 25 | uses: actions/cache@v2 26 | with: 27 | path: ~/.cache/pip 28 | key: ${{ runner.os }}-pip-${{ hashFiles('**/run_in_Actions/requirements.txt') }} 29 | restore-keys: | 30 | ${{ runner.os }}-pip- 31 | - name: Set Timezone 32 | run: sudo timedatectl set-timezone 'Asia/Tehran' 33 | - name: Install Dependencies 34 | run: | 35 | pip install -r ./utils/requirements.txt 36 | - name: Run Lite Speedtest 37 | run: | 38 | wget -O subconverter.tar.gz https://github.com/tindy2013/subconverter/releases/download/v0.7.2/subconverter_linux64.tar.gz 39 | tar -zxvf subconverter.tar.gz -C ./ 40 | chmod +x ./subconverter/subconverter && nohup ./subconverter/subconverter >./subconverter.log 2>&1 & 41 | 42 | python ./utils/eternity_convert.py 43 | - name: Commit changes 44 | run: | 45 | git config --local user.email "actions@github.com" 46 | git config --local user.name "GitHub Actions" 47 | git pull origin master 48 | git add Eternity.yml 49 | git add Eternity 50 | git add README.md 51 | git add ./update/* 52 | git add LogInfo.txt 53 | git commit -m "$(date '+%Y-%m-%d %H:%M:%S') Filter Nodes" 54 | - name: Push Change 55 | uses: ad-m/github-push-action@master 56 | with: 57 | # github_token: ${{ secrets.TOKEN }} 58 | branch: master 59 | -------------------------------------------------------------------------------- /.github/workflows/merge.yml: -------------------------------------------------------------------------------- 1 | name: sub_merge 2 | 3 | # 触发条件 4 | on: 5 | workflow_dispatch: 6 | 7 | schedule: 8 | # - cron: '*/5 * * * *' 9 | # 表达式生成 https://crontab.guru/ 10 | - cron: "0 0,12 * * *" 11 | 12 | jobs: 13 | deploy: 14 | runs-on: ubuntu-latest 15 | steps: 16 | - name: Checkout 17 | uses: actions/checkout@v2 18 | - name: Install Python 19 | uses: actions/setup-python@v2 20 | with: 21 | python-version: "3.x" 22 | - name: Load Cache 23 | uses: actions/cache@v2 24 | with: 25 | path: ~/.cache/pip 26 | key: ${{ runner.os }}-pip-${{ hashFiles('**/run_in_Actions/requirements.txt') }} 27 | restore-keys: | 28 | ${{ runner.os }}-pip- 29 | - name: Set Timezone 30 | run: sudo timedatectl set-timezone 'Asia/Tehran' 31 | - name: Install Requirements 32 | run: | 33 | pip install -r ./utils/requirements.txt 34 | - name: Running Tasks 35 | run: | 36 | wget -O subconverter.tar.gz https://github.com/tindy2013/subconverter/releases/download/v0.7.2/subconverter_linux64.tar.gz 37 | tar -zxvf subconverter.tar.gz -C ./ 38 | chmod +x ./subconverter/subconverter && nohup ./subconverter/subconverter >./subconverter.log 2>&1 & 39 | 40 | python ./utils/list_merge.py 41 | 42 | - name: Commit Changes 43 | run: | 44 | git config --local user.email "actions@github.com" 45 | git config --local user.name "GitHub Actions" 46 | git pull origin master 47 | git add ./sub 48 | git add ./utils/Country.mmdb 49 | git add README.md 50 | git checkout master 51 | git commit -m "$(date '+%Y-%m-%d %H:%M:%S') Update Nodes" 52 | - name: Push Changes 53 | uses: ad-m/github-push-action@master 54 | with: 55 | branch: master 56 | -------------------------------------------------------------------------------- /.github/workflows/speedtest.yml: -------------------------------------------------------------------------------- 1 | name: speedtest 2 | 3 | # 触发条件 4 | on: 5 | workflow_dispatch: 6 | 7 | push: 8 | paths: 9 | - './sub/sub_merge_base64.txt' 10 | 11 | schedule: 12 | - cron: '30 */8 * * *' 13 | 14 | jobs: 15 | deploy: 16 | runs-on: ubuntu-latest 17 | steps: 18 | - name: Checkout code 19 | uses: actions/checkout@v2 20 | - name: Install Python 21 | uses: actions/setup-python@v2 22 | with: 23 | python-version: '3.x' 24 | - name: Load Cache 25 | uses: actions/cache@v2 26 | with: 27 | path: ~/.cache/pip 28 | key: ${{ runner.os }}-pip-${{ hashFiles('**/run_in_Actions/requirements.txt') }} 29 | restore-keys: | 30 | ${{ runner.os }}-pip- 31 | - name: Set Timezone 32 | run: sudo timedatectl set-timezone 'Asia/Tehran' 33 | - name: Install Dependencies 34 | run: | 35 | pip install -r ./utils/requirements.txt 36 | - name: Run Lite Speedtest 37 | run: | 38 | sudo sh ./utils/speedtest/speedtest2.sh 39 | python ./utils/speedtest/output.py 40 | python ./utils/eternity_convert.py 41 | - name: Commit changes 42 | run: | 43 | git config --local user.email "actions@github.com" 44 | git config --local user.name "GitHub Actions" 45 | git pull origin master 46 | git add Eternity 47 | git add Eternity.yml 48 | git add README.md 49 | git add ./update/* 50 | git add LogInfo.txt 51 | git commit -m "$(date '+%Y-%m-%d %H:%M:%S') Filter Nodes" 52 | - name: Push Change 53 | uses: ad-m/github-push-action@master 54 | with: 55 | # github_token: ${{ secrets.TOKEN }} 56 | branch: master 57 | -------------------------------------------------------------------------------- /.github/workflows/speedtest_yml.yml: -------------------------------------------------------------------------------- 1 | name: speedtest_yaml 2 | 3 | # 触发条件 4 | on: 5 | workflow_dispatch: 6 | 7 | push: 8 | paths: 9 | - "./sub/sub_merge_base64.txt" 10 | - "./sub/sub_merge_yaml.yml" 11 | 12 | schedule: 13 | - cron: "15 1,13 * * *" 14 | 15 | jobs: 16 | deploy: 17 | runs-on: ubuntu-latest 18 | steps: 19 | - name: Checkout code 20 | uses: actions/checkout@v2 21 | - name: Install Python 22 | uses: actions/setup-python@v2 23 | with: 24 | python-version: "3.x" 25 | - name: Load Cache 26 | uses: actions/cache@v2 27 | with: 28 | path: ~/.cache/pip 29 | key: ${{ runner.os }}-pip-${{ hashFiles('**/run_in_Actions/requirements.txt') }} 30 | restore-keys: | 31 | ${{ runner.os }}-pip- 32 | - name: Set Timezone 33 | run: sudo timedatectl set-timezone 'Asia/Tehran' 34 | - name: Install Dependencies 35 | run: | 36 | pip install -r ./utils/requirements.txt 37 | - name: Run Lite Speedtest 38 | run: | 39 | sudo sh ./utils/speedtest/speedtest2_yamlc.sh 40 | python ./utils/speedtest/output.py 41 | - name: Commit changes 42 | run: | 43 | git config --local user.email "actions@github.com" 44 | git config --local user.name "GitHub Actions" 45 | git pull origin master 46 | git add EternityBase 47 | git add Eternity 48 | git add Eternity.txt 49 | git add ./sub/sub_merge.txt 50 | git add ./sub/sub_merge_base64.txt 51 | git add LogInfo.txt 52 | git commit -m "$(date '+%Y-%m-%d %H:%M:%S') Filter Nodes" 53 | - name: Push Change 54 | uses: ad-m/github-push-action@master 55 | with: 56 | # github_token: ${{ secrets.TOKEN }} 57 | branch: master 58 | -------------------------------------------------------------------------------- /.github/workflows/test_ip.yml: -------------------------------------------------------------------------------- 1 | name: test_ip 2 | 3 | on: 4 | workflow_dispatch: 5 | 6 | jobs: 7 | deploy: 8 | runs-on: ubuntu-latest 9 | steps: 10 | - name: Checkout code 11 | uses: actions/checkout@v2 12 | - name: Install Python 13 | uses: actions/setup-python@v2 14 | with: 15 | python-version: "3.x" 16 | - name: Load Cache 17 | uses: actions/cache@v2 18 | with: 19 | path: ~/.cache/pip 20 | key: ${{ runner.os }}-pip-${{ hashFiles('**/run_in_Actions/requirements.txt') }} 21 | restore-keys: | 22 | ${{ runner.os }}-pip- 23 | - name: Set Timezone 24 | run: sudo timedatectl set-timezone 'Asia/Tehran' 25 | - name: Install Dependencies 26 | run: | 27 | pip install -r ./utils/requirements.txt 28 | - name: Run Ip Test 29 | run: | 30 | sudo sh ./utils/speedtest/ip_test.sh 31 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /auto_action.bat 2 | /utils/get_list.py 3 | /utils/__pycache__ -------------------------------------------------------------------------------- /EternityAir: -------------------------------------------------------------------------------- 1 | dHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6ZHguamNub2RlLnRvcDoyOTQ4Mj9zZWN1cml0eT10bHMmc25pPXNnMDMuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My41Ni4yNDcuMjA2LTAwMAp0cm9qYW46Ly9mNDQxYTJiMC0zMWVmLTQ5MGQtYmQ5MS05YjFjZDk2MGY0Y2VAZ3pkeC5qY25vZGUudG9wOjM5MTkxP3NlY3VyaXR5PXRscyZzbmk9dm4wMS5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjU2LjI0Ny4yMDYtMDAxCnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4MDEuamNub2RlLnRvcDo0MzY4Nj9zZWN1cml0eT10bHMmc25pPXZuMDEuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My41Ni4yMjkuMjM2LTAwMgp0cm9qYW46Ly9mNDQxYTJiMC0zMWVmLTQ5MGQtYmQ5MS05YjFjZDk2MGY0Y2VAZ3p5ZC5qY25vZGUudG9wOjQ3MDIwP3NlY3VyaXR5PXRscyZzbmk9dm4wMS5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTI1Ljg4LjIxMC42Ny0wMDMKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6ZHguamNub2RlLnRvcDo0MjYzMD9zZWN1cml0eT10bHMmc25pPWhrMDUuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My41Ni4yNDcuMjA2LTAwNAp0cm9qYW46Ly9mNDQxYTJiMC0zMWVmLTQ5MGQtYmQ5MS05YjFjZDk2MGY0Y2VAZ3pkeDAxLmpjbm9kZS50b3A6MTk2ODI/c2VjdXJpdHk9dGxzJnNuaT1oazA1LmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuNTYuMjI5LjIzNi0wMDUKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6eWQuamNub2RlLnRvcDozODYyND9zZWN1cml0eT10bHMmc25pPWhrMDUuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTEyNS44OC4yMTAuNjctMDA2CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4Lmpjbm9kZS50b3A6NDEwNjM/c2VjdXJpdHk9dGxzJnNuaT1oazA0LmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuNTYuMjQ3LjIwNi0wMDcKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6ZHgwMS5qY25vZGUudG9wOjMyNjMxP3NlY3VyaXR5PXRscyZzbmk9aGswNC5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjU2LjIyOS4yMzYtMDA4CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnenlkLmpjbm9kZS50b3A6MTM3MzQ/c2VjdXJpdHk9dGxzJnNuaT1oazA0LmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xMjUuODguMjEwLjY3LTAwOQp0cm9qYW46Ly9mNDQxYTJiMC0zMWVmLTQ5MGQtYmQ5MS05YjFjZDk2MGY0Y2VAZ3pkeC5qY25vZGUudG9wOjQxMDMyP3NlY3VyaXR5PXRscyZzbmk9aGswMy5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjU2LjI0Ny4yMDYtMDEwCnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4MDEuamNub2RlLnRvcDo2MjUyNT9zZWN1cml0eT10bHMmc25pPWhrMDMuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My41Ni4yMjkuMjM2LTAxMQp0cm9qYW46Ly9mNDQxYTJiMC0zMWVmLTQ5MGQtYmQ5MS05YjFjZDk2MGY0Y2VAZ3p5ZC5qY25vZGUudG9wOjY0MzI4P3NlY3VyaXR5PXRscyZzbmk9aGswMy5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTI1Ljg4LjIxMC42Ny0wMTIKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6ZHguamNub2RlLnRvcDo0NDI4Mz9zZWN1cml0eT10bHMmc25pPWhrMDIuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My41Ni4yNDcuMjA2LTAxMwp0cm9qYW46Ly9mNDQxYTJiMC0zMWVmLTQ5MGQtYmQ5MS05YjFjZDk2MGY0Y2VAZ3pkeDAxLmpjbm9kZS50b3A6NDAwMjc/c2VjdXJpdHk9dGxzJnNuaT1oazAyLmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuNTYuMjI5LjIzNi0wMTQKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6eWQuamNub2RlLnRvcDozNjU1ND9zZWN1cml0eT10bHMmc25pPWhrMDIuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTEyNS44OC4yMTAuNjctMDE1CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4Lmpjbm9kZS50b3A6MTkzOTA/c2VjdXJpdHk9dGxzJnNuaT1qcDAxLmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuNTYuMjQ3LjIwNi0wMTYKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6ZHgwMS5qY25vZGUudG9wOjQwNzE2P3NlY3VyaXR5PXRscyZzbmk9anAwMS5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjU2LjIyOS4yMzYtMDE3CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnenlkLmpjbm9kZS50b3A6Mjc4OTc/c2VjdXJpdHk9dGxzJnNuaT1qcDAxLmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xMjUuODguMjEwLjY3LTAxOAp0cm9qYW46Ly9mNDQxYTJiMC0zMWVmLTQ5MGQtYmQ5MS05YjFjZDk2MGY0Y2VAZ3pkeC5qY25vZGUudG9wOjE3MjE3P3NlY3VyaXR5PXRscyZzbmk9anAwMy5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjU2LjI0Ny4yMDYtMDE5CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnenlkLmpjbm9kZS50b3A6NTE4NDA/c2VjdXJpdHk9dGxzJnNuaT1qcDAzLmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xMjUuODguMjEwLjY3LTAyMAp0cm9qYW46Ly9mNDQxYTJiMC0zMWVmLTQ5MGQtYmQ5MS05YjFjZDk2MGY0Y2VAZ3pkeC5qY25vZGUudG9wOjQ3NDkyP3NlY3VyaXR5PXRscyZzbmk9cmN0dzAxLmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuNTYuMjQ3LjIwNi0wMjEKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6ZHgwMS5qY25vZGUudG9wOjI4NjA2P3NlY3VyaXR5PXRscyZzbmk9cmN0dzAxLmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuNTYuMjI5LjIzNi0wMjIKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6eWQuamNub2RlLnRvcDoyOTY3OT9zZWN1cml0eT10bHMmc25pPXJjdHcwMS5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTI1Ljg4LjIxMC42Ny0wMjMKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6ZHguamNub2RlLnRvcDoxNjYxND9zZWN1cml0eT10bHMmc25pPXJjdHcwMi5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjU2LjI0Ny4yMDYtMDI0CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4MDEuamNub2RlLnRvcDoyODAzMz9zZWN1cml0eT10bHMmc25pPXJjdHcwMi5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjU2LjIyOS4yMzYtMDI1CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnenlkLmpjbm9kZS50b3A6NTM4MjY/c2VjdXJpdHk9dGxzJnNuaT1yY3R3MDIuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTEyNS44OC4yMTAuNjctMDI2CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4MDEuamNub2RlLnRvcDozNDQ3Mj9zZWN1cml0eT10bHMmc25pPXNnMDMuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My41Ni4yMjkuMjM2LTAyOAp0cm9qYW46Ly9mNDQxYTJiMC0zMWVmLTQ5MGQtYmQ5MS05YjFjZDk2MGY0Y2VAZ3p5ZC5qY25vZGUudG9wOjUyNzAyP3NlY3VyaXR5PXRscyZzbmk9c2cwMy5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTI1Ljg4LjIxMC42Ny0wMjkKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6eWQuamNub2RlLnRvcDoyODQ3ND9zZWN1cml0eT10bHMmc25pPXNnMDEuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTEyNS44OC4yMTAuNjctMDMwCnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4Lmpjbm9kZS50b3A6Mjc4ODA/c2VjdXJpdHk9dGxzJnNuaT1zZzAxLmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuNTYuMjQ3LjIwNi0wMzEKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6ZHgwMS5qY25vZGUudG9wOjQ1OTIwP3NlY3VyaXR5PXRscyZzbmk9c2cwMS5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjU2LjIyOS4yMzYtMDMyCnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4Lmpjbm9kZS50b3A6NTAxNzM/c2VjdXJpdHk9dGxzJnNuaT11czIuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My41Ni4yNDcuMjA2LTAzMwp2bWVzczovL2V3b2dJQ0FnSW1Ga1pDSTZJQ0puZW1SNExtcGpibTlrWlM1MGIzQWlMQW9nSUNBZ0ltRnBaQ0k2SURBc0NpQWdJQ0FpYUc5emRDSTZJQ0puZW1SNExtcGpibTlrWlM1MGIzQWlMQW9nSUNBZ0ltbGtJam9nSW1ZME5ERmhNbUl3TFRNeFpXWXRORGt3WkMxaVpEa3hMVGxpTVdOa09UWXdaalJqWlNJc0NpQWdJQ0FpYm1WMElqb2dJbmR6SWl3S0lDQWdJQ0p3WVhSb0lqb2dJaTltYkhraUxBb2dJQ0FnSW5CdmNuUWlPaUF6TURjeU5Td0tJQ0FnSUNKd2N5STZJQ0x3bjRlbzhKK0hzME5PTFRFNE15NDFOaTR5TkRjdU1qQTJMVEF6TkNJc0NpQWdJQ0FpZEd4eklqb2dJaUlzQ2lBZ0lDQWlkSGx3WlNJNklDSmhkWFJ2SWl3S0lDQWdJQ0p6WldOMWNtbDBlU0k2SUNKaGRYUnZJaXdLSUNBZ0lDSnphMmx3TFdObGNuUXRkbVZ5YVdaNUlqb2dkSEoxWlN3S0lDQWdJQ0p6Ym1raU9pQWlJZ3A5CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4Lmpjbm9kZS50b3A6NjE4MDI/c2VjdXJpdHk9dGxzJnNuaT11czA0LmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuNTYuMjQ3LjIwNi0wMzUKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6eWQuamNub2RlLnRvcDoxMDM0MD9zZWN1cml0eT10bHMmc25pPXVzMDQuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTEyNS44OC4yMTAuNjctMDM2CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4Lmpjbm9kZS50b3A6NDg0Nzk/c2VjdXJpdHk9dGxzJnNuaT1pZDAxLmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuNTYuMjQ3LjIwNi0wMzcKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6eWQuamNub2RlLnRvcDo1NjU4Nj9zZWN1cml0eT10bHMmc25pPWlkMDEuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTEyNS44OC4yMTAuNjctMDM4CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4Lmpjbm9kZS50b3A6NDg0MjY/c2VjdXJpdHk9dGxzJnNuaT1hdXMwMS5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjU2LjI0Ny4yMDYtMDM5CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4Lmpjbm9kZS50b3A6NjI5NTE/c2VjdXJpdHk9dGxzJnNuaT1kZTAxLmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuNTYuMjQ3LjIwNi0wNDAKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6eWQwMi5qY25vZGUudG9wOjIyMTIyP3NlY3VyaXR5PXRscyZzbmk9ZGUwMS5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tNTguMjQ3LjI1NC4xOTEtMDQxCnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4Lmpjbm9kZS50b3A6NTk4MzI/c2VjdXJpdHk9dGxzJnNuaT11azAxLmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuNTYuMjQ3LjIwNi0wNDIKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6eWQwMi5qY25vZGUudG9wOjM2NDAzP3NlY3VyaXR5PXRscyZzbmk9dWswMS5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tNTguMjQ3LjI1NC4xOTEtMDQzCnRyb2phbjovLzA1YmY3MDM3LWEzZDAtM2Q0YS05NmVhLWZjNDc4N2Y3OThlMEBzY2xvdWQxNS5qYWZpeXVuLndvcmxkOjIyMDE1P3NlY3VyaXR5PXRscyZzbmk9c2Nsb3VkMTUuamFmaXl1bi53b3JsZCMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuMjQ5LjIwLjE5Mi0wNDQKdHJvamFuOi8vMDViZjcwMzctYTNkMC0zZDRhLTk2ZWEtZmM0Nzg3Zjc5OGUwQHNjbG91ZDE2LmphZml5dW4ud29ybGQ6MjIwMTY/c2VjdXJpdHk9dGxzJnNuaT1zY2xvdWQxNi5qYWZpeXVuLndvcmxkIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My4yNDkuMjAuMTkyLTA0NQp0cm9qYW46Ly8wNWJmNzAzNy1hM2QwLTNkNGEtOTZlYS1mYzQ3ODdmNzk4ZTBAc2Nsb3VkNDEuamFmaXl1bi53b3JsZDoyMjA0MT9zZWN1cml0eT10bHMmc25pPXNjbG91ZDQxLmphZml5dW4ud29ybGQjJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTIwLjI0MC44Mi42MC0wNDYKdHJvamFuOi8vMDViZjcwMzctYTNkMC0zZDRhLTk2ZWEtZmM0Nzg3Zjc5OGUwQHNjbG91ZDQyLmphZml5dW4ud29ybGQ6MjIwNDI/c2VjdXJpdHk9dGxzJnNuaT1zY2xvdWQ0Mi5qYWZpeXVuLndvcmxkIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTEyMC4yNDAuODIuNjAtMDQ3CnRyb2phbjovLzA1YmY3MDM3LWEzZDAtM2Q0YS05NmVhLWZjNDc4N2Y3OThlMEBzY2xvdWQ0My5qYWZpeXVuLndvcmxkOjIyMDQzP3NlY3VyaXR5PXRscyZzbmk9c2Nsb3VkNDMuamFmaXl1bi53b3JsZCMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xMjAuMjQwLjgyLjYwLTA0OAp0cm9qYW46Ly8wNWJmNzAzNy1hM2QwLTNkNGEtOTZlYS1mYzQ3ODdmNzk4ZTBAc2Nsb3VkNTIuamFmaXl1bi53b3JsZDoyMjA1Mj9zZWN1cml0eT10bHMmc25pPXNjbG91ZDUyLmphZml5dW4ud29ybGQjJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjI0OS4yMC4xOTItMDQ5CnRyb2phbjovLzA1YmY3MDM3LWEzZDAtM2Q0YS05NmVhLWZjNDc4N2Y3OThlMEBzY2xvdWQ1My5qYWZpeXVuLndvcmxkOjIyMDUzP3NlY3VyaXR5PXRscyZzbmk9c2Nsb3VkNTMuamFmaXl1bi53b3JsZCMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuMjQ5LjIwLjE5Mi0wNTAKdHJvamFuOi8vMDViZjcwMzctYTNkMC0zZDRhLTk2ZWEtZmM0Nzg3Zjc5OGUwQHNjbG91ZDU0LmphZml5dW4ud29ybGQ6MjIwNTQ/c2VjdXJpdHk9dGxzJnNuaT1zY2xvdWQ1NC5qYWZpeXVuLndvcmxkIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My4yNDkuMjAuMTkyLTA1MQp0cm9qYW46Ly8wNWJmNzAzNy1hM2QwLTNkNGEtOTZlYS1mYzQ3ODdmNzk4ZTBAc2Nsb3VkNTUuamFmaXl1bi53b3JsZDoyMjA1NT9zZWN1cml0eT10bHMmc25pPXNjbG91ZDU1LmphZml5dW4ud29ybGQjJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTIwLjI0MC44Mi42MC0wNTIKdHJvamFuOi8vMDViZjcwMzctYTNkMC0zZDRhLTk2ZWEtZmM0Nzg3Zjc5OGUwQHNjbG91ZDU2LmphZml5dW4ud29ybGQ6MjIwNTY/c2VjdXJpdHk9dGxzJnNuaT1zY2xvdWQ1Ni5qYWZpeXVuLndvcmxkIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My4yNDkuMjAuMTkyLTA1Mwp0cm9qYW46Ly8wNWJmNzAzNy1hM2QwLTNkNGEtOTZlYS1mYzQ3ODdmNzk4ZTBAc2Nsb3VkNTcuamFmaXl1bi53b3JsZDoyMjA1Nz9zZWN1cml0eT10bHMmc25pPXNjbG91ZDU3LmphZml5dW4ud29ybGQjJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjI0OS4yMC4xOTItMDU0CnRyb2phbjovLzA1YmY3MDM3LWEzZDAtM2Q0YS05NmVhLWZjNDc4N2Y3OThlMEBzY2xvdWQ1OC5qYWZpeXVuLndvcmxkOjIyMDU4P3NlY3VyaXR5PXRscyZzbmk9c2Nsb3VkNTguamFmaXl1bi53b3JsZCMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuMjQ5LjIwLjE5Mi0wNTUKdHJvamFuOi8vMDViZjcwMzctYTNkMC0zZDRhLTk2ZWEtZmM0Nzg3Zjc5OGUwQHNjbG91ZDU5LmphZml5dW4ud29ybGQ6MjIwNTk/c2VjdXJpdHk9dGxzJnNuaT1zY2xvdWQ1OS5qYWZpeXVuLndvcmxkIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My4yNDkuMjAuMTkyLTA1Ngp0cm9qYW46Ly8wNWJmNzAzNy1hM2QwLTNkNGEtOTZlYS1mYzQ3ODdmNzk4ZTBAc2Nsb3VkNjAuamFmaXl1bi53b3JsZDoyMjA2MD9zZWN1cml0eT10bHMmc25pPXNjbG91ZDYwLmphZml5dW4ud29ybGQjJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjI0OS4yMC4xOTItMDU3CnRyb2phbjovLzA1YmY3MDM3LWEzZDAtM2Q0YS05NmVhLWZjNDc4N2Y3OThlMEBzY2xvdWQ0NC5qYWZpeXVuLmx0ZDoyMjA0ND9zZWN1cml0eT10bHMmc25pPXNjbG91ZDQ0LmphZml5dW4ubHRkIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My4yNDkuMjAuMTkyLTA1OAp0cm9qYW46Ly8wNWJmNzAzNy1hM2QwLTNkNGEtOTZlYS1mYzQ3ODdmNzk4ZTBAc2Nsb3VkNDUuamFmaXl1bi53b3JsZDoyMjA0NT9zZWN1cml0eT10bHMmc25pPXNjbG91ZDQ1LmphZml5dW4ud29ybGQjJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjI0OS4yMC4xOTItMDU5CnRyb2phbjovLzA1YmY3MDM3LWEzZDAtM2Q0YS05NmVhLWZjNDc4N2Y3OThlMEBzY2xvdWQ0Ny5qYWZpeXVuLndvcmxkOjIyMDQ3P3NlY3VyaXR5PXRscyZzbmk9c2Nsb3VkNDcuamFmaXl1bi53b3JsZCMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xMjAuMjQwLjgyLjYwLTA2MAp0cm9qYW46Ly8wNWJmNzAzNy1hM2QwLTNkNGEtOTZlYS1mYzQ3ODdmNzk4ZTBAc2Nsb3VkNTAuamFmaXl1bi5sdGQ6MjIwNTA/c2VjdXJpdHk9dGxzJnNuaT1zY2xvdWQ1MC5qYWZpeXVuLmx0ZCMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xMjAuMjQwLjgyLjYwLTA2MQ== -------------------------------------------------------------------------------- /EternityAir.txt: -------------------------------------------------------------------------------- 1 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:29482?security=tls&sni=sg03.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-000 2 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:39191?security=tls&sni=vn01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-001 3 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx01.jcnode.top:43686?security=tls&sni=vn01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.229.236-002 4 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:47020?security=tls&sni=vn01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-003 5 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:42630?security=tls&sni=hk05.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-004 6 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx01.jcnode.top:19682?security=tls&sni=hk05.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.229.236-005 7 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:38624?security=tls&sni=hk05.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-006 8 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:41063?security=tls&sni=hk04.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-007 9 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx01.jcnode.top:32631?security=tls&sni=hk04.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.229.236-008 10 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:13734?security=tls&sni=hk04.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-009 11 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:41032?security=tls&sni=hk03.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-010 12 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx01.jcnode.top:62525?security=tls&sni=hk03.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.229.236-011 13 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:64328?security=tls&sni=hk03.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-012 14 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:44283?security=tls&sni=hk02.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-013 15 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx01.jcnode.top:40027?security=tls&sni=hk02.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.229.236-014 16 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:36554?security=tls&sni=hk02.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-015 17 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:19390?security=tls&sni=jp01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-016 18 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx01.jcnode.top:40716?security=tls&sni=jp01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.229.236-017 19 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:27897?security=tls&sni=jp01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-018 20 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:17217?security=tls&sni=jp03.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-019 21 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:51840?security=tls&sni=jp03.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-020 22 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:47492?security=tls&sni=rctw01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-021 23 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx01.jcnode.top:28606?security=tls&sni=rctw01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.229.236-022 24 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:29679?security=tls&sni=rctw01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-023 25 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:16614?security=tls&sni=rctw02.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-024 26 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx01.jcnode.top:28033?security=tls&sni=rctw02.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.229.236-025 27 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:53826?security=tls&sni=rctw02.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-026 28 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx01.jcnode.top:34472?security=tls&sni=sg03.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.229.236-028 29 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:52702?security=tls&sni=sg03.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-029 30 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:28474?security=tls&sni=sg01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-030 31 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:27880?security=tls&sni=sg01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-031 32 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx01.jcnode.top:45920?security=tls&sni=sg01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.229.236-032 33 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:50173?security=tls&sni=us2.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-033 34 | vmess://ewogICAgImFkZCI6ICJnemR4Lmpjbm9kZS50b3AiLAogICAgImFpZCI6IDAsCiAgICAiaG9zdCI6ICJnemR4Lmpjbm9kZS50b3AiLAogICAgImlkIjogImY0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZSIsCiAgICAibmV0IjogIndzIiwKICAgICJwYXRoIjogIi9mbHkiLAogICAgInBvcnQiOiAzMDcyNSwKICAgICJwcyI6ICLwn4eo8J+Hs0NOLTE4My41Ni4yNDcuMjA2LTAzNCIsCiAgICAidGxzIjogIiIsCiAgICAidHlwZSI6ICJhdXRvIiwKICAgICJzZWN1cml0eSI6ICJhdXRvIiwKICAgICJza2lwLWNlcnQtdmVyaWZ5IjogdHJ1ZSwKICAgICJzbmkiOiAiIgp9 35 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:61802?security=tls&sni=us04.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-035 36 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:10340?security=tls&sni=us04.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-036 37 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:48479?security=tls&sni=id01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-037 38 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:56586?security=tls&sni=id01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-038 39 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:48426?security=tls&sni=aus01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-039 40 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:62951?security=tls&sni=de01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-040 41 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd02.jcnode.top:22122?security=tls&sni=de01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-58.247.254.191-041 42 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:59832?security=tls&sni=uk01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-042 43 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd02.jcnode.top:36403?security=tls&sni=uk01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-58.247.254.191-043 44 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud15.jafiyun.world:22015?security=tls&sni=scloud15.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-044 45 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud16.jafiyun.world:22016?security=tls&sni=scloud16.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-045 46 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud41.jafiyun.world:22041?security=tls&sni=scloud41.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-120.240.82.60-046 47 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud42.jafiyun.world:22042?security=tls&sni=scloud42.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-120.240.82.60-047 48 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud43.jafiyun.world:22043?security=tls&sni=scloud43.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-120.240.82.60-048 49 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud52.jafiyun.world:22052?security=tls&sni=scloud52.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-049 50 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud53.jafiyun.world:22053?security=tls&sni=scloud53.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-050 51 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud54.jafiyun.world:22054?security=tls&sni=scloud54.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-051 52 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud55.jafiyun.world:22055?security=tls&sni=scloud55.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-120.240.82.60-052 53 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud56.jafiyun.world:22056?security=tls&sni=scloud56.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-053 54 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud57.jafiyun.world:22057?security=tls&sni=scloud57.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-054 55 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud58.jafiyun.world:22058?security=tls&sni=scloud58.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-055 56 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud59.jafiyun.world:22059?security=tls&sni=scloud59.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-056 57 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud60.jafiyun.world:22060?security=tls&sni=scloud60.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-057 58 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud44.jafiyun.ltd:22044?security=tls&sni=scloud44.jafiyun.ltd#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-058 59 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud45.jafiyun.world:22045?security=tls&sni=scloud45.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-059 60 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud47.jafiyun.world:22047?security=tls&sni=scloud47.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-120.240.82.60-060 61 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud50.jafiyun.ltd:22050?security=tls&sni=scloud50.jafiyun.ltd#%F0%9F%87%A8%F0%9F%87%B3CN-120.240.82.60-061 -------------------------------------------------------------------------------- /EternityAir.yml: -------------------------------------------------------------------------------- 1 | port: 7890 2 | socks-port: 7891 3 | allow-lan: false 4 | mode: rule 5 | log-level: info 6 | external-controller: 127.0.0.1:9090 7 | dns: 8 | enable: true 9 | ipv6: false 10 | enhanced-mode: fake-ip 11 | nameserver: 12 | - 114.114.114.114 13 | - 223.5.5.5 14 | - 8.8.8.8 15 | - 9.9.9.9 16 | - 1.1.1.1 17 | - https://dns.google/dns-query 18 | - tls://dns.google:853 19 | proxies: 20 | - null 21 | proxy-groups: 22 | - name: Global ©️ 23 | type: select 24 | proxies: 25 | - Global - UrlTest(Tiers) 🥶 26 | - Global - Fallback(Tiers) 🌎 27 | - Global - LoadBalance(ch) 🦄 28 | - Global - LoadBalance(rr) 🍄 29 | - Tier 1 🚀 30 | - Tier 2 ⚡️ 31 | - Tier 3 💎 32 | - Tier 4 🗿 33 | - name: Global - UrlTest(Tiers) 🥶 34 | type: url-test 35 | url: http://clients3.google.com/generate_204 36 | interval: 300 37 | proxies: 38 | - Tier 1 🚀 39 | - Tier 2 ⚡️ 40 | - Tier 3 💎 41 | - Tier 4 🗿 42 | - name: Global - Fallback(Tiers) 🌎 43 | type: fallback 44 | url: http://clients3.google.com/generate_204 45 | interval: 300 46 | proxies: 47 | - Tier 1 🚀 48 | - Tier 2 ⚡️ 49 | - Tier 3 💎 50 | - Tier 4 🗿 51 | - name: Global - LoadBalance(ch) 🦄 52 | type: load-balance 53 | strategy: consistent-hashing 54 | url: http://clients3.google.com/generate_204 55 | interval: 300 56 | proxies: 57 | - Tier 1 🚀 58 | - Tier 2 ⚡️ 59 | - Tier 3 💎 60 | - Tier 4 🗿 61 | - name: Global - LoadBalance(rr) 🍄 62 | type: load-balance 63 | strategy: round-robin 64 | url: http://clients3.google.com/generate_204 65 | interval: 300 66 | proxies: 67 | - Tier 1 🚀 68 | - Tier 2 ⚡️ 69 | - Tier 3 💎 70 | - Tier 4 🗿 71 | - name: Tier 1 🚀 72 | type: url-test 73 | url: http://clients3.google.com/generate_204 74 | interval: 300 75 | tolerance: 100 76 | proxies: [] 77 | - name: Tier 2 ⚡️ 78 | type: url-test 79 | url: http://clients3.google.com/generate_204 80 | interval: 300 81 | tolerance: 100 82 | proxies: [] 83 | - name: Tier 3 💎 84 | type: url-test 85 | url: http://clients3.google.com/generate_204 86 | interval: 300 87 | tolerance: 100 88 | proxies: [] 89 | - name: Tier 4 🗿 90 | type: url-test 91 | url: http://clients3.google.com/generate_204 92 | interval: 300 93 | tolerance: 100 94 | proxies: 95 | - DIRECT 96 | rules: 97 | - MATCH,Global ©️ 98 | -------------------------------------------------------------------------------- /sub/airport_merge_base64.txt: -------------------------------------------------------------------------------- 1 | dHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6ZHguamNub2RlLnRvcDoyOTQ4Mj9zZWN1cml0eT10bHMmc25pPXNnMDMuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My41Ni4yNDcuMjA2LTAwMAp0cm9qYW46Ly9mNDQxYTJiMC0zMWVmLTQ5MGQtYmQ5MS05YjFjZDk2MGY0Y2VAZ3pkeC5qY25vZGUudG9wOjM5MTkxP3NlY3VyaXR5PXRscyZzbmk9dm4wMS5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjU2LjI0Ny4yMDYtMDAxCnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4MDEuamNub2RlLnRvcDo0MzY4Nj9zZWN1cml0eT10bHMmc25pPXZuMDEuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My41Ni4yMjkuMjM2LTAwMgp0cm9qYW46Ly9mNDQxYTJiMC0zMWVmLTQ5MGQtYmQ5MS05YjFjZDk2MGY0Y2VAZ3p5ZC5qY25vZGUudG9wOjQ3MDIwP3NlY3VyaXR5PXRscyZzbmk9dm4wMS5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTI1Ljg4LjIxMC42Ny0wMDMKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6ZHguamNub2RlLnRvcDo0MjYzMD9zZWN1cml0eT10bHMmc25pPWhrMDUuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My41Ni4yNDcuMjA2LTAwNAp0cm9qYW46Ly9mNDQxYTJiMC0zMWVmLTQ5MGQtYmQ5MS05YjFjZDk2MGY0Y2VAZ3pkeDAxLmpjbm9kZS50b3A6MTk2ODI/c2VjdXJpdHk9dGxzJnNuaT1oazA1LmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuNTYuMjI5LjIzNi0wMDUKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6eWQuamNub2RlLnRvcDozODYyND9zZWN1cml0eT10bHMmc25pPWhrMDUuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTEyNS44OC4yMTAuNjctMDA2CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4Lmpjbm9kZS50b3A6NDEwNjM/c2VjdXJpdHk9dGxzJnNuaT1oazA0LmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuNTYuMjQ3LjIwNi0wMDcKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6ZHgwMS5qY25vZGUudG9wOjMyNjMxP3NlY3VyaXR5PXRscyZzbmk9aGswNC5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjU2LjIyOS4yMzYtMDA4CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnenlkLmpjbm9kZS50b3A6MTM3MzQ/c2VjdXJpdHk9dGxzJnNuaT1oazA0LmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xMjUuODguMjEwLjY3LTAwOQp0cm9qYW46Ly9mNDQxYTJiMC0zMWVmLTQ5MGQtYmQ5MS05YjFjZDk2MGY0Y2VAZ3pkeC5qY25vZGUudG9wOjQxMDMyP3NlY3VyaXR5PXRscyZzbmk9aGswMy5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjU2LjI0Ny4yMDYtMDEwCnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4MDEuamNub2RlLnRvcDo2MjUyNT9zZWN1cml0eT10bHMmc25pPWhrMDMuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My41Ni4yMjkuMjM2LTAxMQp0cm9qYW46Ly9mNDQxYTJiMC0zMWVmLTQ5MGQtYmQ5MS05YjFjZDk2MGY0Y2VAZ3p5ZC5qY25vZGUudG9wOjY0MzI4P3NlY3VyaXR5PXRscyZzbmk9aGswMy5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTI1Ljg4LjIxMC42Ny0wMTIKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6ZHguamNub2RlLnRvcDo0NDI4Mz9zZWN1cml0eT10bHMmc25pPWhrMDIuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My41Ni4yNDcuMjA2LTAxMwp0cm9qYW46Ly9mNDQxYTJiMC0zMWVmLTQ5MGQtYmQ5MS05YjFjZDk2MGY0Y2VAZ3pkeDAxLmpjbm9kZS50b3A6NDAwMjc/c2VjdXJpdHk9dGxzJnNuaT1oazAyLmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuNTYuMjI5LjIzNi0wMTQKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6eWQuamNub2RlLnRvcDozNjU1ND9zZWN1cml0eT10bHMmc25pPWhrMDIuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTEyNS44OC4yMTAuNjctMDE1CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4Lmpjbm9kZS50b3A6MTkzOTA/c2VjdXJpdHk9dGxzJnNuaT1qcDAxLmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuNTYuMjQ3LjIwNi0wMTYKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6ZHgwMS5qY25vZGUudG9wOjQwNzE2P3NlY3VyaXR5PXRscyZzbmk9anAwMS5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjU2LjIyOS4yMzYtMDE3CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnenlkLmpjbm9kZS50b3A6Mjc4OTc/c2VjdXJpdHk9dGxzJnNuaT1qcDAxLmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xMjUuODguMjEwLjY3LTAxOAp0cm9qYW46Ly9mNDQxYTJiMC0zMWVmLTQ5MGQtYmQ5MS05YjFjZDk2MGY0Y2VAZ3pkeC5qY25vZGUudG9wOjE3MjE3P3NlY3VyaXR5PXRscyZzbmk9anAwMy5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjU2LjI0Ny4yMDYtMDE5CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnenlkLmpjbm9kZS50b3A6NTE4NDA/c2VjdXJpdHk9dGxzJnNuaT1qcDAzLmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xMjUuODguMjEwLjY3LTAyMAp0cm9qYW46Ly9mNDQxYTJiMC0zMWVmLTQ5MGQtYmQ5MS05YjFjZDk2MGY0Y2VAZ3pkeC5qY25vZGUudG9wOjQ3NDkyP3NlY3VyaXR5PXRscyZzbmk9cmN0dzAxLmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuNTYuMjQ3LjIwNi0wMjEKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6ZHgwMS5qY25vZGUudG9wOjI4NjA2P3NlY3VyaXR5PXRscyZzbmk9cmN0dzAxLmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuNTYuMjI5LjIzNi0wMjIKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6eWQuamNub2RlLnRvcDoyOTY3OT9zZWN1cml0eT10bHMmc25pPXJjdHcwMS5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTI1Ljg4LjIxMC42Ny0wMjMKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6ZHguamNub2RlLnRvcDoxNjYxND9zZWN1cml0eT10bHMmc25pPXJjdHcwMi5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjU2LjI0Ny4yMDYtMDI0CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4MDEuamNub2RlLnRvcDoyODAzMz9zZWN1cml0eT10bHMmc25pPXJjdHcwMi5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjU2LjIyOS4yMzYtMDI1CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnenlkLmpjbm9kZS50b3A6NTM4MjY/c2VjdXJpdHk9dGxzJnNuaT1yY3R3MDIuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTEyNS44OC4yMTAuNjctMDI2CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4MDEuamNub2RlLnRvcDozNDQ3Mj9zZWN1cml0eT10bHMmc25pPXNnMDMuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My41Ni4yMjkuMjM2LTAyOAp0cm9qYW46Ly9mNDQxYTJiMC0zMWVmLTQ5MGQtYmQ5MS05YjFjZDk2MGY0Y2VAZ3p5ZC5qY25vZGUudG9wOjUyNzAyP3NlY3VyaXR5PXRscyZzbmk9c2cwMy5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTI1Ljg4LjIxMC42Ny0wMjkKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6eWQuamNub2RlLnRvcDoyODQ3ND9zZWN1cml0eT10bHMmc25pPXNnMDEuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTEyNS44OC4yMTAuNjctMDMwCnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4Lmpjbm9kZS50b3A6Mjc4ODA/c2VjdXJpdHk9dGxzJnNuaT1zZzAxLmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuNTYuMjQ3LjIwNi0wMzEKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6ZHgwMS5qY25vZGUudG9wOjQ1OTIwP3NlY3VyaXR5PXRscyZzbmk9c2cwMS5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjU2LjIyOS4yMzYtMDMyCnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4Lmpjbm9kZS50b3A6NTAxNzM/c2VjdXJpdHk9dGxzJnNuaT11czIuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My41Ni4yNDcuMjA2LTAzMwp2bWVzczovL2V3b2dJQ0FnSW1Ga1pDSTZJQ0puZW1SNExtcGpibTlrWlM1MGIzQWlMQW9nSUNBZ0ltRnBaQ0k2SURBc0NpQWdJQ0FpYUc5emRDSTZJQ0puZW1SNExtcGpibTlrWlM1MGIzQWlMQW9nSUNBZ0ltbGtJam9nSW1ZME5ERmhNbUl3TFRNeFpXWXRORGt3WkMxaVpEa3hMVGxpTVdOa09UWXdaalJqWlNJc0NpQWdJQ0FpYm1WMElqb2dJbmR6SWl3S0lDQWdJQ0p3WVhSb0lqb2dJaTltYkhraUxBb2dJQ0FnSW5CdmNuUWlPaUF6TURjeU5Td0tJQ0FnSUNKd2N5STZJQ0x3bjRlbzhKK0hzME5PTFRFNE15NDFOaTR5TkRjdU1qQTJMVEF6TkNJc0NpQWdJQ0FpZEd4eklqb2dJaUlzQ2lBZ0lDQWlkSGx3WlNJNklDSmhkWFJ2SWl3S0lDQWdJQ0p6WldOMWNtbDBlU0k2SUNKaGRYUnZJaXdLSUNBZ0lDSnphMmx3TFdObGNuUXRkbVZ5YVdaNUlqb2dkSEoxWlN3S0lDQWdJQ0p6Ym1raU9pQWlJZ3A5CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4Lmpjbm9kZS50b3A6NjE4MDI/c2VjdXJpdHk9dGxzJnNuaT11czA0LmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuNTYuMjQ3LjIwNi0wMzUKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6eWQuamNub2RlLnRvcDoxMDM0MD9zZWN1cml0eT10bHMmc25pPXVzMDQuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTEyNS44OC4yMTAuNjctMDM2CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4Lmpjbm9kZS50b3A6NDg0Nzk/c2VjdXJpdHk9dGxzJnNuaT1pZDAxLmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuNTYuMjQ3LjIwNi0wMzcKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6eWQuamNub2RlLnRvcDo1NjU4Nj9zZWN1cml0eT10bHMmc25pPWlkMDEuY2tjbG91ZC5pbmZvIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTEyNS44OC4yMTAuNjctMDM4CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4Lmpjbm9kZS50b3A6NDg0MjY/c2VjdXJpdHk9dGxzJnNuaT1hdXMwMS5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjU2LjI0Ny4yMDYtMDM5CnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4Lmpjbm9kZS50b3A6NjI5NTE/c2VjdXJpdHk9dGxzJnNuaT1kZTAxLmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuNTYuMjQ3LjIwNi0wNDAKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6eWQwMi5qY25vZGUudG9wOjIyMTIyP3NlY3VyaXR5PXRscyZzbmk9ZGUwMS5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tNTguMjQ3LjI1NC4xOTEtMDQxCnRyb2phbjovL2Y0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZUBnemR4Lmpjbm9kZS50b3A6NTk4MzI/c2VjdXJpdHk9dGxzJnNuaT11azAxLmNrY2xvdWQuaW5mbyMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuNTYuMjQ3LjIwNi0wNDIKdHJvamFuOi8vZjQ0MWEyYjAtMzFlZi00OTBkLWJkOTEtOWIxY2Q5NjBmNGNlQGd6eWQwMi5qY25vZGUudG9wOjM2NDAzP3NlY3VyaXR5PXRscyZzbmk9dWswMS5ja2Nsb3VkLmluZm8jJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tNTguMjQ3LjI1NC4xOTEtMDQzCnRyb2phbjovLzA1YmY3MDM3LWEzZDAtM2Q0YS05NmVhLWZjNDc4N2Y3OThlMEBzY2xvdWQxNS5qYWZpeXVuLndvcmxkOjIyMDE1P3NlY3VyaXR5PXRscyZzbmk9c2Nsb3VkMTUuamFmaXl1bi53b3JsZCMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuMjQ5LjIwLjE5Mi0wNDQKdHJvamFuOi8vMDViZjcwMzctYTNkMC0zZDRhLTk2ZWEtZmM0Nzg3Zjc5OGUwQHNjbG91ZDE2LmphZml5dW4ud29ybGQ6MjIwMTY/c2VjdXJpdHk9dGxzJnNuaT1zY2xvdWQxNi5qYWZpeXVuLndvcmxkIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My4yNDkuMjAuMTkyLTA0NQp0cm9qYW46Ly8wNWJmNzAzNy1hM2QwLTNkNGEtOTZlYS1mYzQ3ODdmNzk4ZTBAc2Nsb3VkNDEuamFmaXl1bi53b3JsZDoyMjA0MT9zZWN1cml0eT10bHMmc25pPXNjbG91ZDQxLmphZml5dW4ud29ybGQjJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTIwLjI0MC44Mi42MC0wNDYKdHJvamFuOi8vMDViZjcwMzctYTNkMC0zZDRhLTk2ZWEtZmM0Nzg3Zjc5OGUwQHNjbG91ZDQyLmphZml5dW4ud29ybGQ6MjIwNDI/c2VjdXJpdHk9dGxzJnNuaT1zY2xvdWQ0Mi5qYWZpeXVuLndvcmxkIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTEyMC4yNDAuODIuNjAtMDQ3CnRyb2phbjovLzA1YmY3MDM3LWEzZDAtM2Q0YS05NmVhLWZjNDc4N2Y3OThlMEBzY2xvdWQ0My5qYWZpeXVuLndvcmxkOjIyMDQzP3NlY3VyaXR5PXRscyZzbmk9c2Nsb3VkNDMuamFmaXl1bi53b3JsZCMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xMjAuMjQwLjgyLjYwLTA0OAp0cm9qYW46Ly8wNWJmNzAzNy1hM2QwLTNkNGEtOTZlYS1mYzQ3ODdmNzk4ZTBAc2Nsb3VkNTIuamFmaXl1bi53b3JsZDoyMjA1Mj9zZWN1cml0eT10bHMmc25pPXNjbG91ZDUyLmphZml5dW4ud29ybGQjJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjI0OS4yMC4xOTItMDQ5CnRyb2phbjovLzA1YmY3MDM3LWEzZDAtM2Q0YS05NmVhLWZjNDc4N2Y3OThlMEBzY2xvdWQ1My5qYWZpeXVuLndvcmxkOjIyMDUzP3NlY3VyaXR5PXRscyZzbmk9c2Nsb3VkNTMuamFmaXl1bi53b3JsZCMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuMjQ5LjIwLjE5Mi0wNTAKdHJvamFuOi8vMDViZjcwMzctYTNkMC0zZDRhLTk2ZWEtZmM0Nzg3Zjc5OGUwQHNjbG91ZDU0LmphZml5dW4ud29ybGQ6MjIwNTQ/c2VjdXJpdHk9dGxzJnNuaT1zY2xvdWQ1NC5qYWZpeXVuLndvcmxkIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My4yNDkuMjAuMTkyLTA1MQp0cm9qYW46Ly8wNWJmNzAzNy1hM2QwLTNkNGEtOTZlYS1mYzQ3ODdmNzk4ZTBAc2Nsb3VkNTUuamFmaXl1bi53b3JsZDoyMjA1NT9zZWN1cml0eT10bHMmc25pPXNjbG91ZDU1LmphZml5dW4ud29ybGQjJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTIwLjI0MC44Mi42MC0wNTIKdHJvamFuOi8vMDViZjcwMzctYTNkMC0zZDRhLTk2ZWEtZmM0Nzg3Zjc5OGUwQHNjbG91ZDU2LmphZml5dW4ud29ybGQ6MjIwNTY/c2VjdXJpdHk9dGxzJnNuaT1zY2xvdWQ1Ni5qYWZpeXVuLndvcmxkIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My4yNDkuMjAuMTkyLTA1Mwp0cm9qYW46Ly8wNWJmNzAzNy1hM2QwLTNkNGEtOTZlYS1mYzQ3ODdmNzk4ZTBAc2Nsb3VkNTcuamFmaXl1bi53b3JsZDoyMjA1Nz9zZWN1cml0eT10bHMmc25pPXNjbG91ZDU3LmphZml5dW4ud29ybGQjJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjI0OS4yMC4xOTItMDU0CnRyb2phbjovLzA1YmY3MDM3LWEzZDAtM2Q0YS05NmVhLWZjNDc4N2Y3OThlMEBzY2xvdWQ1OC5qYWZpeXVuLndvcmxkOjIyMDU4P3NlY3VyaXR5PXRscyZzbmk9c2Nsb3VkNTguamFmaXl1bi53b3JsZCMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xODMuMjQ5LjIwLjE5Mi0wNTUKdHJvamFuOi8vMDViZjcwMzctYTNkMC0zZDRhLTk2ZWEtZmM0Nzg3Zjc5OGUwQHNjbG91ZDU5LmphZml5dW4ud29ybGQ6MjIwNTk/c2VjdXJpdHk9dGxzJnNuaT1zY2xvdWQ1OS5qYWZpeXVuLndvcmxkIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My4yNDkuMjAuMTkyLTA1Ngp0cm9qYW46Ly8wNWJmNzAzNy1hM2QwLTNkNGEtOTZlYS1mYzQ3ODdmNzk4ZTBAc2Nsb3VkNjAuamFmaXl1bi53b3JsZDoyMjA2MD9zZWN1cml0eT10bHMmc25pPXNjbG91ZDYwLmphZml5dW4ud29ybGQjJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjI0OS4yMC4xOTItMDU3CnRyb2phbjovLzA1YmY3MDM3LWEzZDAtM2Q0YS05NmVhLWZjNDc4N2Y3OThlMEBzY2xvdWQ0NC5qYWZpeXVuLmx0ZDoyMjA0ND9zZWN1cml0eT10bHMmc25pPXNjbG91ZDQ0LmphZml5dW4ubHRkIyVGMCU5RiU4NyVBOCVGMCU5RiU4NyVCM0NOLTE4My4yNDkuMjAuMTkyLTA1OAp0cm9qYW46Ly8wNWJmNzAzNy1hM2QwLTNkNGEtOTZlYS1mYzQ3ODdmNzk4ZTBAc2Nsb3VkNDUuamFmaXl1bi53b3JsZDoyMjA0NT9zZWN1cml0eT10bHMmc25pPXNjbG91ZDQ1LmphZml5dW4ud29ybGQjJUYwJTlGJTg3JUE4JUYwJTlGJTg3JUIzQ04tMTgzLjI0OS4yMC4xOTItMDU5CnRyb2phbjovLzA1YmY3MDM3LWEzZDAtM2Q0YS05NmVhLWZjNDc4N2Y3OThlMEBzY2xvdWQ0Ny5qYWZpeXVuLndvcmxkOjIyMDQ3P3NlY3VyaXR5PXRscyZzbmk9c2Nsb3VkNDcuamFmaXl1bi53b3JsZCMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xMjAuMjQwLjgyLjYwLTA2MAp0cm9qYW46Ly8wNWJmNzAzNy1hM2QwLTNkNGEtOTZlYS1mYzQ3ODdmNzk4ZTBAc2Nsb3VkNTAuamFmaXl1bi5sdGQ6MjIwNTA/c2VjdXJpdHk9dGxzJnNuaT1zY2xvdWQ1MC5qYWZpeXVuLmx0ZCMlRjAlOUYlODclQTglRjAlOUYlODclQjNDTi0xMjAuMjQwLjgyLjYwLTA2MQ== -------------------------------------------------------------------------------- /sub/airport_merge_yaml.yml: -------------------------------------------------------------------------------- 1 | proxies: 2 | -------------------------------------------------------------------------------- /sub/airport_sub_merge.txt: -------------------------------------------------------------------------------- 1 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:29482?security=tls&sni=sg03.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-000 2 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:39191?security=tls&sni=vn01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-001 3 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx01.jcnode.top:43686?security=tls&sni=vn01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.229.236-002 4 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:47020?security=tls&sni=vn01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-003 5 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:42630?security=tls&sni=hk05.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-004 6 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx01.jcnode.top:19682?security=tls&sni=hk05.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.229.236-005 7 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:38624?security=tls&sni=hk05.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-006 8 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:41063?security=tls&sni=hk04.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-007 9 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx01.jcnode.top:32631?security=tls&sni=hk04.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.229.236-008 10 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:13734?security=tls&sni=hk04.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-009 11 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:41032?security=tls&sni=hk03.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-010 12 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx01.jcnode.top:62525?security=tls&sni=hk03.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.229.236-011 13 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:64328?security=tls&sni=hk03.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-012 14 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:44283?security=tls&sni=hk02.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-013 15 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx01.jcnode.top:40027?security=tls&sni=hk02.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.229.236-014 16 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:36554?security=tls&sni=hk02.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-015 17 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:19390?security=tls&sni=jp01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-016 18 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx01.jcnode.top:40716?security=tls&sni=jp01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.229.236-017 19 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:27897?security=tls&sni=jp01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-018 20 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:17217?security=tls&sni=jp03.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-019 21 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:51840?security=tls&sni=jp03.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-020 22 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:47492?security=tls&sni=rctw01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-021 23 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx01.jcnode.top:28606?security=tls&sni=rctw01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.229.236-022 24 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:29679?security=tls&sni=rctw01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-023 25 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:16614?security=tls&sni=rctw02.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-024 26 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx01.jcnode.top:28033?security=tls&sni=rctw02.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.229.236-025 27 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:53826?security=tls&sni=rctw02.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-026 28 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx01.jcnode.top:34472?security=tls&sni=sg03.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.229.236-028 29 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:52702?security=tls&sni=sg03.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-029 30 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:28474?security=tls&sni=sg01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-030 31 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:27880?security=tls&sni=sg01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-031 32 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx01.jcnode.top:45920?security=tls&sni=sg01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.229.236-032 33 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:50173?security=tls&sni=us2.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-033 34 | vmess://ewogICAgImFkZCI6ICJnemR4Lmpjbm9kZS50b3AiLAogICAgImFpZCI6IDAsCiAgICAiaG9zdCI6ICJnemR4Lmpjbm9kZS50b3AiLAogICAgImlkIjogImY0NDFhMmIwLTMxZWYtNDkwZC1iZDkxLTliMWNkOTYwZjRjZSIsCiAgICAibmV0IjogIndzIiwKICAgICJwYXRoIjogIi9mbHkiLAogICAgInBvcnQiOiAzMDcyNSwKICAgICJwcyI6ICLwn4eo8J+Hs0NOLTE4My41Ni4yNDcuMjA2LTAzNCIsCiAgICAidGxzIjogIiIsCiAgICAidHlwZSI6ICJhdXRvIiwKICAgICJzZWN1cml0eSI6ICJhdXRvIiwKICAgICJza2lwLWNlcnQtdmVyaWZ5IjogdHJ1ZSwKICAgICJzbmkiOiAiIgp9 35 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:61802?security=tls&sni=us04.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-035 36 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:10340?security=tls&sni=us04.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-036 37 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:48479?security=tls&sni=id01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-037 38 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd.jcnode.top:56586?security=tls&sni=id01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-125.88.210.67-038 39 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:48426?security=tls&sni=aus01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-039 40 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:62951?security=tls&sni=de01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-040 41 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd02.jcnode.top:22122?security=tls&sni=de01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-58.247.254.191-041 42 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzdx.jcnode.top:59832?security=tls&sni=uk01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-183.56.247.206-042 43 | trojan://f441a2b0-31ef-490d-bd91-9b1cd960f4ce@gzyd02.jcnode.top:36403?security=tls&sni=uk01.ckcloud.info#%F0%9F%87%A8%F0%9F%87%B3CN-58.247.254.191-043 44 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud15.jafiyun.world:22015?security=tls&sni=scloud15.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-044 45 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud16.jafiyun.world:22016?security=tls&sni=scloud16.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-045 46 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud41.jafiyun.world:22041?security=tls&sni=scloud41.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-120.240.82.60-046 47 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud42.jafiyun.world:22042?security=tls&sni=scloud42.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-120.240.82.60-047 48 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud43.jafiyun.world:22043?security=tls&sni=scloud43.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-120.240.82.60-048 49 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud52.jafiyun.world:22052?security=tls&sni=scloud52.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-049 50 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud53.jafiyun.world:22053?security=tls&sni=scloud53.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-050 51 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud54.jafiyun.world:22054?security=tls&sni=scloud54.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-051 52 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud55.jafiyun.world:22055?security=tls&sni=scloud55.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-120.240.82.60-052 53 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud56.jafiyun.world:22056?security=tls&sni=scloud56.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-053 54 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud57.jafiyun.world:22057?security=tls&sni=scloud57.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-054 55 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud58.jafiyun.world:22058?security=tls&sni=scloud58.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-055 56 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud59.jafiyun.world:22059?security=tls&sni=scloud59.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-056 57 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud60.jafiyun.world:22060?security=tls&sni=scloud60.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-057 58 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud44.jafiyun.ltd:22044?security=tls&sni=scloud44.jafiyun.ltd#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-058 59 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud45.jafiyun.world:22045?security=tls&sni=scloud45.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-183.249.20.192-059 60 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud47.jafiyun.world:22047?security=tls&sni=scloud47.jafiyun.world#%F0%9F%87%A8%F0%9F%87%B3CN-120.240.82.60-060 61 | trojan://05bf7037-a3d0-3d4a-96ea-fc4787f798e0@scloud50.jafiyun.ltd:22050?security=tls&sni=scloud50.jafiyun.ltd#%F0%9F%87%A8%F0%9F%87%B3CN-120.240.82.60-061 -------------------------------------------------------------------------------- /sub/list/01.txt: -------------------------------------------------------------------------------- 1 | - {name: 🇺🇸 _US_美国_1, server: 104.21.69.44, port: 443, type: trojan, password: qj1Dz1CJmFQRhWr1SP80aA, sni: cdn-21.gsmxreality.com, skip-cert-verify: false, network: grpc, grpc-opts: {grpc-service-name: 443trojan}} 2 | - {name: 🇺🇸 _US_美国_2, server: 104.24.197.20, port: 2096, type: vmess, uuid: 5dc153a1-67e5-44a7-9684-4a41ef180c9d, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /}} 3 | - {name: 🇺🇸 _US_美国_3, server: 104.17.247.203, port: 2096, type: vmess, uuid: 5dc153a1-67e5-44a7-9684-4a41ef180c9d, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /}} 4 | - {name: 🇺🇸 _US_美国_4, server: 23.154.136.2, port: 443, type: vmess, uuid: 03fcc618-b93d-6796-6aed-8a38c975d581, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /linkvws}} 5 | - {name: 🇺🇸 _US_美国_5, server: 172.67.243.40, port: 8880, type: vmess, uuid: c74c2fd1-7e5b-4c20-be9f-f3c3b7fd6248, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /video/bYdJ7Vc2We}} 6 | - {name: 🇺🇸 _US_美国_6, server: cfcdn1.sanfencdn9.com, port: 8880, type: vmess, uuid: c74c2fd1-7e5b-4c20-be9f-f3c3b7fd6248, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /video/bYdJ7Vc2We, headers: {Host: cfcdn1.sanfencdn9.com}}} 7 | - {name: 🇺🇸 _US_美国_7, server: 172.67.204.84, port: 443, type: trojan, password: qj1Dz1CJmFQRhWr1SP80aA, sni: cdn-21.gsmxreality.com, skip-cert-verify: false, network: grpc, grpc-opts: {grpc-service-name: 443trojan}} 8 | - {name: 🇺🇸 _US_美国_8, server: russia.com, port: 8880, type: vmess, uuid: 64a57b5f-45e0-40c3-8316-97d0ff53fd96, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /api/v3/download.getFile, headers: {Host: russia.com}}} 9 | - {name: 🇺🇸 _US_美国->🇮🇳_IN_印度, server: hk.wish.ml, port: 2052, type: vmess, uuid: c286daa2-59de-455c-8de8-ec032b6ce2e8, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: hk.wish.ml}}} 10 | -------------------------------------------------------------------------------- /sub/list/03.txt: -------------------------------------------------------------------------------- 1 | - {name: 🇨🇦 _CA_加拿大, server: 23.162.200.181, port: 9101, type: ss, cipher: aes-256-gcm, password: e4FCWrgpkji3QY} 2 | - {name: 🇺🇸 _US_美国, server: 35.91.178.223, port: 443, type: ss, cipher: aes-256-cfb, password: amazonskr05} 3 | - {name: 🇨🇦 _CA_加拿大 2, server: 23.162.200.181, port: 7307, type: ss, cipher: aes-256-gcm, password: FoOiGlkAA9yPEGP} 4 | - {name: 🇺🇸 _US_美国 2, server: 104.21.69.44, port: 443, type: trojan, password: qj1Dz1CJmFQRhWr1SP80aA, sni: cdn-21.gsmxreality.com, skip-cert-verify: false} 5 | - {name: 🇨🇦 _CA_加拿大 3, server: 23.162.200.181, port: 3306, type: ss, cipher: aes-256-gcm, password: Y6R9pAtvxxzmGC} 6 | - {name: 🇺🇸 _US_美国 3, server: 104.24.197.20, port: 2096, type: vmess, uuid: 5dc153a1-67e5-44a7-9684-4a41ef180c9d, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: dl2.exoshop.ir}}} 7 | - {name: 🇺🇸 _US_美国 4, server: 52.88.161.5, port: 443, type: ss, cipher: aes-256-cfb, password: amazonskr05} 8 | - {name: 🇺🇸 _US_美国 5, server: 104.17.247.203, port: 2096, type: vmess, uuid: 5dc153a1-67e5-44a7-9684-4a41ef180c9d, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: dl2.exoshop.ir}}} 9 | - {name: 🇺🇸 _US_美国 6, server: 23.154.136.2, port: 443, type: vmess, uuid: 03fcc618-b93d-6796-6aed-8a38c975d581, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /linkvws}} 10 | - {name: 🇺🇸 _US_美国 7, server: 172.67.243.40, port: 8880, type: vmess, uuid: c74c2fd1-7e5b-4c20-be9f-f3c3b7fd6248, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /video/bYdJ7Vc2We, headers: {Host: us6gzxQRrE4.fzbqfrse.xyz}}} 11 | - {name: 🇺🇸 _US_美国 8, server: cfcdn1.sanfencdn9.com, port: 8880, type: vmess, uuid: c74c2fd1-7e5b-4c20-be9f-f3c3b7fd6248, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /video/bYdJ7Vc2We, headers: {Host: us6gzxQRrE4.fzbqfrse.xyz}}} 12 | - {name: 🇨🇦 _CA_加拿大 4, server: 23.162.200.181, port: 5001, type: ss, cipher: aes-256-gcm, password: Y6R9pAtvxxzmGC} 13 | - {name: 🇺🇸 _US_美国 9, server: 172.67.204.84, port: 443, type: trojan, password: qj1Dz1CJmFQRhWr1SP80aA, sni: cdn-21.gsmxreality.com, skip-cert-verify: false} 14 | - {name: 🇺🇸 _US_美国 10, server: russia.com, port: 8880, type: vmess, uuid: 64a57b5f-45e0-40c3-8316-97d0ff53fd96, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /api/v3/download.getFile, headers: {Host: sssub.v2.001.ssrsub.com}}} 15 | - {name: 🇺🇸 _US_美国->🇮🇳_IN_印度, server: hk.wish.ml, port: 2052, type: vmess, uuid: c286daa2-59de-455c-8de8-ec032b6ce2e8, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: in3.wish.ml}}} 16 | -------------------------------------------------------------------------------- /sub/list/13.txt: -------------------------------------------------------------------------------- 1 | - {name: 🇺🇸 github.com/freefq - 美国华盛顿Cogent通信公司 8, server: 38.114.114.67, port: 6697, type: ss, cipher: aes-256-gcm, password: TEzjfAYq2IjtuoS} 2 | - {name: 🇺🇸 github.com/freefq - 美国华盛顿Cogent通信公司 20, server: 38.75.136.21, port: 8080, type: ss, cipher: aes-256-gcm, password: KixLvKzwjekG00rm} 3 | - {name: 🇬🇧 github.com/freefq - 英国 54, server: 185.167.116.253, port: 9014, type: ss, cipher: aes-256-cfb, password: KnJGad3FqTvjqbaX} 4 | - {name: 🇺🇸 github.com/freefq - 美国华盛顿Cogent通信公司 5, server: 38.114.114.19, port: 5601, type: ss, cipher: aes-256-gcm, password: Y6R9pAtvxxzmGC} 5 | - {name: 🇺🇸 github.com/freefq - 美国华盛顿Cogent通信公司 11, server: 38.75.136.21, port: 5001, type: ss, cipher: aes-256-gcm, password: Y6R9pAtvxxzmGC} 6 | - {name: 🇬🇧 github.com/freefq - 英国 46, server: 185.167.116.253, port: 9050, type: ss, cipher: aes-256-cfb, password: FG5ddLsMPbV5CutE} 7 | - {name: 🇺🇸 github.com/freefq - 美国华盛顿Cogent通信公司 15, server: 38.114.114.19, port: 443, type: ss, cipher: aes-256-gcm, password: pKEW8JPByTVTLtM} 8 | - {name: 🇺🇸 github.com/freefq - 美国华盛顿Cogent通信公司 62, server: 38.75.136.21, port: 5003, type: ss, cipher: aes-256-gcm, password: g5MeD6Ft3CWlJId} 9 | - {name: 🇺🇸 github.com/freefq - 美国华盛顿Cogent通信公司 18, server: 38.143.66.99, port: 8118, type: ss, cipher: aes-256-gcm, password: cdBIDV42DCwnfIN} 10 | - {name: 🇺🇸 github.com/freefq - 美国华盛顿Cogent通信公司 21, server: 38.143.66.99, port: 5001, type: ss, cipher: aes-256-gcm, password: Y6R9pAtvxxzmGC} 11 | - {name: 🇫🇷 github.com/freefq - 法国 39, server: us-05.licom.ml, port: 12501, type: trojan, password: ce433528-39fa-4711-bc0d-25a5b1579574, skip-cert-verify: false} 12 | - {name: 🇬🇧 github.com/freefq - 英国 52, server: 78.129.253.9, port: 809, type: ss, cipher: chacha20-ietf-poly1305, password: G!yBwPWH3Vao} 13 | - {name: 🇬🇧 github.com/freefq - 英国 45, server: 185.167.116.24, port: 9097, type: ss, cipher: aes-256-cfb, password: Sn5B7jTqr76aCJT8} 14 | - {name: 🇺🇸 github.com/freefq - 美国弗吉尼亚州文特山农场OVH数据中心 9, server: 51.81.223.22, port: 443, type: vmess, uuid: c0156451-4efb-45e2-84fc-8d315c4650db, alterId: 32, cipher: auto, tls: false, skip-cert-verify: false} 15 | - {name: 🇺🇸 github.com/freefq - 美国华盛顿Cogent通信公司 17, server: 38.68.134.85, port: 5600, type: ss, cipher: aes-256-gcm, password: Y6R9pAtvxxzmGC} 16 | - {name: 🇺🇸 github.com/freefq - 北美地区 22, server: 134.195.196.149, port: 7307, type: ss, cipher: aes-256-gcm, password: FoOiGlkAA9yPEGP} 17 | - {name: 🇨🇦 github.com/freefq - 加拿大 42, server: 38.64.138.145, port: 8080, type: ss, cipher: aes-256-gcm, password: KixLvKzwjekG00rm} 18 | - {name: 🇺🇸 github.com/freefq - 美国华盛顿Cogent通信公司 26, server: 38.68.134.85, port: 6679, type: ss, cipher: aes-256-gcm, password: TEzjfAYq2IjtuoS} 19 | - {name: 🇸🇪 github.com/freefq - 瑞典 35, server: 167.88.63.79, port: 3306, type: ss, cipher: aes-256-gcm, password: Y6R9pAtvxxzmGC} 20 | - {name: 🇫🇷 github.com/freefq - 法国ONLINE S.A.S.数据中心 66, server: 195.154.200.150, port: 2376, type: ss, cipher: aes-256-gcm, password: faBAoD54k87UJG7} 21 | - {name: 🇬🇧 github.com/freefq - 英国 47, server: 145.239.1.100, port: 8080, type: ss, cipher: aes-256-gcm, password: KixLvKzwjekG00rm} 22 | - {name: 🇺🇸 github.com/freefq - 美国华盛顿Cogent通信公司 28, server: 38.121.43.71, port: 8119, type: ss, cipher: aes-256-gcm, password: cdBIDV42DCwnfIN} 23 | - {name: 🇬🇧 github.com/freefq - 英国 44, server: 145.239.1.100, port: 8888, type: ss, cipher: aes-256-gcm, password: Y6R9pAtvxxzmGC} 24 | - {name: 🇫🇷 github.com/freefq - 法国OVH机房SAS硬盘BGP主机 41, server: 149.202.82.172, port: 6697, type: ss, cipher: aes-256-gcm, password: TEzjfAYq2IjtuoS} 25 | - {name: 🇷🇺 github.com/freefq - 俄罗斯莫斯科Melbicom数据中心 12, server: 213.183.53.222, port: 9014, type: ss, cipher: aes-256-cfb, password: KnJGad3FqTvjqbaX} 26 | - {name: 🇬🇧 github.com/freefq - 英国 51, server: 145.239.1.100, port: 8882, type: ss, cipher: aes-256-gcm, password: kDWvXYZoTBcGkC4} 27 | - {name: 🇺🇸 github.com/freefq - 美国 29, server: kr05.wangxd.life, port: 3052, type: trojan, password: 3a2c0c6c-9ee5-c05f-c951-fcd73831983e, skip-cert-verify: false} 28 | - {name: 🇸🇬 github.com/freefq - 新加坡M247网络 58, server: supersouth.xn--mesv7f5toqlp.club, port: 12004, type: trojan, password: dd04c158-1bac-47cd-99c1-5c4f64796dd5, skip-cert-verify: false} 29 | - {name: 🇫🇷 github.com/freefq - 法国OVH机房SAS硬盘BGP主机 49, server: 149.202.82.172, port: 8080, type: ss, cipher: aes-256-gcm, password: KixLvKzwjekG00rm} 30 | - {name: 🇩🇪 github.com/freefq - 德国黑森州法兰克福Amazon数据中心 32, server: 52.58.249.78, port: 57824, type: ss, cipher: chacha20-ietf-poly1305, password: pryhyxya} 31 | - {name: 🇸🇪 github.com/freefq - 瑞典 7, server: 167.88.61.175, port: 8080, type: ss, cipher: aes-256-gcm, password: KixLvKzwjekG00rm} 32 | - {name: 🇺🇸 github.com/freefq - 美国华盛顿Cogent通信公司 37, server: 38.121.43.71, port: 8882, type: ss, cipher: aes-256-gcm, password: kDWvXYZoTBcGkC4} 33 | - {name: github.com/freefq - 塞舌尔 27, server: 196.247.59.154, port: 800, type: ss, cipher: chacha20-ietf-poly1305, password: G!yBwPWH3Vao} 34 | - {name: 🇺🇸 github.com/freefq - 美国 33, server: 172.99.190.39, port: 5500, type: ss, cipher: aes-256-gcm, password: KixLvKzwjekG00rm} 35 | - {name: 🇺🇸 github.com/freefq - 美国华盛顿Cogent通信公司 59, server: 38.68.135.18, port: 5500, type: ss, cipher: aes-256-gcm, password: KixLvKzwjekG00rm} 36 | - {name: 🇺🇸 github.com/freefq - 美国 31, server: 172.99.190.39, port: 5003, type: ss, cipher: aes-256-gcm, password: g5MeD6Ft3CWlJId} 37 | - {name: 🇯🇵 github.com/freefq - 日本东京Linode数据中心 68, server: in-01.licom.ml, port: 8443, type: trojan, password: ce433528-39fa-4711-bc0d-25a5b1579574, skip-cert-verify: false} 38 | - {name: 🇧🇬 github.com/freefq - 保加利亚索非亚Melbicom数据中心 55, server: 213.183.63.221, port: 9001, type: ss, cipher: aes-256-cfb, password: UkXRsXvR6buDMG2Y} 39 | - {name: 🇺🇸 github.com/freefq - 美国 19, server: 152.69.197.60, port: 1069, type: vmess, uuid: ac8e26fe-8150-4b60-ae64-82fc77eba2cf, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false} 40 | -------------------------------------------------------------------------------- /sub/list/15.txt: -------------------------------------------------------------------------------- 1 | - {name: 🇯🇵 _JP_日本, server: 85.208.108.61, port: 8008, type: ss, cipher: aes-256-gcm, password: XKFKl2rULjIp74} 2 | -------------------------------------------------------------------------------- /sub/list/16.txt: -------------------------------------------------------------------------------- 1 | - {name: www.chrome-helper.cc:21830, server: www.chrome-helper.cc, port: 21830, type: http, tls: true, skip-cert-verify: false} 2 | -------------------------------------------------------------------------------- /sub/list/17.txt: -------------------------------------------------------------------------------- 1 | - {name: 🇺🇸 _US_美国_1, server: 172.67.204.84, port: 443, type: trojan, password: qj1Dz1CJmFQRhWr1SP80aA, sni: cdn-21.gsmxreality.com, skip-cert-verify: false, network: grpc, grpc-opts: {grpc-service-name: 443trojan}} 2 | - {name: 🇺🇸 _US_美国->🇫🇷_FR_法国_1, server: s1c.v2.v001sss.xyz, port: 2082, type: vmess, uuid: 112ac36f-3f53-4e26-8371-d25c028e1b9a, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: s1c.v2.v001sss.xyz}}} 3 | - {name: 🇺🇸 _US_美国->🇮🇳_IN_印度, server: hk.wish.ml, port: 2052, type: vmess, uuid: c286daa2-59de-455c-8de8-ec032b6ce2e8, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: hk.wish.ml}}} 4 | - {name: 🇺🇸 _US_美国->🇫🇷_FR_法国_2, server: 104.21.8.157, port: 2082, type: vmess, uuid: 112ac36f-3f53-4e26-8371-d25c028e1b9a, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /}} 5 | - {name: _BD_孟加拉国, server: 103.106.2.90, port: 8881, type: ss, cipher: chacha20-ietf-poly1305, password: oxp4Xr64OKpXV127Zwtzl14P8L8PovqbFGPHbnbhRf7CxCSW1E} 6 | - {name: 🇺🇸 _US_美国_2, server: 104.21.69.44, port: 443, type: trojan, password: qj1Dz1CJmFQRhWr1SP80aA, sni: cdn-21.gsmxreality.com, skip-cert-verify: false, network: grpc, grpc-opts: {grpc-service-name: 443trojan}} 7 | - {name: 🇺🇸 _US_美国_3, server: 52.88.161.5, port: 443, type: ss, cipher: aes-256-cfb, password: amazonskr05} 8 | - {name: 🇺🇸 _US_美国_4, server: 156.146.38.163, port: 443, type: ss, cipher: aes-128-cfb, password: shadowsocks} 9 | - {name: 🇺🇸 _US_美国_5, server: 23.154.136.2, port: 443, type: vmess, uuid: 03fcc618-b93d-6796-6aed-8a38c975d581, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /linkvws}} 10 | - {name: 🇨🇦 _CA_加拿大, server: 158.51.121.36, port: 443, type: vmess, uuid: 03fcc618-b93d-6796-6aed-8a38c975d581, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /linkvws}} 11 | - {name: 🇷🇺 _RU_俄罗斯联邦, server: 45.136.245.240, port: 12910, type: vmess, uuid: 8259cb1c-dd6c-4739-9c88-af550d977525, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /}} 12 | - {name: 🇺🇸 _US_美国->🇫🇷_FR_法国_3, server: 172.67.130.140, port: 2082, type: vmess, uuid: 112ac36f-3f53-4e26-8371-d25c028e1b9a, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /}} 13 | - {name: 🇺🇸 _US_美国_6, server: 172.67.204.84, port: 80, type: vmess, uuid: 753d0d83-3f5b-4821-860e-082f0b3db609, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /}} 14 | - {name: 🇺🇸 _US_美国_7, server: upload.ir, port: 80, type: vmess, uuid: 085f6281-5c4c-4a34-8b44-d65bc2e2b069, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: upload.ir}}} 15 | - {name: 🇺🇸 _US_美国_8, server: russia.com, port: 2095, type: vmess, uuid: 64a57b5f-45e0-40c3-8316-97d0ff53fd96, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /api/v3/download.getFile, headers: {Host: russia.com}}} 16 | - {name: 🇺🇸 _US_美国_9, server: 212.102.47.198, port: 443, type: ss, cipher: aes-128-cfb, password: shadowsocks} 17 | -------------------------------------------------------------------------------- /sub/list/23.txt: -------------------------------------------------------------------------------- 1 | - {name: 🇬🇧 高性价比机场:https://kfyun.uk, server: 127.0.0.1, port: 443, type: ss, cipher: aes-128-gcm, password: 6601fb90e9b3} 2 | - {name: 🇮🇳 印度 v2rayfree.eu.org, server: 202.78.162.5, port: 443, type: vmess, uuid: 716eded6-2201-4dbd-9d63-1638c9e8e677, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: pendar.onthewifi.com}}} 3 | - {name: 广东省佛山市 移动, server: 183.232.199.61, port: 61001, type: vmess, uuid: aaaaaaaa-aaaa-aaaa-aaaa-daaaaaaaaaad, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false} 4 | - {name: 🇷🇺 俄罗斯 v2rayfree.eu.org, server: 31.192.234.7, port: 12954, type: vmess, uuid: 8259cb1c-dd6c-4739-9c88-af550d977525, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false} 5 | - {name: 广东省 移动, server: data-jp-v1.usabooks.com.cn, port: 20301, type: vmess, uuid: b1478e24-4916-3abe-8f17-15931012ecbe, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /debian, headers: {Host: data-jp-v1.usabooks.com.cn}}} 6 | - {name: 🇮🇳 印度 v2rayfree.eu.org 2, server: 202.78.162.5, port: 443, type: vmess, uuid: 2ff97c6d-8557-42a4-b43f-19c77c5959ea, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: irsoft.sytes.net}}} 7 | - {name: 🇺🇸 北美地区+v2rayfree.eu.org, server: 23.157.40.19, port: 6679, type: ss, cipher: aes-256-gcm, password: TEzjfAYq2IjtuoS} 8 | - {name: 广东省佛山市+移动, server: 8980k6.ceova9qgbqsqmfdy-jp01.my777999.top, port: 38999, type: ss, cipher: chacha20-ietf-poly1305, password: dffc697a-2535-470c-bb6a-8157b6c157a7} 9 | - {name: 🇺🇸 美国 Amazon数据中心, server: 13.43.40.38, port: 22222, type: trojan, password: telegram-id-privatevpns, sni: trojan.burgerip.co.uk, skip-cert-verify: false} 10 | - {name: 🇺🇸 美国 俄勒冈州波特兰Amazon数据中心, server: 34.208.216.95, port: 22222, type: trojan, password: telegram-id-directvpn, sni: trojan.burgerip.co.uk, skip-cert-verify: false} 11 | - {name: 🇺🇸 美国 CloudFlare节点, server: 104.21.69.44, port: 443, type: trojan, password: qj1Dz1CJmFQRhWr1SP80aA, sni: cdn-21.gsmxreality.com, skip-cert-verify: false} 12 | - {name: 🇺🇸 美国 CloudFlare节点 2, server: cdnjs.com, port: 2096, type: vmess, uuid: 5dc153a1-67e5-44a7-9684-4a41ef180c9d, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, servername: dl2.exoshop.ir, network: ws, ws-opts: {path: /, headers: {Host: dl2.exoshop.ir}}} 13 | - {name: 🇺🇸 美国 CloudFlare节点 3, server: www.darkroom.lol, port: 8080, type: vmess, uuid: 22826b44-5c1a-4b4b-dbaa-83a2e8bd95f0, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: www.darkroom.lol}}} 14 | - {name: 🇺🇸 美国+v2rayfree.eu.org, server: 23.162.200.181, port: 9101, type: ss, cipher: aes-256-gcm, password: e4FCWrgpkji3QY} 15 | - {name: 🇫🇷 法国+v2rayfree.eu.org, server: 146.19.233.101, port: 29682, type: ss, cipher: chacha20-ietf-poly1305, password: 7QOUxYlgXlKxWSwFsRU6DE} 16 | - {name: 🇺🇸 美国 Amazon EC2服务器, server: 3.67.240.15, port: 22222, type: trojan, password: telegram-id-privatevpns, sni: trojan.burgerip.co.uk, skip-cert-verify: false} 17 | - {name: 🇺🇸 美国 Amazon EC2服务器 2, server: 3.76.58.39, port: 22222, type: trojan, password: telegram-id-privatevpns, sni: trojan.burgerip.co.uk, skip-cert-verify: false} 18 | - {name: 🇺🇸 美国 CloudFlare节点 4, server: 104.24.197.20, port: 2096, type: vmess, uuid: 5dc153a1-67e5-44a7-9684-4a41ef180c9d, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: dl2.exoshop.ir}}} 19 | - {name: 🇺🇸 美国 CloudFlare节点 5, server: 104.19.40.211, port: 8880, type: vmess, uuid: 57e0cb4d-eae5-48ec-8091-149dc2b309e0, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /d/65dd503.TG.WangCai2.WangCai_8:107690, headers: {Host: uk.moss.network}}} 20 | - {name: 🇺🇸 美国 CloudFlare节点 6, server: 172.67.166.192, port: 80, type: vmess, uuid: cd1db809-2de0-409c-aef5-861e95eff53e, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: ua1-vmess.sshmax.xyz}}} 21 | - {name: 🇺🇸 美国 CloudFlare节点 7, server: 104.19.40.99, port: 8880, type: vmess, uuid: 57e0cb4d-eae5-48ec-8091-149dc2b309e0, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /d/65dd503.TG.WangCai2.WangCai_8:107690, headers: {Host: uk.moss.network}}} 22 | - {name: 🇺🇸 美国 CloudFlare节点 8, server: cfcdn1.sanfencdn9.com, port: 8880, type: vmess, uuid: c74c2fd1-7e5b-4c20-be9f-f3c3b7fd6248, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /video/bYdJ7Vc2We, headers: {Host: us6gzxQRrE4.fzbqfrse.xyz}}} 23 | - {name: 广东省佛山市 移动 2, server: 183.232.199.61, port: 21006, type: vmess, uuid: aaaaaaaa-aaaa-aaaa-aaaa-daaaaaaaaaad, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false} 24 | - {name: 🇺🇸 美国 惠普公司, server: 15.236.243.114, port: 22222, type: trojan, password: telegram-id-privatevpns, sni: trojan.burgerip.co.uk, skip-cert-verify: false} 25 | - {name: 🇨🇦 加拿大 魁北克省蒙特利尔Amazon数据中心, server: 35.183.50.176, port: 16628, type: trojan, password: qrG0T6DSZyVN, sni: appsvs.shop, skip-cert-verify: false} 26 | - {name: 🇳🇱 荷兰 阿姆斯特丹Choopa数据中心, server: hdfy8d1.cpionline.co, port: 80, type: vmess, uuid: a6292090-afe1-4640-97a7-4f1d1d877cf1, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: hdfy8d1.cpionline.co}}} 27 | - {name: 🇬🇧 英国 社会保险安全部, server: 51.21.138.104, port: 22222, type: trojan, password: telegram-id-privatevpns, sni: trojan.burgerip.co.uk, skip-cert-verify: false} 28 | - {name: 🇺🇸 美国 CloudFlare节点 9, server: 104.19.40.58, port: 8880, type: vmess, uuid: 57e0cb4d-eae5-48ec-8091-149dc2b309e0, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /d/65dd503.TG.WangCai2.WangCai_8:107690, headers: {Host: uk.moss.network}}} 29 | - {name: 🇺🇸 美国 Merit网络公司, server: 35.87.114.137, port: 16645, type: trojan, password: 58KREhQLqYhh, sni: appsvs.shop, skip-cert-verify: false} 30 | - {name: 🇺🇸 美国 CloudFlare节点 10, server: 172.67.164.78, port: 2052, type: vmess, uuid: c286daa2-59de-455c-8de8-ec032b6ce2e8, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: sg1.wish.ml}}} 31 | - {name: 🇺🇸 美国 Amazon数据中心 2, server: 18.224.236.198, port: 22222, type: trojan, password: telegram-id-directvpn, sni: trojan.burgerip.co.uk, skip-cert-verify: false} 32 | - {name: 广东省江门市 移动, server: 120.238.122.243, port: 40259, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, tls: false, skip-cert-verify: false} 33 | - {name: 🇯🇵 日本 东京都Amazon数据中心, server: 18.181.190.41, port: 80, type: vmess, uuid: e7c26c01-186a-479e-9218-4952353d97f1, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: tms.dingtalk.com}}} 34 | - {name: 🇬🇧 英国+伦敦Microsoft公司, server: 51.145.101.240, port: 46228, type: ss, cipher: chacha20-ietf-poly1305, password: rvniK9LtTUhjlw40NuEngx} 35 | - {name: 🇷🇺 俄罗斯 v2rayfree.eu.org 2, server: de3-vmess.sshmax.xyz, port: 80, type: vmess, uuid: d8d635a3-3807-4886-a6dc-81d44ce9b6aa, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /vmess, headers: {Host: de3-vmess.sshmax.xyz}}} 36 | - {name: 🇺🇸 美国 CloudFlare节点 11, server: 172.67.185.64, port: 8080, type: vmess, uuid: b551aa22-22af-11ee-b8d8-f23c932eb68d, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: oiictw.yydsii.com}}} 37 | - {name: 🇩🇪 德国下萨克森州萨尔茨吉特+德国电信, server: service.ouluyun9803.com, port: 26667, type: ss, cipher: chacha20-ietf-poly1305, password: d6105bbd-be0d-45b2-82ad-31fd1071c1d2} 38 | - {name: 🇺🇸 美国+v2rayfree.eu.org 2, server: 23.162.200.181, port: 3306, type: ss, cipher: aes-256-gcm, password: Y6R9pAtvxxzmGC} 39 | - {name: 🇺🇸 美国 CloudFlare节点 12, server: 172.67.172.67, port: 8080, type: vmess, uuid: b551aa22-22af-11ee-b8d8-f23c932eb68d, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: oiictw.yydsii.com}}} 40 | - {name: 🇷🇺 俄罗斯 1, server: 185.242.86.156, port: 54170, type: ss, cipher: chacha20-ietf-poly1305, password: 36ZCHeabUSfKjfQEvJ4HDV} 41 | - {name: 🇮🇳 印度 2, server: 202.78.162.5, port: 443, type: vmess, uuid: 2ff97c6d-8557-42a4-b43f-19c77c5959ea, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: irsoft.sytes.net}}} 42 | - {name: 🇮🇳 印度 3, server: 202.78.162.5, port: 443, type: vmess, uuid: 118287d2-e968-42e1-80d0-12fa2f5d38d6, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: sahand.serveminecraft.net}}} 43 | - {name: 🇺🇸 美国CloudFlare公司CDN节点 4, server: www.darkroom.lol, port: 8080, type: vmess, uuid: 22826b44-5c1a-4b4b-dbaa-83a2e8bd95f0, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: www.darkroom.lol}}} 44 | - {name: 🇵🇱 波兰 5, server: 193.243.147.128, port: 40368, type: ss, cipher: aes-256-gcm, password: 7BcLdsO1WweoGD0X} 45 | - {name: 🇺🇸 美国CloudFlare公司CDN节点 6, server: server31.beheshtbaneh.com, port: 8880, type: vmess, uuid: 4154143c-bbba-47a4-9f79-c2ed087cbcc9, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: server31.beheshtbaneh.com}}} 46 | - {name: 广东省移动 7, server: data-us-v1.shwjfkw.cn, port: 20401, type: vmess, uuid: b1478e24-4916-3abe-8f17-15931012ecbe, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /debian, headers: {Host: data-us-v1.shwjfkw.cn}}} 47 | - {name: 广东省江门市移动 8, server: service.ouluyun9803.com, port: 20003, type: ss, cipher: chacha20-ietf-poly1305, password: d6105bbd-be0d-45b2-82ad-31fd1071c1d2} 48 | - {name: 🇺🇸 美国CloudFlare公司CDN节点 9, server: 104.21.82.183, port: 8880, type: vmess, uuid: 5a7021e0-26b4-45d6-b175-fe551601ca97, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: server26.beheshtbaneh.com}}} 49 | - {name: 🇮🇳 印度 10, server: 202.78.162.5, port: 443, type: vmess, uuid: 716eded6-2201-4dbd-9d63-1638c9e8e677, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: pendar.onthewifi.com}}} 50 | - {name: 广东省江门市移动 11, server: service.ouluyun9803.com, port: 26667, type: ss, cipher: chacha20-ietf-poly1305, password: d6105bbd-be0d-45b2-82ad-31fd1071c1d2} 51 | - {name: 广东省江门市移动 12, server: service.ouluyun9803.com, port: 20005, type: ss, cipher: chacha20-ietf-poly1305, password: d6105bbd-be0d-45b2-82ad-31fd1071c1d2} 52 | - {name: 🇺🇸 美国Fastly全球Anycast节点 13, server: gov.uk, port: 443, type: vmess, uuid: 77848824-93b7-4b89-ffd0-e91afff406ce, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /77848824, headers: {Host: zheshiscp.com}}} 53 | - {name: 🇺🇸 美国CloudFlare节点 14, server: server32.beheshtbaneh.com, port: 8880, type: vmess, uuid: 044ba8ed-7285-472a-bc14-fb91dc6be4c9, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: server32.beheshtbaneh.com}}} 54 | -------------------------------------------------------------------------------- /sub/list/24.txt: -------------------------------------------------------------------------------- 1 | - {name: 🇰🇷 韩国 蘑菇主机BGP数据中心, server: 103.214.68.57, port: 10001, type: vmess, uuid: ebca5f68-bf59-4081-e658-f158839c2f5c, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false} 2 | - {name: 🇺🇸 美国 CloudFlare节点, server: fcdn.flha.ru, port: 2095, type: vmess, uuid: 7a737f41-b792-4260-94ff-3d864da67b80, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: fcdn.flha.ru}}} 3 | - {name: 🇯🇵 日本 东京Amazon数据中心, server: 13.231.137.243, port: 17406, type: trojan, password: RUfGmKh1RX3D, sni: appsvs.shop, skip-cert-verify: false} 4 | - {name: 🇺🇸 美国 Amazon数据中心, server: 18.171.186.43, port: 17395, type: trojan, password: tgn0eHuthrRq, sni: appsvs.shop, skip-cert-verify: false} 5 | - {name: 🇺🇸 美国 CloudFlare节点 2, server: 172.67.166.192, port: 80, type: vmess, uuid: cd1db809-2de0-409c-aef5-861e95eff53e, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: ua1-vmess.sshmax.xyz}}} 6 | - {name: 🇺🇸 美国 惠普公司, server: 16.16.135.227, port: 22222, type: trojan, password: telegram-id-directvpn, sni: trojan.burgerip.co.uk, skip-cert-verify: false} 7 | - {name: 🇸🇬 新加坡 Amazon数据中心, server: 13.229.206.23, port: 17412, type: trojan, password: SWzQZL8hkIDV, sni: appsvs.shop, skip-cert-verify: false} 8 | - {name: 🇨🇳 广东省深圳市 移动, server: m.cnmjin.net, port: 16632, type: vmess, uuid: 2b8cfb7b-d3e7-4525-8418-e13a9b8fd73b, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: dcef278233434a15c3587ef998dd119d.mobgslb.tbcache.com}}} 9 | - {name: 广东省佛山市 移动, server: 183.232.199.61, port: 61001, type: vmess, uuid: aaaaaaaa-aaaa-aaaa-aaaa-daaaaaaaaaad, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false} 10 | - {name: 🇩🇪 德国 黑森州法兰克福Amazon数据中心, server: 18.197.32.36, port: 17407, type: trojan, password: 31TkxdnI27WU, sni: appsvs.shop, skip-cert-verify: false} 11 | - {name: 🇺🇸 美国 V2CROSS.COM, server: 23.162.200.225, port: 9090, type: ss, cipher: aes-256-gcm, password: Y6R9pAtvxxzmGC} 12 | - {name: 广东省汕头市 移动, server: 183.240.179.195, port: 15601, type: vmess, uuid: aaaaaaaa-aaaa-aaaa-aaaa-daaaaaaaaaad, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false} 13 | - {name: 🇺🇸 美国 CloudFlare节点 3, server: 104.19.40.237, port: 8880, type: vmess, uuid: 57e0cb4d-eae5-48ec-8091-149dc2b309e0, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /d/65dd503.TG.WangCai2.WangCai_8:107690, headers: {Host: uk.moss.network}}} 14 | - {name: 🇭🇰 香港 环球全域电讯, server: 210.3.159.224, port: 12909, type: vmess, uuid: 8259cb1c-dd6c-4739-9c88-af550d977525, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /}} 15 | - {name: 🇺🇸 美国 CloudFlare节点 4, server: 104.21.7.176, port: 2053, type: trojan, password: tIErrUuX7j, sni: vr.v2ray962.filegear-sg.me, skip-cert-verify: false} 16 | - {name: 🇨🇳 广东省广州市 移动, server: 120.232.240.38, port: 8443, type: vmess, uuid: 39ef8f5d-7286-41b0-9c11-c976925d2931, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false} 17 | - {name: 🇬🇧 英国 伦敦Microsoft公司, server: 51.145.101.240, port: 46228, type: ss, cipher: chacha20-ietf-poly1305, password: rvniK9LtTUhjlw40NuEngx} 18 | - {name: 🇬🇧 英国 伦敦Microsoft公司 2, server: 51.145.96.134, port: 18869, type: ss, cipher: chacha20-ietf-poly1305, password: V8QywnpW9gaAwJfzkStkVp} 19 | - {name: 🇺🇸 美国 V2CROSS.COM 2, server: 23.162.200.225, port: 8882, type: ss, cipher: aes-256-gcm, password: kDWvXYZoTBcGkC4} 20 | - {name: 乌克兰 V2CROSS.COM, server: 95.164.47.219, port: 8388, type: ss, cipher: chacha20-ietf-poly1305, password: ZmRiM} 21 | - {name: 🇺🇸 美国 CloudFlare节点 5, server: 104.19.40.211, port: 8880, type: vmess, uuid: 57e0cb4d-eae5-48ec-8091-149dc2b309e0, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /d/65dd503.TG.WangCai2.WangCai_8:107690, headers: {Host: uk.moss.network}}} 22 | - {name: 🇺🇸 美国 CloudFlare节点 6, server: onea.flha.ru, port: 2095, type: vmess, uuid: 7a737f41-b792-4260-94ff-3d864da67b80, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: onea.flha.ru}}} 23 | - {name: 🇺🇸 美国 CloudFlare节点 7, server: 104.21.69.44, port: 443, type: trojan, password: qj1Dz1CJmFQRhWr1SP80aA, sni: cdn-21.gsmxreality.com, skip-cert-verify: false} 24 | - {name: 🇺🇸 美国 V2CROSS.COM 3, server: 23.162.200.215, port: 9090, type: ss, cipher: aes-256-gcm, password: Y6R9pAtvxxzmGC} 25 | - {name: 🇺🇸 美国 CloudFlare节点 8, server: 172.67.90.176, port: 2053, type: vmess, uuid: e6933218-ad65-3943-9afd-0d78638a61dd, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /dabai.in172.67.90.176, headers: {Host: 100-100-17-410.db-link01.top}}} 26 | - {name: 🇺🇸 北美地区 V2CROSS.COM, server: 23.142.200.175, port: 443, type: trojan, password: 27876_t7d7f4e3f, skip-cert-verify: false} 27 | - {name: 广东省佛山市 移动 2, server: 183.232.199.61, port: 21006, type: vmess, uuid: aaaaaaaa-aaaa-aaaa-aaaa-daaaaaaaaaad, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false} 28 | - {name: 🇺🇸 美国 CloudFlare节点 9, server: hms04.xmivideo.cfd, port: 443, type: vmess, uuid: 93ea486a-bada-42a4-ac38-d088b320fa1e, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /linkws, headers: {Host: xmivideo.cfd}}} 29 | - {name: 🇺🇸 美国 CloudFlare节点 10, server: 172.67.214.33, port: 2095, type: vmess, uuid: 7a737f41-b792-4260-94ff-3d864da67b80, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: fcdn.flha.ru}}} 30 | - {name: 🇸🇪 瑞典 V2CROSS.COM, server: 185.146.173.32, port: 2052, type: vmess, uuid: 0c55ba35-b978-4324-a3e1-cf0f666aed00, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /index.php/SeYeDMT, headers: {Host: V2ray-_-_-_-_-_-Seyyedmt.Yahazrtabbassblogfamooshakbalestik.Blog.}}} 31 | - {name: 🇺🇸 美国 V2CROSS.COM 4, server: 23.162.200.225, port: 9102, type: ss, cipher: aes-256-gcm, password: e4FCWrgpkji3QY} 32 | - {name: 🇮🇹 意大利 V2CROSS.COM, server: service.ouluyun9803.com, port: 26667, type: ss, cipher: chacha20-ietf-poly1305, password: d6105bbd-be0d-45b2-82ad-31fd1071c1d2} 33 | -------------------------------------------------------------------------------- /sub/list/36.txt: -------------------------------------------------------------------------------- 1 | - {name: 🇷🇺 github.com/freefq - 俄罗斯 1, server: 185.242.86.156, port: 54170, type: ss, cipher: chacha20-ietf-poly1305, password: 36ZCHeabUSfKjfQEvJ4HDV} 2 | - {name: 🇮🇳 github.com/freefq - 印度 2, server: 202.78.162.5, port: 443, type: vmess, uuid: 2ff97c6d-8557-42a4-b43f-19c77c5959ea, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: irsoft.sytes.net}}} 3 | - {name: 🇮🇳 github.com/freefq - 印度 3, server: 202.78.162.5, port: 443, type: vmess, uuid: 118287d2-e968-42e1-80d0-12fa2f5d38d6, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: sahand.serveminecraft.net}}} 4 | - {name: 🇺🇸 github.com/freefq - 美国CloudFlare公司CDN节点 4, server: www.darkroom.lol, port: 8080, type: vmess, uuid: 22826b44-5c1a-4b4b-dbaa-83a2e8bd95f0, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: www.darkroom.lol}}} 5 | - {name: 🇵🇱 github.com/freefq - 波兰 5, server: 193.243.147.128, port: 40368, type: ss, cipher: aes-256-gcm, password: 7BcLdsO1WweoGD0X} 6 | - {name: 🇺🇸 github.com/freefq - 美国CloudFlare公司CDN节点 6, server: server31.beheshtbaneh.com, port: 8880, type: vmess, uuid: 4154143c-bbba-47a4-9f79-c2ed087cbcc9, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: server31.beheshtbaneh.com}}} 7 | - {name: github.com/freefq - 广东省移动 7, server: data-us-v1.shwjfkw.cn, port: 20401, type: vmess, uuid: b1478e24-4916-3abe-8f17-15931012ecbe, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /debian, headers: {Host: data-us-v1.shwjfkw.cn}}} 8 | - {name: github.com/freefq - 广东省江门市移动 8, server: service.ouluyun9803.com, port: 20003, type: ss, cipher: chacha20-ietf-poly1305, password: d6105bbd-be0d-45b2-82ad-31fd1071c1d2} 9 | - {name: 🇺🇸 github.com/freefq - 美国CloudFlare公司CDN节点 9, server: 104.21.82.183, port: 8880, type: vmess, uuid: 5a7021e0-26b4-45d6-b175-fe551601ca97, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: server26.beheshtbaneh.com}}} 10 | - {name: 🇮🇳 github.com/freefq - 印度 10, server: 202.78.162.5, port: 443, type: vmess, uuid: 716eded6-2201-4dbd-9d63-1638c9e8e677, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: pendar.onthewifi.com}}} 11 | - {name: github.com/freefq - 广东省江门市移动 11, server: service.ouluyun9803.com, port: 26667, type: ss, cipher: chacha20-ietf-poly1305, password: d6105bbd-be0d-45b2-82ad-31fd1071c1d2} 12 | - {name: github.com/freefq - 广东省江门市移动 12, server: service.ouluyun9803.com, port: 20005, type: ss, cipher: chacha20-ietf-poly1305, password: d6105bbd-be0d-45b2-82ad-31fd1071c1d2} 13 | - {name: 🇺🇸 github.com/freefq - 美国Fastly全球Anycast节点 13, server: gov.uk, port: 443, type: vmess, uuid: 77848824-93b7-4b89-ffd0-e91afff406ce, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /77848824, headers: {Host: zheshiscp.com}}} 14 | - {name: 🇺🇸 github.com/freefq - 美国CloudFlare节点 14, server: server32.beheshtbaneh.com, port: 8880, type: vmess, uuid: 044ba8ed-7285-472a-bc14-fb91dc6be4c9, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: server32.beheshtbaneh.com}}} 15 | -------------------------------------------------------------------------------- /sub/list/53.txt: -------------------------------------------------------------------------------- 1 | - {name: www.998808.xyz:433, server: 198.41.212.92, port: 443, type: vmess, uuid: bd014532-1f8b-4d33-b79d-50131d8d4633, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /vbje5ytgwfgdrhe, headers: {Host: www.998808.xyz}}} 2 | - {name: nat.998808.xyz:443, server: 172.67.72.172, port: 443, type: vmess, uuid: 1bff15f1-a71d-4f07-b8bf-9471708eff8b, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /fthe4gsefgtdu, headers: {Host: nat.998808.xyz}}} 3 | - {name: nat.998808.xyz:443 2, server: 172.67.77.95, port: 443, type: vmess, uuid: 1bff15f1-a71d-4f07-b8bf-9471708eff8b, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /fthe4gsefgtdu, headers: {Host: nat.998808.xyz}}} 4 | - {name: www.998808.xyz:433 2, server: 172.67.79.117, port: 443, type: vmess, uuid: bd014532-1f8b-4d33-b79d-50131d8d4633, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /vbje5ytgwfgdrhe, headers: {Host: www.998808.xyz}}} 5 | - {name: 「SCP」LU-CF, server: cf-lt.sharecentre.online, port: 443, type: vmess, uuid: 20e92881-5fb4-4b05-bc77-57929476dc69, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /shirker, headers: {Host: lu.sharecentre.online}}} 6 | - {name: 🇸🇬 「SCP」SG-Gcore, server: cf-lt.sharecentre.online, port: 443, type: vmess, uuid: 20e92881-5fb4-4b05-bc77-57929476dc69, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /shirker, headers: {Host: sg-gcore.sharecentre.online}}} 7 | - {name: 🇺🇸 「SCP」US-BuyVM, server: cf-lt.sharecentre.online, port: 443, type: vmess, uuid: 20e92881-5fb4-4b05-bc77-57929476dc69, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /shirker, headers: {Host: lvryzenkvm1gb.sharecentre.online}}} 8 | - {name: 🇺🇸 「SCP」US-DP, server: cf-lt.sharecentre.online, port: 443, type: vmess, uuid: 20e92881-5fb4-4b05-bc77-57929476dc69, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /shirker, headers: {Host: us-dp.sharecentre.online}}} 9 | - {name: 🇺🇸 「SCP」US-East-CF, server: cf-lt.sharecentre.online, port: 443, type: vmess, uuid: 20e92881-5fb4-4b05-bc77-57929476dc69, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /shirker, headers: {Host: us-east.sharecentre.online}}} 10 | -------------------------------------------------------------------------------- /sub/list/54.txt: -------------------------------------------------------------------------------- 1 | - {name: 🇬🇧 英国 woiden EU7, server: 211.72.35.110, port: 443, type: vmess, uuid: 2eb30779-2e8c-4b89-e6bd-a0ec760ca506, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, servername: woideneu7.jsworld.eu.org, network: ws, ws-opts: {path: /nishikata, headers: {Host: woideneu7.jsworld.eu.org}}} 2 | - {name: 🇩🇪 德国 euserv1, server: 211.72.35.110, port: 443, type: vmess, uuid: 3953ce0d-25df-4427-8371-a8ac26cc36fe, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, servername: euserv1.aifx.eu.org, network: ws, ws-opts: {path: /nishikata, headers: {Host: euserv1.aifx.eu.org}}} 3 | - {name: 🇵🇱 波兰 woiden EU4, server: 211.72.35.110, port: 443, type: vmess, uuid: cb6448e3-08e1-413d-bc17-d3b0dba9aae9, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, servername: woideneu4.jsworld.eu.org, network: ws, ws-opts: {path: /nishikata, headers: {Host: woideneu4.jsworld.eu.org}}} 4 | - {name: 🇫🇷 埋 法国, server: 5.tcp.eu.ngrok.io, port: 13840, type: vmess, uuid: 8a8b066b-c36c-48ef-ab3d-38cea6b6f5cc, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false} 5 | - {name: Hax Eu7, server: 211.72.35.110, port: 443, type: vmess, uuid: dfd1d80f-caf0-4b11-e0bb-733a2710a07a, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, servername: haxeu7.jsworld.eu.org, network: ws, ws-opts: {path: /nishikata3, headers: {Host: haxeu7.jsworld.eu.org}}} 6 | - {name: 🇨🇦 加拿大 woiden Ca, server: 211.72.35.110, port: 443, type: vmess, uuid: e87f326f-55ac-487f-a3d1-57c592bb663a, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, servername: woidenca1.jsworld.eu.org, network: ws, ws-opts: {path: /nishikata3, headers: {Host: woidenca1.jsworld.eu.org}}} 7 | -------------------------------------------------------------------------------- /sub/list/56.txt: -------------------------------------------------------------------------------- 1 | - {name: 中转节点-6.58MB/s(Youtube:不良林), server: apollo.cn.v4.hdsky.org, port: 28178, type: ss, cipher: chacha20-ietf-poly1305, password: de00f033-0c57-4827-aea3-9393c388a40a} 2 | - {name: 🇭🇰 _CN_中国->🇭🇰_HK_香港, server: apollo.cn.v4.hdsky.org, port: 28000, type: ss, cipher: chacha20-ietf-poly1305, password: de00f033-0c57-4827-aea3-9393c388a40a} 3 | - {name: 中转节点-1.39MB/s(Youtube:不良林), server: apollo.cn.v4.hdsky.org, port: 39207, type: ss, cipher: chacha20-ietf-poly1305, password: de00f033-0c57-4827-aea3-9393c388a40a} 4 | - {name: 🇮🇳 _CN_中国->🇮🇳_IN_印度, server: apollo.cn.v4.hdsky.org, port: 39207, type: ss, cipher: chacha20-ietf-poly1305, password: de00f033-0c57-4827-aea3-9393c388a40a} 5 | - {name: 中转节点-1.89MB/s(Youtube:不良林), server: diana.cn.iepl.hdsky.org, port: 31039, type: ss, cipher: chacha20-ietf-poly1305, password: de00f033-0c57-4827-aea3-9393c388a40a} 6 | -------------------------------------------------------------------------------- /sub/list/58.txt: -------------------------------------------------------------------------------- 1 | - {name: 01-rep-vm, server: we.alicesss.repl.co, port: 443, type: vmess, uuid: 68ac8a42-30ca-43fc-bf9b-2f4ceb1eade8, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, servername: we.alicesss.repl.co, network: ws, ws-opts: {path: /68ac8a42-30ca-43fc-bf9b-2f4ceb1eade8-vmess, headers: {Host: we.alicesss.repl.co}}} 2 | - {name: 02-rep-vm, server: test98.alicesss.repl.co, port: 443, type: vmess, uuid: 07efa45f-7c1b-4fca-8c1a-dba8ea554551, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, servername: test98.alicesss.repl.co, network: ws, ws-opts: {path: /07efa45f-7c1b-4fca-8c1a-dba8ea554551-vmess, headers: {Host: test98.alicesss.repl.co}}} 3 | - {name: 03-rep-vm, server: test97.alicesss.repl.co, port: 443, type: vmess, uuid: 2899e4e3-b57c-4af1-ad84-6dbf41fcccad, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, servername: test97.alicesss.repl.co, network: ws, ws-opts: {path: /2899e4e3-b57c-4af1-ad84-6dbf41fcccad-vmess, headers: {Host: test97.alicesss.repl.co}}} 4 | - {name: 04-rep-vm, server: test96.alicesss.repl.co, port: 443, type: vmess, uuid: 6978644c-611e-47c9-be8c-2b28ebf62f24, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, servername: test96.alicesss.repl.co, network: ws, ws-opts: {path: /6978644c-611e-47c9-be8c-2b28ebf62f24-vmess, headers: {Host: test96.alicesss.repl.co}}} 5 | - {name: 01-rep-tro, server: we.alicesss.repl.co, port: 443, type: trojan, password: 68ac8a42-30ca-43fc-bf9b-2f4ceb1eade8, sni: we.alicesss.repl.co, skip-cert-verify: false} 6 | - {name: 02-rep-tro, server: test98.alicesss.repl.co, port: 443, type: trojan, password: 07efa45f-7c1b-4fca-8c1a-dba8ea554551, sni: test98.alicesss.repl.co, skip-cert-verify: false} 7 | - {name: 03-rep-tro, server: test97.alicesss.repl.co, port: 443, type: trojan, password: 2899e4e3-b57c-4af1-ad84-6dbf41fcccad, sni: test97.alicesss.repl.co, skip-cert-verify: false} 8 | - {name: 04-rep-tro, server: test96.alicesss.repl.co, port: 443, type: trojan, password: 6978644c-611e-47c9-be8c-2b28ebf62f24, sni: test96.alicesss.repl.co, skip-cert-verify: false} 9 | -------------------------------------------------------------------------------- /sub/list/59.txt: -------------------------------------------------------------------------------- 1 | - {name: 快嘴kkzui.com_1, server: bs1.jymzffbquawl.com, port: 3607, type: ss, cipher: rc4-md5, password: RenzheCloudSS, plugin: obfs, plugin-opts: {mode: http, host: c7ea4198729.microsoft.com}} 2 | - {name: 快嘴kkzui.com_13, server: pr3.jymzffbquawl.com, port: 6600, type: ss, cipher: rc4-md5, password: RenzheCloudSS, plugin: obfs, plugin-opts: {mode: http, host: c7ea4198729.microsoft.com}} 3 | - {name: 快嘴kkzui.com_11, server: pr3.jymzffbquawl.com, port: 6601, type: ss, cipher: rc4-md5, password: RenzheCloudSS, plugin: obfs, plugin-opts: {mode: http, host: c7ea4198729.microsoft.com}} 4 | - {name: 快嘴kkzui.com_2, server: pr1.jymzffbquawl.com, port: 3600, type: ss, cipher: rc4-md5, password: RenzheCloudSS, plugin: obfs, plugin-opts: {mode: http, host: c7ea4198729.microsoft.com}} 5 | - {name: 快嘴kkzui.com_14, server: bs3.jymzffbquawl.com, port: 6603, type: ss, cipher: rc4-md5, password: RenzheCloudSS, plugin: obfs, plugin-opts: {mode: http, host: c7ea4198729.microsoft.com}} 6 | - {name: 快嘴kkzui.com_5, server: pr3.jymzffbquawl.com, port: 3036, type: ss, cipher: rc4-md5, password: RenzheCloudSS, plugin: obfs, plugin-opts: {mode: http, host: c7ea4198729.microsoft.com}} 7 | - {name: "🇺🇸 [vmess]🇺🇸[US]us02.gogogoo.cyou:443(db5d1aa3-908b-44d1-be0a-4e6a8d4e4cda)", server: us02.gogogoo.cyou, port: 443, type: vmess, uuid: db5d1aa3-908b-44d1-be0a-4e6a8d4e4cda, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /go, headers: {Host: us02.gogogoo.cyou}}} 8 | - {name: 快嘴kkzui.com_12, server: bs3.jymzffbquawl.com, port: 6600, type: ss, cipher: rc4-md5, password: RenzheCloudSS, plugin: obfs, plugin-opts: {mode: http, host: c7ea4198729.microsoft.com}} 9 | - {name: 快嘴kkzui.com_15, server: pr1.jymzffbquawl.com, port: 3605, type: ss, cipher: rc4-md5, password: RenzheCloudSS, plugin: obfs, plugin-opts: {mode: http, host: c7ea4198729.microsoft.com}} 10 | - {name: 快嘴kkzui.com_16, server: bs3.jymzffbquawl.com, port: 3046, type: ss, cipher: rc4-md5, password: RenzheCloudSS, plugin: obfs, plugin-opts: {mode: http, host: c7ea4198729.microsoft.com}} 11 | - {name: 快嘴kkzui.com_3, server: pr3.jymzffbquawl.com, port: 5601, type: ss, cipher: rc4-md5, password: RenzheCloudSS, plugin: obfs, plugin-opts: {mode: http, host: c7ea4198729.microsoft.com}} 12 | - {name: 🇬🇧 github.com/mianfeifq |1.63| 甲骨文伦敦AMD1trojan, server: jgwld1.gaox.ml, port: 443, type: trojan, password: 02e653c9-7c93-46a9-999d-11834bd0c577, sni: jgwld1.gaox.ml, skip-cert-verify: false} 13 | - {name: 快嘴kkzui.com_7, server: pr3.jymzffbquawl.com, port: 5600, type: ss, cipher: rc4-md5, password: RenzheCloudSS, plugin: obfs, plugin-opts: {mode: http, host: c7ea4198729.microsoft.com}} 14 | - {name: 🇺🇸 github.com/freefq - 美国CloudFlare公司CDN节点 4, server: techplanet.today, port: 2083, type: vmess, uuid: 8a21b84d-183e-450d-ec82-8d45855d8180, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: xui.mycf.ml}}} 15 | - {name: 快嘴kkzui.com_10, server: bs3.jymzffbquawl.com, port: 6602, type: ss, cipher: rc4-md5, password: RenzheCloudSS, plugin: obfs, plugin-opts: {mode: http, host: c7ea4198729.microsoft.com}} 16 | - {name: 快嘴kkzui.com_8, server: bs3.jymzffbquawl.com, port: 6601, type: ss, cipher: rc4-md5, password: RenzheCloudSS, plugin: obfs, plugin-opts: {mode: http, host: c7ea4198729.microsoft.com}} 17 | -------------------------------------------------------------------------------- /sub/list/61.txt: -------------------------------------------------------------------------------- 1 | - {name: 🇺🇸 美国1, server: 183.236.51.2, port: 10819, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 2 | - {name: 🇺🇸 美国2, server: 183.236.51.8, port: 10821, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 3 | - {name: 🇺🇸 美国3, server: 183.236.51.7, port: 10823, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 4 | - {name: 🇺🇸 美国4, server: 183.236.51.6, port: 10820, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 5 | - {name: 🇺🇸 美国5, server: 183.236.51.7, port: 10822, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 6 | - {name: 🇺🇸 美国6, server: 183.236.51.8, port: 10825, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 7 | - {name: 🇺🇸 美国7, server: 183.236.51.6, port: 10824, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 8 | - {name: 🇺🇸 美国8, server: 183.236.51.9, port: 10822, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 9 | - {name: 🇺🇸 美国9, server: 183.236.51.9, port: 10820, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 10 | - {name: 🇺🇸 美国10, server: 183.236.51.9, port: 10824, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 11 | - {name: 🇺🇸 美国11, server: 183.236.51.9, port: 10825, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 12 | - {name: 🇺🇸 美国12, server: 183.236.51.3, port: 10819, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 13 | - {name: 🇺🇸 美国13, server: 183.236.51.7, port: 10826, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 14 | - {name: 🇺🇸 美国14, server: 183.236.51.6, port: 10822, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 15 | - {name: 🇺🇸 美国15, server: 183.236.51.8, port: 10823, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 16 | - {name: 🇺🇸 美国16, server: 183.236.51.4, port: 10825, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 17 | - {name: 🇺🇸 美国17, server: 183.236.51.2, port: 10820, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 18 | - {name: 🇺🇸 美国18, server: 183.236.51.8, port: 10824, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 19 | - {name: 🇺🇸 美国19, server: 183.236.51.2, port: 10826, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 20 | - {name: 🇺🇸 美国20, server: 183.236.51.5, port: 10826, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 21 | - {name: 🇺🇸 美国21, server: 183.236.51.9, port: 10819, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 22 | - {name: 🇺🇸 美国22, server: 183.236.51.7, port: 10821, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 23 | - {name: 🇺🇸 美国23, server: 183.236.51.7, port: 10819, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 24 | - {name: 🇺🇸 美国24, server: 183.236.51.4, port: 10826, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 25 | - {name: 🇺🇸 美国25, server: 183.236.51.6, port: 10823, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 26 | - {name: 🇺🇸 美国26, server: 183.236.51.5, port: 10823, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 27 | - {name: 🇺🇸 美国27, server: 183.236.51.5, port: 10822, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 28 | - {name: 🇺🇸 美国28, server: 183.236.51.8, port: 10819, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 29 | - {name: 🇺🇸 美国29, server: 183.236.51.9, port: 10826, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 30 | - {name: 🇺🇸 美国30, server: 183.236.51.2, port: 10823, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 31 | - {name: 🇺🇸 美国31, server: 183.236.51.3, port: 10823, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 32 | - {name: 🇺🇸 美国32, server: 183.236.51.4, port: 10824, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 33 | - {name: 🇺🇸 美国33, server: 183.236.51.2, port: 10824, type: trojan, password: 7d223bae-e183-4bf6-89c3-e327b15df490, skip-cert-verify: false} 34 | - {name: 🇦🇺 Australia-澳大利亚, server: 146.56.179.67, port: 40005, type: trojan, password: cc05b267-2e17-4e73-92f0-2cf603aa5997, skip-cert-verify: false} 35 | - {name: 🇦🇺 Australia-澳大利亚 2, server: 146.56.179.67, port: 40005, type: trojan, password: 57edfecf-5694-4a34-8072-54a4f0636a62, skip-cert-verify: false} 36 | - {name: 🇺🇸 美国 3, server: east.eeeeeef998.buzz, port: 15003, type: trojan, password: 414dff55-922a-4dc8-b5d3-b6517942b25a, sni: data.steamdownload.top, skip-cert-verify: false} 37 | - {name: 🇺🇸 美国 5, server: east.eeeeeef998.buzz, port: 15005, type: trojan, password: 414dff55-922a-4dc8-b5d3-b6517942b25a, sni: data.steamdownload.top, skip-cert-verify: false} 38 | - {name: 🇺🇸 美国 6, server: east.eeeeeef998.buzz, port: 15006, type: trojan, password: 414dff55-922a-4dc8-b5d3-b6517942b25a, sni: data.steamdownload.top, skip-cert-verify: false} 39 | - {name: 🇺🇸 美国 2, server: east.eeeeeef998.buzz, port: 15002, type: trojan, password: 414dff55-922a-4dc8-b5d3-b6517942b25a, sni: data.steamdownload.top, skip-cert-verify: false} 40 | -------------------------------------------------------------------------------- /sub/list/64.txt: -------------------------------------------------------------------------------- 1 | - {name: https://github.com/YoulianBoshi, server: 127.0.0.1, port: 80, type: vmess, uuid: c52e27cd-9c9c-44a2-9371-125b1ea8953c, alterId: 64, cipher: auto, tls: false, skip-cert-verify: false, network: h2, h2-opts: {path: /}} 2 | - {name: 🇫🇷 法国, server: fr.sangyu.tw, port: 443, type: vmess, uuid: ce14d788-0f79-491e-85ca-05240612f28a, alterId: 233, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: fr.sangyu.tw}}} 3 | - {name: 🇫🇷 法国 2, server: a.v2ray.world, port: 443, type: vmess, uuid: 05b6b25b-bb5d-4dcd-9710-31e374ffa584, alterId: 64, cipher: auto, tls: true, skip-cert-verify: false, network: h2, h2-opts: {path: /fgq, host: [a.v2ray.world]}} 4 | - {name: 🇺🇸 美国, server: mike.fuckwan73.ml, port: 443, type: vmess, uuid: 8c793b65-9d27-4a74-b952-7c679dac3391, alterId: 233, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: /163, headers: {Host: mike.fuckwan73.ml}}} 5 | - {name: 🇬🇧 英国, server: 51.15.119.36, port: 443, type: vmess, uuid: 05b6b25b-bb5d-4dcd-9710-31e374ffa584, alterId: 64, cipher: auto, tls: true, skip-cert-verify: false, network: h2, h2-opts: {path: /fgq}} 6 | - {name: 🇯🇵 日本, server: 172.104.123.158, port: 8097, type: ss, cipher: aes-256-cfb, password: eIW0Dnk69454e6nSwuspv9DmS201tQ0D} 7 | - {name: 🇺🇸 美国 2, server: 45.79.111.214, port: 443, type: ss, cipher: aes-256-cfb, password: 9d6cceaa373bf2c8acb22e60b6a58be6} 8 | -------------------------------------------------------------------------------- /sub/list/65.txt: -------------------------------------------------------------------------------- 1 | - {name: 🇬🇧 英国-3.63MB/s, server: series-a2-mec.samanehha.co, port: 443, type: ss, cipher: chacha20-ietf-poly1305, password: u17T3BvpYaaiuW2c} 2 | - {name: 🇻🇳 越南-1.44MB/s, server: 103.154.63.16, port: 443, type: trojan, password: 5bae27f5-3b8e-48f3-b91f-30fc680ea78f, sni: lienquan.garena.vn, skip-cert-verify: false} 3 | - {name: 🇸🇬 新加坡-163.9KB/s, server: 103.172.116.103, port: 9046, type: ss, cipher: aes-256-cfb, password: NvS8N4Vf8qAGPSCL} 4 | - {name: 中转节点-1.48MB/s, server: 183.236.48.169, port: 1002, type: vmess, uuid: 229ccd44-c56c-3947-88de-849dd70c180d, alterId: 2, cipher: auto, tls: false, skip-cert-verify: false} 5 | - {name: 🇬🇧 英国-1.77MB/s, server: series-a2-me.samanehha.co, port: 443, type: ss, cipher: chacha20-poly1305, password: Bog0ELmMM9DSxDdQ} 6 | - {name: 🇺🇸 美国-2.72MB/s, server: 129.146.113.254, port: 43121, type: vmess, uuid: d53b39e2-925e-45b6-9389-46b9fa95878b, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /}} 7 | - {name: 🇰🇷 韩国-257.7KB/s, server: 43.201.55.242, port: 443, type: ss, cipher: aes-256-cfb, password: amazonskr05} 8 | - {name: 🇨🇳 台湾-4.61MB/s, server: nb24.ntbq.dynu.net, port: 4443, type: vmess, uuid: 1cc969d3-1df8-4794-a5cc-9231fe0e4710, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false} 9 | - {name: 🇦🇺 澳大利亚-2.40MB/s, server: 192.65.217.183, port: 443, type: trojan, password: f34ec9d8-3ae0-46ba-94e7-a03eaf2af651, sni: psg1.pqjc.buzz, skip-cert-verify: false} 10 | - {name: 🇭🇰 香港-331.9KB/s, server: 1.65.223.223, port: 443, type: ss, cipher: aes-128-gcm, password: a-wym4ovY4Yw, plugin: v2ray-plugin, plugin-opts: {mode: websocket, host: "", path: "", tls: false, mux: true, skip-cert-verify: false}} 11 | - {name: 未知国家-187.3KB/s, server: cfcdn3.sanfencdn9.com, port: 80, type: vmess, uuid: d0a3e08a-d26f-45bd-ba3c-6387f9182633, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /video/ibCT6z55, headers: {Host: agzbjszujp4.yofnhkfc.xyz}}} 12 | - {name: 🇬🇧 英国-200.3KB/s, server: 172.99.190.109, port: 443, type: vmess, uuid: 03fcc618-b93d-6796-6aed-8a38c975d581, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: linkvws}} 13 | - {name: 未知国家-1.73MB/s, server: 104.17.25.1, port: 80, type: vmess, uuid: 83c19463-f966-4adb-a7d8-b127825ffab2, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: kr.catnipballs.gay}}} 14 | - {name: 🇻🇳 越南-144.2KB/s, server: skyht2.vpndata.vn, port: 80, type: vmess, uuid: fbccfed7-1aeb-416a-a4fd-7af1747f9f3b, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /VPNDATA.VPN, headers: {Host: lienquan.garena.vn}}} 15 | - {name: 🇭🇰 香港-408.6KB/s, server: 47.243.59.144, port: 443, type: ss, cipher: aes-128-gcm, password: a-wym4ovY4Yw, plugin: v2ray-plugin, plugin-opts: {mode: websocket, host: "", path: "", tls: false, mux: true, skip-cert-verify: false}} 16 | - {name: 🇸🇬 新加坡-149.6KB/s, server: 103.172.116.103, port: 9060, type: ss, cipher: aes-256-cfb, password: ueLXVkvh4hckhErQ} 17 | - {name: 🇭🇰 香港-1.39MB/s, server: 1.65.139.54, port: 443, type: ss, cipher: aes-128-gcm, password: a-wym4ovY4Yw, plugin: v2ray-plugin, plugin-opts: {mode: websocket, host: "", path: "", tls: false, mux: true, skip-cert-verify: false}} 18 | - {name: 🇰🇷 韩国-336.8KB/s, server: p220.panda001.net, port: 53258, type: ss, cipher: aes-256-cfb, password: qwerREWQ@@} 19 | - {name: 🇸🇬 新加坡-171.2KB/s, server: 103.172.116.103, port: 9018, type: ss, cipher: aes-256-cfb, password: fG2artUmHfNT2cX7} 20 | - {name: 🇭🇰 香港-258.1KB/s, server: 1.65.223.223, port: 443, type: ss, cipher: aes-128-gcm, password: a-wym4ovY4Yw, plugin: v2ray-plugin, plugin-opts: {mode: websocket, host: "", path: "", tls: false, mux: true, skip-cert-verify: false}} 21 | - {name: 中转节点-118.9KB/s, server: xibaozi.19890604.day, port: 10838, type: trojan, password: 8c20a85b-f70f-48aa-a607-92d57eddc92f, sni: cloudflare.node-ssl.cdn-alibaba.com, skip-cert-verify: false} 22 | - {name: 🇵🇱 波兰-118.8KB/s, server: 217.30.10.68, port: 9038, type: ss, cipher: aes-256-cfb, password: gYCYXfkUQEs2TaJQ} 23 | - {name: 🇸🇬 新加坡-411.1KB/s, server: 103.172.116.103, port: 9031, type: ss, cipher: aes-256-cfb, password: BwcAUZk8hUFAkDGN} 24 | - {name: 中转节点-218.4KB/s, server: xibaozi.19890604.day, port: 10846, type: trojan, password: 8c20a85b-f70f-48aa-a607-92d57eddc92f, sni: cloudflare.node-ssl.cdn-alibaba.com, skip-cert-verify: false} 25 | - {name: 🇸🇬 新加坡-749.3KB/s, server: 103.172.116.103, port: 9014, type: ss, cipher: aes-256-cfb, password: KnJGad3FqTvjqbaX} 26 | - {name: 🇭🇰 香港-934.7KB/s, server: 1.65.139.54, port: 443, type: ss, cipher: aes-128-gcm, password: a-wym4ovY4Yw, plugin: v2ray-plugin, plugin-opts: {mode: websocket, host: "", path: "", tls: false, mux: true, skip-cert-verify: false}} 27 | - {name: 未知国家-184.4KB/s, server: cfcdn2.sanfencdn9.com, port: 2052, type: vmess, uuid: d0a3e08a-d26f-45bd-ba3c-6387f9182633, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /video/c9efxRCi, headers: {Host: 7nAi74jJsg1.yofnhkfc.xyz}}} 28 | - {name: 🇸🇬 新加坡-410.9KB/s, server: 103.172.116.103, port: 9064, type: ss, cipher: aes-256-cfb, password: cp8pRSUAyLhTfVWH} 29 | - {name: 🇵🇱 波兰-131.5KB/s, server: 217.30.10.68, port: 9079, type: ss, cipher: aes-256-cfb, password: TPqX8edgbAURcAMb} 30 | - {name: 🇰🇷 韩国-230.6KB/s, server: 43.201.55.242, port: 443, type: ss, cipher: aes-256-cfb, password: amazonskr05} 31 | - {name: 🇺🇸 美国-2.09MB/s, server: 129.146.113.254, port: 43121, type: vmess, uuid: d53b39e2-925e-45b6-9389-46b9fa95878b, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /}} 32 | - {name: 🇭🇰 香港-245.7KB/s, server: 47.243.59.144, port: 443, type: ss, cipher: aes-128-gcm, password: a-wym4ovY4Yw, plugin: v2ray-plugin, plugin-opts: {mode: websocket, host: "", path: "", tls: false, mux: true, skip-cert-verify: false}} 33 | - {name: 🇸🇬 新加坡-112.1KB/s, server: 103.172.116.103, port: 9060, type: ss, cipher: aes-256-cfb, password: ueLXVkvh4hckhErQ} 34 | - {name: 🇯🇵 日本-1.35MB/s, server: 43.207.197.15, port: 443, type: ss, cipher: aes-256-cfb, password: amazonskr05} 35 | - {name: 🇸🇬 新加坡-166.5KB/s, server: 103.172.116.103, port: 9056, type: ss, cipher: aes-256-cfb, password: rNBfNuuANFCAk7KB} 36 | - {name: 未知国家-2.01MB/s, server: 104.17.25.1, port: 80, type: vmess, uuid: 83c19463-f966-4adb-a7d8-b127825ffab2, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: kr.catnipballs.gay}}} 37 | - {name: 🇺🇸 美国-108.9KB/s, server: cfcdn3.sanfencdn9.com, port: 80, type: vmess, uuid: d0a3e08a-d26f-45bd-ba3c-6387f9182633, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /video/ibCT6z55, headers: {Host: agzbjszujp4.yofnhkfc.xyz}}} 38 | - {name: 🇯🇵 日本-3.11MB/s, server: 13.231.78.35, port: 443, type: ss, cipher: aes-256-cfb, password: amazonskr05} 39 | - {name: 🇸🇬 新加坡-102.8KB/s, server: 103.172.116.103, port: 9031, type: ss, cipher: aes-256-cfb, password: BwcAUZk8hUFAkDGN} 40 | - {name: 中转节点-1.47MB/s, server: 183.236.48.169, port: 1002, type: vmess, uuid: 229ccd44-c56c-3947-88de-849dd70c180d, alterId: 2, cipher: auto, tls: false, skip-cert-verify: false} 41 | - {name: 🇰🇷 韩国-183.6KB/s, server: 43.203.119.237, port: 443, type: ss, cipher: aes-256-cfb, password: amazonskr05} 42 | - {name: 🇵🇱 波兰-185.9KB/s, server: 217.30.10.68, port: 9079, type: ss, cipher: aes-256-cfb, password: TPqX8edgbAURcAMb} 43 | - {name: 🇵🇱 波兰-143.6KB/s, server: 217.30.10.68, port: 9033, type: ss, cipher: aes-256-cfb, password: UTJA57ypk2XKQpnm} 44 | -------------------------------------------------------------------------------- /sub/list/73.txt: -------------------------------------------------------------------------------- 1 | - {name: 🇺🇸 United States 01 @nodpai, server: hytron.io, port: 8080, type: vmess, uuid: 9c4a3ad3-4f1d-4138-e7ee-8bb5325b411d, alterId: 0, cipher: auto, tls: false, skip-cert-verify: false, network: ws, ws-opts: {path: /, headers: {Host: hytron.io}}} 2 | - {name: 🇬🇧 United Kingdom 01 @nodpai, server: 172.99.190.109, port: 443, type: vmess, uuid: 03fcc618-b93d-6796-6aed-8a38c975d581, alterId: 0, cipher: auto, tls: true, skip-cert-verify: false, network: ws, ws-opts: {path: linkvws}} 3 | -------------------------------------------------------------------------------- /sub/splitted/ssr.txt: -------------------------------------------------------------------------------- 1 | ssr://anAtYW00OC02LmVxbm9kZS5uZXQ6ODA4MTpvcmlnaW46YWVzLTI1Ni1jZmI6dGxzMS4yX3RpY2tldF9hdXRoOlpVRnZhMkpoUkU0Mi8/b2Jmc3BhcmFtPSZyZW1hcmtzPThKJTJCSHIlMkZDZmg3VktVQzAxTkM0eU16Z3VNVFl3TGpjeExUQXdPREUlM0QmcHJvdG9wYXJhbT0= 2 | ssr://NDIuMTU3LjE5Ni4xMDM6MTAxMjA6YXV0aF9hZXMxMjhfbWQ1OnJjNC1tZDU6aHR0cF9wb3N0OldXczBWV1J5VDNsUlp3PT0vP29iZnNwYXJhbT1ZV3BoZUM1dGFXTnliM052Wm5RdVkyOXQmcmVtYXJrcz04SiUyQkhxUENmaDdORFRpMDBNaTR4TlRjdU1UazJMakV3TXkweE9UQTUmcHJvdG9wYXJhbT0= 3 | ssr://NDIuMTU3LjE5Ni4xMDQ6MTA5Njc6YXV0aF9hZXMxMjhfbWQ1OmFlcy0yNTYtY2ZiOnRsczEuMl90aWNrZXRfYXV0aDpka050Y0RoQlRHbG9OZz09Lz9vYmZzcGFyYW09WVdwaGVDNXRhV055YjNOdlpuUXVZMjl0JnJlbWFya3M9OEolMkJIcVBDZmg3TkRUaTAwTWk0eE5UY3VNVGsyTGpFd05DMHhPVEV3JnByb3RvcGFyYW09 4 | ssr://NDIuMTU3LjE5Ni4xMDQ6MjAwMzc6YXV0aF9hZXMxMjhfbWQ1OmFlcy0yNTYtY2ZiOmh0dHBfcG9zdDpRMWRUV25OalRHdHFaZz09Lz9vYmZzcGFyYW09WVdwaGVDNXRhV055YjNOdlpuUXVZMjl0JnJlbWFya3M9OEolMkJIcVBDZmg3TkRUaTAwTWk0eE5UY3VNVGsyTGpFd05DMHhPVEV4JnByb3RvcGFyYW09 5 | ssr://MTgzLjI0MC4yMjAuODQ6MTE4MTQ6YXV0aF9hZXMxMjhfc2hhMTpjaGFjaGEyMC1pZXRmOnRsczEuMl90aWNrZXRfYXV0aDpSbWhpWlRCNi8/b2Jmc3BhcmFtPVpUQmxNelV5TkM1dGFXTnliM052Wm5RdVkyOXQmcmVtYXJrcz04SiUyQkhxUENmaDdORFRpMHhPRE11TWpRd0xqSXlNQzQ0TkMweU1URXomcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 6 | ssr://MTIwLjIzMi4yMzQuMjQ2OjExNDI4OmF1dGhfYWVzMTI4X3NoYTE6Y2hhY2hhMjAtaWV0Zjp0bHMxLjJfdGlja2V0X2F1dGg6Um1oaVpUQjYvP29iZnNwYXJhbT1aVEJsTXpVeU5DNXRhV055YjNOdlpuUXVZMjl0JnJlbWFya3M9OEolMkJIcVBDZmg3TkRUaTB4TWpBdU1qTXlMakl6TkM0eU5EWXRNakV4TkElM0QlM0QmcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 7 | ssr://MTgzLjI0MC4yMjAuODQ6MTE4NDU6YXV0aF9hZXMxMjhfc2hhMTpjaGFjaGEyMC1pZXRmOnRsczEuMl90aWNrZXRfYXV0aDpSbWhpWlRCNi8/b2Jmc3BhcmFtPVpUQmxNelV5TkM1dGFXTnliM052Wm5RdVkyOXQmcmVtYXJrcz04SiUyQkhxUENmaDdORFRpMHhPRE11TWpRd0xqSXlNQzQ0TkMweU1URTEmcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 8 | ssr://MTgzLjI0MC4yMjAuODQ6MTE4MTA6YXV0aF9hZXMxMjhfc2hhMTpjaGFjaGEyMC1pZXRmOnRsczEuMl90aWNrZXRfYXV0aDpSbWhpWlRCNi8/b2Jmc3BhcmFtPVpUQmxNelV5TkM1dGFXTnliM052Wm5RdVkyOXQmcmVtYXJrcz04SiUyQkhxUENmaDdORFRpMHhPRE11TWpRd0xqSXlNQzQ0TkMweU1URTImcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 9 | ssr://MTIwLjIzMi4yMzQuMjQ2OjExNDIxOmF1dGhfYWVzMTI4X3NoYTE6Y2hhY2hhMjAtaWV0Zjp0bHMxLjJfdGlja2V0X2F1dGg6Um1oaVpUQjYvP29iZnNwYXJhbT1aVEJsTXpVeU5DNXRhV055YjNOdlpuUXVZMjl0JnJlbWFya3M9OEolMkJIcVBDZmg3TkRUaTB4TWpBdU1qTXlMakl6TkM0eU5EWXRNakV4TnclM0QlM0QmcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 10 | ssr://MTIwLjIzMi4yMzQuMjQ2OjExNDIwOmF1dGhfYWVzMTI4X3NoYTE6Y2hhY2hhMjAtaWV0Zjp0bHMxLjJfdGlja2V0X2F1dGg6Um1oaVpUQjYvP29iZnNwYXJhbT1aVEJsTXpVeU5DNXRhV055YjNOdlpuUXVZMjl0JnJlbWFya3M9OEolMkJIcVBDZmg3TkRUaTB4TWpBdU1qTXlMakl6TkM0eU5EWXRNakV4T0ElM0QlM0QmcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 11 | ssr://MTgzLjI0MC4yMjAuODQ6MTE4MDI6YXV0aF9hZXMxMjhfc2hhMTpjaGFjaGEyMC1pZXRmOnRsczEuMl90aWNrZXRfYXV0aDpSbWhpWlRCNi8/b2Jmc3BhcmFtPVpUQmxNelV5TkM1dGFXTnliM052Wm5RdVkyOXQmcmVtYXJrcz04SiUyQkhxUENmaDdORFRpMHhPRE11TWpRd0xqSXlNQzQ0TkMweU1URTUmcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 12 | ssr://MTgzLjI0MC4yMjAuODQ6MTE4NDI6YXV0aF9hZXMxMjhfc2hhMTpjaGFjaGEyMC1pZXRmOnRsczEuMl90aWNrZXRfYXV0aDpSbWhpWlRCNi8/b2Jmc3BhcmFtPVpUQmxNelV5TkM1dGFXTnliM052Wm5RdVkyOXQmcmVtYXJrcz04SiUyQkhxUENmaDdORFRpMHhPRE11TWpRd0xqSXlNQzQ0TkMweU1USXcmcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 13 | ssr://MTIwLjIzMi4yMzQuMjQ2OjExNDI0OmF1dGhfYWVzMTI4X3NoYTE6Y2hhY2hhMjAtaWV0Zjp0bHMxLjJfdGlja2V0X2F1dGg6Um1oaVpUQjYvP29iZnNwYXJhbT1aVEJsTXpVeU5DNXRhV055YjNOdlpuUXVZMjl0JnJlbWFya3M9OEolMkJIcVBDZmg3TkRUaTB4TWpBdU1qTXlMakl6TkM0eU5EWXRNakV5TVElM0QlM0QmcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 14 | ssr://MTgzLjI0MC4yMjAuODQ6MTE4MTI6YXV0aF9hZXMxMjhfc2hhMTpjaGFjaGEyMC1pZXRmOnRsczEuMl90aWNrZXRfYXV0aDpSbWhpWlRCNi8/b2Jmc3BhcmFtPVpUQmxNelV5TkM1dGFXTnliM052Wm5RdVkyOXQmcmVtYXJrcz04SiUyQkhxUENmaDdORFRpMHhPRE11TWpRd0xqSXlNQzQ0TkMweU1USXkmcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 15 | ssr://MTgzLjI0MC4yMjAuODQ6MTE4NTE6YXV0aF9hZXMxMjhfc2hhMTpjaGFjaGEyMC1pZXRmOnRsczEuMl90aWNrZXRfYXV0aDpSbWhpWlRCNi8/b2Jmc3BhcmFtPVpUQmxNelV5TkM1dGFXTnliM052Wm5RdVkyOXQmcmVtYXJrcz04SiUyQkhxUENmaDdORFRpMHhPRE11TWpRd0xqSXlNQzQ0TkMweU1USXomcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 16 | ssr://MTIwLjIzMi4yMzQuMjQ2OjExNDI5OmF1dGhfYWVzMTI4X3NoYTE6Y2hhY2hhMjAtaWV0Zjp0bHMxLjJfdGlja2V0X2F1dGg6Um1oaVpUQjYvP29iZnNwYXJhbT1aVEJsTXpVeU5DNXRhV055YjNOdlpuUXVZMjl0JnJlbWFya3M9OEolMkJIcVBDZmg3TkRUaTB4TWpBdU1qTXlMakl6TkM0eU5EWXRNakV5TkElM0QlM0QmcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 17 | ssr://MTIwLjIzMi4yMzQuMjQ2OjExNDIyOmF1dGhfYWVzMTI4X3NoYTE6Y2hhY2hhMjAtaWV0Zjp0bHMxLjJfdGlja2V0X2F1dGg6Um1oaVpUQjYvP29iZnNwYXJhbT1aVEJsTXpVeU5DNXRhV055YjNOdlpuUXVZMjl0JnJlbWFya3M9OEolMkJIcVBDZmg3TkRUaTB4TWpBdU1qTXlMakl6TkM0eU5EWXRNakV5TlElM0QlM0QmcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 18 | ssr://MTgzLjI0MC4yMjAuODQ6MTE4NDY6YXV0aF9hZXMxMjhfc2hhMTpjaGFjaGEyMC1pZXRmOnRsczEuMl90aWNrZXRfYXV0aDpSbWhpWlRCNi8/b2Jmc3BhcmFtPVpUQmxNelV5TkM1dGFXTnliM052Wm5RdVkyOXQmcmVtYXJrcz04SiUyQkhxUENmaDdORFRpMHhPRE11TWpRd0xqSXlNQzQ0TkMweU1USTImcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 19 | ssr://MTgzLjI0MC4yMjAuODQ6MTE4MDc6YXV0aF9hZXMxMjhfc2hhMTpjaGFjaGEyMC1pZXRmOnRsczEuMl90aWNrZXRfYXV0aDpSbWhpWlRCNi8/b2Jmc3BhcmFtPVpUQmxNelV5TkM1dGFXTnliM052Wm5RdVkyOXQmcmVtYXJrcz04SiUyQkhxUENmaDdORFRpMHhPRE11TWpRd0xqSXlNQzQ0TkMweU1USTMmcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 20 | ssr://MTgzLjI0MC4yMjAuODQ6MTE4MDY6YXV0aF9hZXMxMjhfc2hhMTpjaGFjaGEyMC1pZXRmOnRsczEuMl90aWNrZXRfYXV0aDpSbWhpWlRCNi8/b2Jmc3BhcmFtPVpUQmxNelV5TkM1dGFXTnliM052Wm5RdVkyOXQmcmVtYXJrcz04SiUyQkhxUENmaDdORFRpMHhPRE11TWpRd0xqSXlNQzQ0TkMweU1USTQmcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 21 | ssr://MTgzLjI0MC4yMjAuODQ6MzUyNDc6YXV0aF9hZXMxMjhfc2hhMTpjaGFjaGEyMC1pZXRmOnRsczEuMl90aWNrZXRfYXV0aDpSbWhpWlRCNi8/b2Jmc3BhcmFtPVpUQmxNelV5TkM1dGFXTnliM052Wm5RdVkyOXQmcmVtYXJrcz04SiUyQkhxUENmaDdORFRpMHhPRE11TWpRd0xqSXlNQzQ0TkMweU1USTUmcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 22 | ssr://MTIwLjIzMi4yMzQuMjQ2OjExNDIzOmF1dGhfYWVzMTI4X3NoYTE6Y2hhY2hhMjAtaWV0Zjp0bHMxLjJfdGlja2V0X2F1dGg6Um1oaVpUQjYvP29iZnNwYXJhbT1aVEJsTXpVeU5DNXRhV055YjNOdlpuUXVZMjl0JnJlbWFya3M9OEolMkJIcVBDZmg3TkRUaTB4TWpBdU1qTXlMakl6TkM0eU5EWXRNakV6TUElM0QlM0QmcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 23 | ssr://MTIwLjIzMi4yMzQuMjQ2OjExNDI3OmF1dGhfYWVzMTI4X3NoYTE6Y2hhY2hhMjAtaWV0Zjp0bHMxLjJfdGlja2V0X2F1dGg6Um1oaVpUQjYvP29iZnNwYXJhbT1aVEJsTXpVeU5DNXRhV055YjNOdlpuUXVZMjl0JnJlbWFya3M9OEolMkJIcVBDZmg3TkRUaTB4TWpBdU1qTXlMakl6TkM0eU5EWXRNakV6TVElM0QlM0QmcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 24 | ssr://MTgzLjI0MC4yMjAuODQ6MTE4MDQ6YXV0aF9hZXMxMjhfc2hhMTpjaGFjaGEyMC1pZXRmOnRsczEuMl90aWNrZXRfYXV0aDpSbWhpWlRCNi8/b2Jmc3BhcmFtPVpUQmxNelV5TkM1dGFXTnliM052Wm5RdVkyOXQmcmVtYXJrcz04SiUyQkhxUENmaDdORFRpMHhPRE11TWpRd0xqSXlNQzQ0TkMweU1UTXkmcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 25 | ssr://MTgzLjI0MC4yMjAuODQ6MTE4MDU6YXV0aF9hZXMxMjhfc2hhMTpjaGFjaGEyMC1pZXRmOnRsczEuMl90aWNrZXRfYXV0aDpSbWhpWlRCNi8/b2Jmc3BhcmFtPVpUQmxNelV5TkM1dGFXTnliM052Wm5RdVkyOXQmcmVtYXJrcz04SiUyQkhxUENmaDdORFRpMHhPRE11TWpRd0xqSXlNQzQ0TkMweU1UTXomcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 26 | ssr://MTIwLjIzMi4yMzQuMjQ2OjExNDQ1OmF1dGhfYWVzMTI4X3NoYTE6Y2hhY2hhMjAtaWV0Zjp0bHMxLjJfdGlja2V0X2F1dGg6Um1oaVpUQjYvP29iZnNwYXJhbT1aVEJsTXpVeU5DNXRhV055YjNOdlpuUXVZMjl0JnJlbWFya3M9OEolMkJIcVBDZmg3TkRUaTB4TWpBdU1qTXlMakl6TkM0eU5EWXRNakV6TkElM0QlM0QmcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 27 | ssr://MTIwLjIzMi4yMzQuMjQ2OjExNTAxOmF1dGhfYWVzMTI4X3NoYTE6Y2hhY2hhMjAtaWV0Zjp0bHMxLjJfdGlja2V0X2F1dGg6Um1oaVpUQjYvP29iZnNwYXJhbT1aVEJsTXpVeU5DNXRhV055YjNOdlpuUXVZMjl0JnJlbWFya3M9OEolMkJIcVBDZmg3TkRUaTB4TWpBdU1qTXlMakl6TkM0eU5EWXRNakV6TlElM0QlM0QmcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 28 | ssr://MTgzLjI0MC4yMjAuODQ6MTEwMDU6YXV0aF9hZXMxMjhfc2hhMTpjaGFjaGEyMC1pZXRmOnRsczEuMl90aWNrZXRfYXV0aDpSbWhpWlRCNi8/b2Jmc3BhcmFtPVpUQmxNelV5TkM1dGFXTnliM052Wm5RdVkyOXQmcmVtYXJrcz04SiUyQkhxUENmaDdORFRpMHhPRE11TWpRd0xqSXlNQzQ0TkMweU1UTTImcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 29 | ssr://MTgzLjI0MC4yMjAuODQ6MTE4MDM6YXV0aF9hZXMxMjhfc2hhMTpjaGFjaGEyMC1pZXRmOnRsczEuMl90aWNrZXRfYXV0aDpSbWhpWlRCNi8/b2Jmc3BhcmFtPVpUQmxNelV5TkM1dGFXTnliM052Wm5RdVkyOXQmcmVtYXJrcz04SiUyQkhxUENmaDdORFRpMHhPRE11TWpRd0xqSXlNQzQ0TkMweU1UTTMmcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 30 | ssr://MTgzLjI0MC4yMjAuODQ6MjI4NDg6YXV0aF9hZXMxMjhfc2hhMTpjaGFjaGEyMC1pZXRmOnRsczEuMl90aWNrZXRfYXV0aDpSbWhpWlRCNi8/b2Jmc3BhcmFtPVpUQmxNelV5TkM1dGFXTnliM052Wm5RdVkyOXQmcmVtYXJrcz04SiUyQkhxUENmaDdORFRpMHhPRE11TWpRd0xqSXlNQzQ0TkMweU1UTTQmcHJvdG9wYXJhbT1NalE2V25oaVJqaG0= 31 | ssr://ejAxMTUuc2VjdXJpdHktY2xvdWRmcm9udC1jZG4uY29tOjQyODMzOm9yaWdpbjphZXMtMjU2LWNmYjpodHRwX3NpbXBsZTpXWEJZTW05d1FtSnlabkZLZW5wTmN3PT0vP29iZnNwYXJhbT0mcmVtYXJrcz04SiUyQkhxUENmaDZaRFFTMDFNaTQyTUM0MU1pNHhPRFl0TVRRMU53JTNEJTNEJnByb3RvcGFyYW09 32 | ssr://ejAxMTcuc2VjdXJpdHktY2xvdWRmcm9udC1jZG4uY29tOjQyODMzOm9yaWdpbjphZXMtMjU2LWNmYjpodHRwX3NpbXBsZTpXWEJZTW05d1FtSnlabkZLZW5wTmN3PT0vP29iZnNwYXJhbT0mcmVtYXJrcz04SiUyQkh1UENmaDZwVFJTMHhNeTQxTUM0ME9DNDVOaTB6TnpVNCZwcm90b3BhcmFtPQ== 33 | ssr://ejAxMTEuc2VjdXJpdHktY2xvdWRmcm9udC1jZG4uY29tOjQyODMzOm9yaWdpbjphZXMtMjU2LWNmYjpodHRwX3NpbXBsZTpXWEJZTW05d1FtSnlabkZLZW5wTmN3PT0vP29iZnNwYXJhbT0mcmVtYXJrcz04SiUyQkhxJTJGQ2ZoN2RHVWkweE15NHpOeTR5TWpZdU1URTBMVE0zTlRrJTNEJnByb3RvcGFyYW09 34 | ssr://ejAxMTAuc2VjdXJpdHktY2xvdWRmcm9udC1jZG4uY29tOjQyODMzOm9yaWdpbjphZXMtMjU2LWNmYjpodHRwX3NpbXBsZTpXWEJZTW05d1FtSnlabkZLZW5wTmN3PT0vP29iZnNwYXJhbT1kM2QzTG0xcFkzSnZjMjltZEM1amIyMGpWWE5sY2kxQloyVnVkRHBOYjNwcGJHeGhMelV1TUNocFVHaHZibVU3UTFCVmFWQm9iMjVsVDFNeE1WODBYekZzYVd0bFRXRmpUMU5ZS1VGd2NHeGxWMlZpUzJsMEx6WXdNaTQwTGpZb1MwaFVUVXdzYkdsclpVZGxZMnR2S1ZabGNuTnBiMjR2TVRBdU1FMXZZbWxzWlM4eE5FUXlOMDFwWTNKdlRXVnpjMlZ1WjJWeUx6WXVOUzR4TTBGalkyVndkRG92UTI5dWJtVmpkR2x2YmpwclpXVndMV0ZzYVhabCZyZW1hcmtzPThKJTJCSHFmQ2ZoNnBFUlMwekxqYzRMalF6TGpreUxUTTNOakElM0QmcHJvdG9wYXJhbT0= 35 | ssr://ejAxMTYuc2VjdXJpdHktY2xvdWRmcm9udC1jZG4uY29tOjQyODMzOm9yaWdpbjphZXMtMjU2LWNmYjpodHRwX3NpbXBsZTpXWEJZTW05d1FtSnlabkZLZW5wTmN3PT0vP29iZnNwYXJhbT1kM2QzTG0xcFkzSnZjMjltZEM1amIyMGpWWE5sY2kxQloyVnVkRHBOYjNwcGJHeGhMelV1TUNocFVHaHZibVU3UTFCVmFWQm9iMjVsVDFNeE1WODBYekZzYVd0bFRXRmpUMU5ZS1VGd2NHeGxWMlZpUzJsMEx6WXdNaTQwTGpZb1MwaFVUVXdzYkdsclpVZGxZMnR2S1ZabGNuTnBiMjR2TVRBdU1FMXZZbWxzWlM4eE5FUXlOMDFwWTNKdlRXVnpjMlZ1WjJWeUx6WXVOUzR4TTBGalkyVndkRG92UTI5dWJtVmpkR2x2YmpwclpXVndMV0ZzYVhabCZyZW1hcmtzPThKJTJCSHJ2Q2ZoNnBKUlMwMU5DNDNOUzR4TWprdU9DMHpOell4JnByb3RvcGFyYW09 36 | ssr://MTIwLjE5OC43MS4xODQ6NTYwOmF1dGhfYWVzMTI4X21kNTpjaGFjaGEyMC1pZXRmOnBsYWluOmJXSnNZVzVyTVhCdmNuUT0vP29iZnNwYXJhbT1kQzV0WlM5MmNHNW9ZWFElM0QmcmVtYXJrcz04SiUyQkhxUENmaDdORFRpMHhNakF1TVRrNExqY3hMakU0TkMwek9ERTEmcHJvdG9wYXJhbT1Oak13TmpnNllXcG9hbVZwTVRJek5EVTI= 37 | ssr://ejAxMTQuc2VjdXJpdHktY2xvdWRmcm9udC1jZG4uY29tOjQyODMzOm9yaWdpbjphZXMtMjU2LWNmYjpodHRwX3NpbXBsZTpXWEJZTW05d1FtSnlabkZLZW5wTmN3PT0vP29iZnNwYXJhbT1QVDA5UFElM0QlM0QmcmVtYXJrcz04SiUyQkhydkNmaDdOSlRpMHhNeTR5TURBdU1UZzRMakl4TFRNNU5ESSUzRCZwcm90b3BhcmFtPVBUMDlQUSUzRCUzRA== 38 | ssr://ejAxMTMuc2VjdXJpdHktY2xvdWRmcm9udC1jZG4uY29tOjQyODMzOm9yaWdpbjphZXMtMjU2LWNmYjpodHRwX3NpbXBsZTpXWEJZTW05d1FtSnlabkZLZW5wTmN3PT0vP29iZnNwYXJhbT0mcmVtYXJrcz04SiUyQkhwdkNmaDdwQlZTMHhNeTR5TXpndU56a3VNelV0TXprMU53JTNEJTNEJnByb3RvcGFyYW09 39 | ssr://MTQuMjkuMTI0LjE2ODoyNDAwNTpvcmlnaW46YWVzLTEyOC1jZmI6cGxhaW46VVdGNlJXUmpWR2RpTVRVNVFDUXEvP29iZnNwYXJhbT0mcmVtYXJrcz04SiUyQkhxUENmaDdORFRpMHhOQzR5T1M0eE1qUXVNVFk0TFRReU1qRSUzRCZwcm90b3BhcmFtPQ== 40 | ssr://MzYuMTU2LjIyMi4yNTozMjk4NjphdXRoX2FlczEyOF9zaGExOmNoYWNoYTIwLWlldGY6aHR0cF9zaW1wbGU6ZW5wMGR6bHFhemRuZFE9PS8/b2Jmc3BhcmFtPVpUVmhZakEyTVRneExtMXBZM0p2YzI5bWRDNWpiMjAlM0QmcmVtYXJrcz04SiUyQkhxUENmaDdORFRpMHpOaTR4TlRZdU1qSXlMakkxTFRReU5UUSUzRCZwcm90b3BhcmFtPU5qRTRNVHB0T1c5RVNXTSUzRA== 41 | ssr://c3NyZnJlZS56aHVqaWNuMi5uZXQ6MTAwMDI6YXV0aF9jaGFpbl9hOmFlcy0yNTYtY2ZiOnRsczEuMl90aWNrZXRfYXV0aDpaRzl1WjNSaGFYZGhibWN1WTI5dC8/b2Jmc3BhcmFtPSZyZW1hcmtzPThKJTJCSHV2Q2ZoN2hWVXkwMk5DNHpNaTQzTGpFME1pMDBORFk1JnByb3RvcGFyYW09 42 | ssr://NjguMTgzLjc0LjYzOjEyOTI4Om9yaWdpbjphZXMtMjU2LWNmYjpodHRwX3NpbXBsZTpORE0yT1dJNU5nPT0vP29iZnNwYXJhbT0mcmVtYXJrcz04SiUyQkhxZkNmaDZwRVJTMDJPQzR4T0RNdU56UXVOak10TmpRMU9RJTNEJTNEJnByb3RvcGFyYW09 43 | ssr://ZWR1YWxsLmJ1enpsaW5lLm9yZzo1NjE6YXV0aF9hZXMxMjhfbWQ1OmNoYWNoYTIwLWlldGY6cGxhaW46YldKc1lXNXJNWEJ2Y25RPS8/b2Jmc3BhcmFtPSZyZW1hcmtzPThKJTJCSHFQQ2ZoN05EVGkweE1qQXVNak15TGpJd05pNHlOVEV0TnpBME13JTNEJTNEJnByb3RvcGFyYW09TlRVNU5UWTZNVEV4TVRFeA== 44 | ssr://OTQuMTAyLjU3LjE2MzoxMTcwODpvcmlnaW46YWVzLTI1Ni1jZmI6aHR0cF9zaW1wbGU6YzBWelkxQkNhVUZFT1Vza0prQTNPUT09Lz9vYmZzcGFyYW09VjFkWExsbFBWVTVGUlVRdVYwbE8mcmVtYXJrcz04SiUyQkhzJTJGQ2ZoN0ZPVEMwNU5DNHhNREl1TlRjdU1UWXpMVGMyTlRRJTNEJnByb3RvcGFyYW09VjFkWExsbFBWVTVGUlVRdVYwbE8= 45 | ssr://OTQuMTAyLjU3LjE2MzoxMTcwODpvcmlnaW46YWVzLTI1Ni1jZmI6aHR0cF9zaW1wbGU6YzBWelkxQkNhVUZFT1Vza0prQTNPUT09Lz9vYmZzcGFyYW09JnJlbWFya3M9OEolMkJIcyUyRkNmaDdGT1RDMDVOQzR4TURJdU5UY3VNVFl6TFRjMk56WSUzRCZwcm90b3BhcmFtPQ== -------------------------------------------------------------------------------- /sub/sub_list_airport.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "id": 5, 4 | "remarks": "RenaLio/Mux2sub", 5 | "site": "https://github.com/RenaLio/Mux2sub", 6 | "url": "", 7 | "update_method": "update_airports", 8 | "enabled": true 9 | } 10 | ] -------------------------------------------------------------------------------- /update/2210/test.txt: -------------------------------------------------------------------------------- 1 | dHJvamFuOi8vU3AzZURWcEA1MS43Ny43MS4xMzE6NDQzP2FsbG93SW5zZWN1cmU9MSMlRjAlOUYlODclQUIlRjAlOUYlODclQjdGUi01MS43Ny43MS4xMzEtMTg2XG5zczovL1lXVnpMVEkxTmkxblkyMDZabUZDUVc5RU5UUnJPRGRWU2tjM0AxMzQuMTk1LjE5Ni4xMzA6MjM3NSMlRjAlOUYlODclQTglRjAlOUYlODclQTZDQS0xMzQuMTk1LjE5Ni4xMzAtMDgy 2 | -------------------------------------------------------------------------------- /update/provider/config.yml: -------------------------------------------------------------------------------- 1 | port: 7890 2 | socks-port: 7891 3 | allow-lan: false 4 | mode: rule 5 | log-level: info 6 | external-controller: 127.0.0.1:9090 7 | 8 | # tun: 9 | # enable: true 10 | # stack: system 11 | # auto-route: true 12 | # auto-detect-interface: true 13 | # dns-hijack: 14 | # - 8.8.8.8:53 15 | # - tcp://8.8.8.8:53 16 | # - any:53 17 | # - tcp://any:53 18 | 19 | dns: 20 | enable: true 21 | ipv6: false 22 | enhanced-mode: fake-ip 23 | # use-hosts: true 24 | # fallback: [] 25 | # fake-ip-filter: [] 26 | # default-nameserver: 27 | nameserver: 28 | - 114.114.114.114 29 | - 223.5.5.5 30 | - 8.8.8.8 31 | - 9.9.9.9 32 | - 1.1.1.1 33 | - https://dns.google/dns-query # DNS OVER HTTPS 34 | - tls://dns.google:853 # DNS OVER TLS 35 | 36 | proxies: 37 | 38 | proxy-groups: 39 | - name: Global ©️ 40 | type: select 41 | proxies: 42 | - Global - UrlTest(Tiers) 🥶 43 | - Global - Fallback(Tiers) 🌎 44 | - Global - LoadBalance(ch) 🦄 45 | - Global - LoadBalance(rr) 🍄 46 | - Tier 1 🚀 47 | - Tier 2 ⚡️ 48 | - Tier 3 💎 49 | - Tier 4 🗿 50 | - name: Global - UrlTest(Tiers) 🥶 51 | type: url-test 52 | url: http://clients3.google.com/generate_204 53 | interval: 300 54 | proxies: 55 | - Tier 1 🚀 56 | - Tier 2 ⚡️ 57 | - Tier 3 💎 58 | - Tier 4 🗿 59 | - name: Global - Fallback(Tiers) 🌎 60 | type: fallback 61 | url: http://clients3.google.com/generate_204 62 | interval: 300 63 | proxies: 64 | - Tier 1 🚀 65 | - Tier 2 ⚡️ 66 | - Tier 3 💎 67 | - Tier 4 🗿 68 | 69 | #Load-balancers 70 | - name: Global - LoadBalance(ch) 🦄 71 | type: load-balance 72 | strategy: consistent-hashing 73 | url: http://clients3.google.com/generate_204 74 | interval: 300 75 | proxies: 76 | - Tier 1 🚀 77 | - Tier 2 ⚡️ 78 | - Tier 3 💎 79 | - Tier 4 🗿 80 | - name: Global - LoadBalance(rr) 🍄 81 | type: load-balance 82 | strategy: round-robin 83 | url: http://clients3.google.com/generate_204 84 | interval: 300 85 | proxies: 86 | - Tier 1 🚀 87 | - Tier 2 ⚡️ 88 | - Tier 3 💎 89 | - Tier 4 🗿 90 | 91 | #Url-tests 92 | - name: Tier 1 🚀 93 | type: url-test 94 | url: http://clients3.google.com/generate_204 95 | interval: 300 96 | tolerance: 100 97 | proxies: 98 | - name: Tier 2 ⚡️ 99 | type: url-test 100 | url: http://clients3.google.com/generate_204 101 | interval: 300 102 | tolerance: 100 103 | proxies: 104 | - name: Tier 3 💎 105 | type: url-test 106 | url: http://clients3.google.com/generate_204 107 | interval: 300 108 | tolerance: 100 109 | proxies: 110 | - name: Tier 4 🗿 111 | type: url-test 112 | url: http://clients3.google.com/generate_204 113 | interval: 300 114 | tolerance: 100 115 | proxies: 116 | 117 | # - name: Tier 1 🚀 Selector 118 | # type: select 119 | # proxies: 120 | # - name: Tier 2 ⚡️ Selector 121 | # type: select 122 | # proxies: 123 | # - name: Tier 3 💎 Selector 124 | # type: select 125 | # proxies: 126 | # - name: Tier 4 🗿 Selector 127 | # type: select 128 | # proxies: 129 | 130 | rules: 131 | - MATCH,Global ©️ 132 | -------------------------------------------------------------------------------- /update/provider/config.yml.old: -------------------------------------------------------------------------------- 1 | port: 7890 2 | socks-port: 7891 3 | allow-lan: false 4 | mode: rule 5 | log-level: info 6 | external-controller: 127.0.0.1:9090 7 | 8 | # tun: 9 | # enable: true 10 | # stack: system 11 | # auto-route: true 12 | # auto-detect-interface: true 13 | # dns-hijack: 14 | # - 8.8.8.8:53 15 | # - tcp://8.8.8.8:53 16 | # - any:53 17 | # - tcp://any:53 18 | 19 | dns: 20 | enable: true 21 | ipv6: false 22 | listen: 0.0.0.0:53 23 | enhanced-mode: redir-host 24 | # use-hosts: true 25 | # fallback: [] 26 | # fake-ip-filter: [] 27 | # default-nameserver: 28 | nameserver: 29 | - 8.8.8.8 30 | - https://dns.google/dns-query # DNS OVER HTTPS 31 | - tls://dns.google:853 # DNS OVER TLS 32 | 33 | proxies: 34 | 35 | proxy-groups: 36 | - name: Global ©️ 37 | proxies: 38 | - Global 🌎 39 | - Global 🥶 40 | type: select 41 | - name: Tiers 🔮 42 | proxies: 43 | - Tier 1 🚀 44 | - Tier 2 ⚡️ 45 | - Tier 3 💎 46 | - Tier 4 🗿 47 | type: select 48 | - name: Global 🥶 49 | proxies: 50 | - Tier 1 🚀 51 | - Tier 2 ⚡️ 52 | - Tier 3 💎 53 | - Tier 4 🗿 54 | type: url-test 55 | url: http://clients3.google.com/generate_204 56 | interval: 300 57 | - name: Global 🌎 58 | proxies: 59 | - Tier 1 🚀 60 | - Tier 2 ⚡️ 61 | - Tier 3 💎 62 | - Tier 4 🗿 63 | type: fallback 64 | url: http://clients3.google.com/generate_204 65 | interval: 300 66 | 67 | - name: Tier 1 🚀 68 | type: url-test 69 | url: http://clients3.google.com/generate_204 70 | interval: 300 71 | tolerance: 100 72 | proxies: 73 | - name: Tier 2 ⚡️ 74 | type: url-test 75 | url: http://clients3.google.com/generate_204 76 | interval: 300 77 | tolerance: 100 78 | proxies: 79 | - name: Tier 3 💎 80 | type: url-test 81 | url: http://clients3.google.com/generate_204 82 | interval: 300 83 | tolerance: 100 84 | proxies: 85 | - name: Tier 4 🗿 86 | type: url-test 87 | url: http://clients3.google.com/generate_204 88 | interval: 300 89 | tolerance: 100 90 | proxies: 91 | 92 | - name: Tier 1 🚀 Selector 93 | type: select 94 | proxies: 95 | - name: Tier 2 ⚡️ Selector 96 | type: select 97 | proxies: 98 | - name: Tier 3 💎 Selector 99 | type: select 100 | proxies: 101 | - name: Tier 4 🗿 Selector 102 | type: select 103 | proxies: 104 | 105 | rules: 106 | - MATCH,Tier 4 🗿 107 | - MATCH,Tier 3 💎 108 | - MATCH,Tier 2 ⚡️ 109 | - MATCH,Tier 1 🚀 110 | - MATCH,Tier 1 🚀 Selector 111 | - MATCH,Tier 2 ⚡️ Selector 112 | - MATCH,Tier 3 💎 Selector 113 | - MATCH,Tier 4 🗿 Selector 114 | -------------------------------------------------------------------------------- /update/provider/provider-all-airport.yml: -------------------------------------------------------------------------------- 1 | proxies: 2 | -------------------------------------------------------------------------------- /update/provider/provider-cn.yml: -------------------------------------------------------------------------------- 1 | ## COUNTRY: CHINA ## 2 | ## IMPORTANT: Import the appropriate config URL for your country of residence;- 3 | # e.g. "provider.yml" if in Iran, instead of manually adjusting it,- 4 | # to ensure bypassing local services while still receiving updates for the config! 5 | ## مهم: آدرس URL کانفیگ مناسب با کشور خود را به نرم افزار وارد کنید؛ مثلا "provider.yml" برای ایران،- 6 | # بجای دستی تنظیم کردن ، تا علاوه بر پروکسی نشدن سرویس های محلی، برای کانفیگ آپدیت دریافت کنید! 7 | 8 | ## In case of modifications, read comments carefully! ## 9 | 10 | ## For Clash FOSS -- Can also be used with Clash.Meta but `provider-meta-cn.yml` is more suitable. 11 | ## Android client is available on: 12 | # Github: https://github.com/Kr328/ClashForAndroid/releases/latest 13 | # Playstore: https://play.google.com/store/apps/details?id=com.github.kr328.clash 14 | # Izzyondroid: https://apt.izzysoft.de/fdroid/index/apk/com.github.kr328.clash.foss 15 | 16 | mixed-port: 7890 17 | allow-lan: true 18 | mode: rule 19 | log-level: error ## silent/error/warning/info/debug 20 | ipv6: true 21 | external-controller: 127.0.0.1:9090 22 | profile: 23 | store-selected: false ## It's better to default to "auto" every time it restarts. 24 | store-fake-ip: true 25 | 26 | #tun: 27 | #enable: true 28 | #stack: system ## system/gvisor 29 | #dns-hijack: 30 | #- 0.0.0.0:53 31 | #auto-detect-interface: true 32 | #auto-route: true 33 | 34 | dns: 35 | enable: true 36 | #listen: 127.0.0.1:53 ## Or 0.0.0.0:53 for LAN. 37 | ipv6: true 38 | default-nameserver: 39 | - '127.0.0.1' 40 | - '114.114.114.114' 41 | enhanced-mode: fake-ip 42 | use-hosts: true 43 | nameserver: 44 | - '127.0.0.1' 45 | - '114.114.114.114' 46 | fallback: 47 | - "https://1.1.1.1/dns-query" 48 | - "https://8.8.8.8/dns-query" 49 | - "https://9.9.9.9/dns-query" 50 | - "https://rubyfish.cn/dns-query" 51 | fallback-filter: 52 | geoip: true 53 | geoip-code: CN 54 | 55 | proxy-groups: 56 | 57 | - name: global 58 | type: select 59 | proxies: 60 | - auto 61 | - manual 62 | - DIRECT 63 | - REJECT 64 | 65 | - name: manual 66 | type: select 67 | use: 68 | #- local 69 | - airports 70 | - aggregator 71 | 72 | - name: auto 73 | type: url-test 74 | #filter: "🏁" 75 | use: 76 | #- local 77 | - airports 78 | - aggregator 79 | 80 | proxy-providers: 81 | 82 | #local: 83 | #type: file 84 | #path: ./providers/local.yaml ## << Put your custom servers here. 85 | #health-check: 86 | #enable: true 87 | #interval: 3600 88 | #lazy: true 89 | #url: "https://cp.cloudflare.com" 90 | ##url: "https://cdn.jsdelivr.net" 91 | ##url: "https://detectportal.firefox.com/success.txt" 92 | 93 | airports: 94 | type: http 95 | url: "https://raw.githubusercontent.com/mahdibland/V2RayAggregator/master/sub/airport_merge_yaml.yml" 96 | interval: 86400 97 | path: ./providers/airports.yaml 98 | health-check: 99 | enable: true 100 | interval: 3600 101 | lazy: true 102 | url: "https://cp.cloudflare.com" 103 | #url: "https://cdn.jsdelivr.net" 104 | #url: "https://detectportal.firefox.com/success.txt" 105 | 106 | aggregator: 107 | type: http 108 | url: "https://raw.githubusercontent.com/mahdibland/V2RayAggregator/master/sub/sub_merge_yaml.yml" 109 | interval: 86400 110 | path: ./providers/aggregator.yaml 111 | health-check: 112 | enable: true 113 | interval: 3600 114 | lazy: true 115 | url: "https://cp.cloudflare.com" 116 | #url: "https://cdn.jsdelivr.net" 117 | #url: "https://detectportal.firefox.com/success.txt" 118 | 119 | rules: 120 | - GEOIP,private,DIRECT ## Loopback and LAN IPs 121 | - GEOIP,CN,DIRECT ## Check "provider.yml" for Iran's config. 122 | - DOMAIN-SUFFIX,cn,DIRECT ## Check "provider.yml" for Iran's config. 123 | - DOMAIN,yacd.haishan.me,DIRECT ## Yet Another Clash Dashboard 124 | - MATCH,global 125 | -------------------------------------------------------------------------------- /update/provider/provider-meta-cn.yml: -------------------------------------------------------------------------------- 1 | ## COUNTRY: CHINA ## 2 | ## IMPORTANT: Import the appropriate config URL for your country of residence;- 3 | # e.g. "provider-meta.yml" if in Iran, instead of manually adjusting it,- 4 | # to ensure bypassing local services while still receiving updates for the config! 5 | ## مهم: آدرس URL کانفیگ مناسب با کشور خود را به نرم افزار وارد کنید؛ مثلا "provider-meta.yml" برای ایران،- 6 | # بجای دستی تنظیم کردن ، تا علاوه بر پروکسی نشدن سرویس های محلی، برای کانفیگ آپدیت دریافت کنید! 7 | 8 | ## In case of modifications, read comments carefully! ## 9 | 10 | ## For Clash.Meta -- Possible to use with Clash Premium but not tested. 11 | ## Android client: 12 | ## Preferable: Universal APK with new-version discovery if F-Droid store is installed: 13 | # https://f-droid.org/en/packages/com.github.metacubex.clash.meta: 14 | ## Arch-specific builds, manual discovery and update, but faster newer releases: 15 | # https://github.com/MetaCubeX/ClashMetaForAndroid/releases: 16 | ## Other clients: https://docs.metacubex.one/used 17 | 18 | mixed-port: 7890 19 | allow-lan: true 20 | tcp-concurrent: true 21 | find-process-mode: always 22 | global-client-fingerprint: random 23 | geodata-mode: true 24 | mode: rule 25 | log-level: error ## silent/error/warning/info/debug 26 | ipv6: true 27 | external-controller: 127.0.0.1:9090 28 | profile: 29 | store-selected: false ## It's better to default to "auto" every time it restarts. 30 | store-fake-ip: true 31 | 32 | #tun: 33 | #enable: true 34 | #stack: system ## system/lwip/gvisor 35 | #dns-hijack: 36 | #- 0.0.0.0:53 37 | #auto-detect-interface: true 38 | #auto-route: true 39 | #mtu: 9000 40 | #strict_route: true 41 | 42 | dns: 43 | enable: true 44 | #listen: 127.0.0.1:53 ## Or 0.0.0.0:53 for LAN. 45 | ipv6: true 46 | prefer-h3: true 47 | default-nameserver: 48 | - '127.0.0.1' 49 | - '114.114.114.114' 50 | enhanced-mode: fake-ip 51 | use-hosts: true 52 | nameserver: 53 | - '127.0.0.1' 54 | - '114.114.114.114' 55 | fallback: 56 | - "https://1.1.1.1/dns-query" 57 | - "https://8.8.8.8/dns-query" 58 | - "https://9.9.9.9/dns-query" 59 | - "https://rubyfish.cn/dns-query" 60 | fallback-filter: 61 | geoip: true 62 | geoip-code: CN 63 | 64 | proxy-groups: 65 | 66 | - name: global 67 | type: select 68 | proxies: 69 | - auto 70 | - manual 71 | - DIRECT 72 | - REJECT 73 | 74 | - name: manual 75 | type: select 76 | use: 77 | #- local 78 | - airports 79 | - aggregator 80 | 81 | - name: auto 82 | type: url-test 83 | #filter: "🏁" 84 | use: 85 | #- local 86 | - airports 87 | - aggregator 88 | 89 | proxy-providers: 90 | 91 | #local: 92 | #type: file 93 | #path: ./providers/local.yaml ## << Put your custom servers here. Clash.Meta also accepts ss://, vmess://, trojan:// and other URLs. 94 | #health-check: 95 | #enable: true 96 | #interval: 3600 97 | #lazy: true 98 | #url: "https://cp.cloudflare.com" 99 | ##url: "https://cdn.jsdelivr.net" 100 | ##url: "https://detectportal.firefox.com/success.txt" 101 | 102 | airports: 103 | type: http 104 | url: "https://raw.githubusercontent.com/mahdibland/V2RayAggregator/master/sub/airport_merge_yaml.yml" 105 | interval: 86400 106 | path: ./providers/airports.yaml 107 | health-check: 108 | enable: true 109 | interval: 3600 110 | lazy: true 111 | url: "https://cp.cloudflare.com" 112 | #url: "https://cdn.jsdelivr.net" 113 | #url: "https://detectportal.firefox.com/success.txt" 114 | 115 | aggregator: 116 | type: http 117 | url: "https://raw.githubusercontent.com/mahdibland/V2RayAggregator/master/sub/sub_merge_yaml.yml" 118 | interval: 86400 119 | path: ./providers/aggregator.yaml 120 | health-check: 121 | enable: true 122 | interval: 3600 123 | lazy: true 124 | url: "https://cp.cloudflare.com" 125 | #url: "https://cdn.jsdelivr.net" 126 | #url: "https://detectportal.firefox.com/success.txt" 127 | 128 | rule-providers: 129 | applications: 130 | type: http 131 | behavior: classical 132 | url: "https://raw.githubusercontent.com/Loyalsoldier/clash-rules/release/applications.txt" 133 | path: ./ruleset/applications.yaml 134 | interval: 604800 135 | 136 | rules: 137 | - GEOSITE,category-ads-all,REJECT ## Rejects advertisements. 138 | - GEOSITE,win-spy,REJECT ## Rejects MS Windows analytics and spying. 139 | - GEOIP,CN,DIRECT ## Check "provider-meta.yml" for Iran's config. 140 | - GEOSITE,cn,DIRECT ## Check "provider-meta.yml" for Iran's config. 141 | - DOMAIN-SUFFIX,cn,DIRECT ## Check "provider-meta.yml" for Iran's config. 142 | - GEOSITE,category-games,DIRECT ## Online gaming 143 | - GEOIP,private,DIRECT ## Loopback and LAN IPs 144 | - RULE-SET,applications,DIRECT ## P2P software e.g. BitTorrent. 145 | - DOMAIN,yacd.metacubex.one,DIRECT ## Yet Another Clash Dashbord for Clash.Meta 146 | - DOMAIN,clash.metacubex.one,DIRECT ## Razord 147 | - MATCH,global 148 | -------------------------------------------------------------------------------- /update/provider/provider-meta-others.yml: -------------------------------------------------------------------------------- 1 | ## COUNTRY: NO COUNTRY (BYPASS-FREE) ## 2 | ## IMPORTANT: Import the appropriate config URL for your country of residence;- 3 | # e.g. "provider-meta.yml" if in Iran, instead of manually adjusting it,- 4 | # to ensure bypassing local services while still receiving updates for the config! 5 | ## 重要提示:为您居住的国家/地区导入适当的配置 URL;例如 “provider-meta-cn.yml”- 6 | # 如果在中国而不是手动调整它,以确保绕过本地服务同时仍然接收配置更新! (谷歌翻译) 7 | ## مهم: آدرس URL کانفیگ مناسب با کشور خود را به نرم افزار وارد کنید؛ مثلا "provider-meta.yml" برای ایران،- 8 | # بجای دستی تنظیم کردن ، تا علاوه بر پروکسی نشدن سرویس های محلی، برای کانفیگ آپدیت دریافت کنید! 9 | 10 | ## In case of modifications, read comments carefully! ## 11 | 12 | ## For Clash.Meta -- Possible to use with Clash Premium but not tested. 13 | ## Android client: 14 | ## Preferable: Universal APK with new-version discovery if F-Droid store is installed: 15 | # https://f-droid.org/en/packages/com.github.metacubex.clash.meta: 16 | ## Arch-specific builds, manual discovery and update, but faster newer releases: 17 | # https://github.com/MetaCubeX/ClashMetaForAndroid/releases: 18 | ## Other clients: https://docs.metacubex.one/used 19 | 20 | mixed-port: 7890 21 | allow-lan: true 22 | tcp-concurrent: true 23 | find-process-mode: always 24 | global-client-fingerprint: random 25 | geodata-mode: true 26 | mode: rule 27 | log-level: error ## silent/error/warning/info/debug 28 | ipv6: true 29 | external-controller: 127.0.0.1:9090 30 | profile: 31 | store-selected: false ## It's better to default to "auto" every time it restarts. 32 | store-fake-ip: true 33 | 34 | #tun: 35 | #enable: true 36 | #stack: system ## system/lwip/gvisor 37 | #dns-hijack: 38 | #- 0.0.0.0:53 39 | #auto-detect-interface: true 40 | #auto-route: true 41 | #mtu: 9000 42 | #strict_route: true 43 | 44 | dns: 45 | enable: true 46 | #listen: 127.0.0.1:53 ## Or 0.0.0.0:53 for LAN. 47 | ipv6: true 48 | prefer-h3: true 49 | default-nameserver: 50 | - '127.0.0.1' 51 | - '1.1.1.1' 52 | enhanced-mode: fake-ip 53 | use-hosts: true 54 | nameserver: 55 | - '127.0.0.1' 56 | - '1.1.1.1' 57 | fallback: 58 | - "https://1.1.1.1/dns-query" 59 | - "https://8.8.8.8/dns-query" 60 | - "https://9.9.9.9/dns-query" 61 | - "https://sky.rethinkdns.com/dns-query" 62 | fallback-filter: 63 | geoip: false 64 | 65 | proxy-groups: 66 | 67 | - name: global 68 | type: select 69 | proxies: 70 | - auto 71 | - manual 72 | - DIRECT 73 | - REJECT 74 | 75 | - name: manual 76 | type: select 77 | use: 78 | #- local 79 | - airports 80 | - aggregator 81 | 82 | - name: auto 83 | type: url-test 84 | #filter: "🏁" 85 | use: 86 | #- local 87 | - airports 88 | - aggregator 89 | 90 | proxy-providers: 91 | 92 | #local: 93 | #type: file 94 | #path: ./providers/local.yaml ## << Put your custom servers here. Clash.Meta also accepts ss://, vmess://, trojan:// and other URLs. 95 | #health-check: 96 | #enable: true 97 | #interval: 3600 98 | #lazy: true 99 | #url: "https://cp.cloudflare.com" 100 | ##url: "https://cdn.jsdelivr.net" 101 | ##url: "https://detectportal.firefox.com/success.txt" 102 | 103 | airports: 104 | type: http 105 | url: "https://raw.githubusercontent.com/mahdibland/V2RayAggregator/master/sub/airport_merge_yaml.yml" 106 | interval: 86400 107 | path: ./providers/airports.yaml 108 | health-check: 109 | enable: true 110 | interval: 3600 111 | lazy: true 112 | url: "https://cp.cloudflare.com" 113 | #url: "https://cdn.jsdelivr.net" 114 | #url: "https://detectportal.firefox.com/success.txt" 115 | 116 | aggregator: 117 | type: http 118 | url: "https://raw.githubusercontent.com/mahdibland/V2RayAggregator/master/sub/sub_merge_yaml.yml" 119 | interval: 86400 120 | path: ./providers/aggregator.yaml 121 | health-check: 122 | enable: true 123 | interval: 3600 124 | lazy: true 125 | url: "https://cp.cloudflare.com" 126 | #url: "https://cdn.jsdelivr.net" 127 | #url: "https://detectportal.firefox.com/success.txt" 128 | 129 | rule-providers: 130 | applications: 131 | type: http 132 | behavior: classical 133 | url: "https://raw.githubusercontent.com/Loyalsoldier/clash-rules/release/applications.txt" 134 | path: ./ruleset/applications.yaml 135 | interval: 604800 136 | 137 | rules: 138 | - GEOSITE,category-ads-all,REJECT ## Rejects advertisements. 139 | - GEOSITE,win-spy,REJECT ## Rejects MS Windows analytics and spying. 140 | - GEOSITE,category-games,DIRECT ## Online gaming 141 | - GEOIP,private,DIRECT ## Loopback and LAN IPs 142 | - RULE-SET,applications,DIRECT ## P2P software e.g. BitTorrent. 143 | - DOMAIN,yacd.metacubex.one,DIRECT ## Yet Another Clash Dashbord for Clash.Meta 144 | - DOMAIN,clash.metacubex.one,DIRECT ## Razord 145 | - MATCH,global 146 | -------------------------------------------------------------------------------- /update/provider/provider-meta.yml: -------------------------------------------------------------------------------- 1 | ## COUNTRY: IRAN ## 2 | ## IMPORTANT: Import the appropriate config URL for your country of residence;- 3 | # e.g. "provider-meta-cn.yml" if in China, instead of manually adjusting it,- 4 | # to ensure bypassing local services while still receiving updates for the config! 5 | ## 重要提示:为您居住的国家/地区导入适当的配置 URL;例如 “provider-meta-cn.yml”- 6 | # 如果在中国而不是手动调整它,以确保绕过本地服务同时仍然接收配置更新! (谷歌翻译) 7 | 8 | ## In case of modifications, read comments carefully! ## 9 | 10 | ## For Clash.Meta -- Possible to use with Clash Premium but not tested. 11 | ## Android client: 12 | ## Preferable: Universal APK with new-version discovery if F-Droid store is installed: 13 | # https://f-droid.org/en/packages/com.github.metacubex.clash.meta: 14 | ## Arch-specific builds, manual discovery and update, but faster newer releases: 15 | # https://github.com/MetaCubeX/ClashMetaForAndroid/releases: 16 | ## Other clients: https://docs.metacubex.one/used 17 | 18 | mixed-port: 7890 19 | allow-lan: true 20 | tcp-concurrent: true 21 | find-process-mode: always 22 | global-client-fingerprint: random 23 | geodata-mode: true 24 | mode: rule 25 | log-level: error ## silent/error/warning/info/debug 26 | ipv6: true 27 | external-controller: 127.0.0.1:9090 28 | profile: 29 | store-selected: false ## It's better to default to "auto" every time it restarts. 30 | store-fake-ip: true 31 | 32 | #tun: 33 | #enable: true 34 | #stack: system ## system/lwip/gvisor 35 | #dns-hijack: 36 | #- 0.0.0.0:53 37 | #auto-detect-interface: true 38 | #auto-route: true 39 | #mtu: 9000 40 | #strict_route: true 41 | 42 | dns: 43 | enable: true 44 | #listen: 127.0.0.1:53 ## Or 0.0.0.0:53 for LAN. 45 | ipv6: true 46 | prefer-h3: true 47 | default-nameserver: 48 | - '127.0.0.1' 49 | - '1.1.1.1' 50 | enhanced-mode: fake-ip 51 | use-hosts: true 52 | nameserver: 53 | - '127.0.0.1' 54 | - '1.1.1.1' 55 | fallback: 56 | - "https://1.1.1.1/dns-query" 57 | - "https://8.8.8.8/dns-query" 58 | - "https://sky.rethinkdns.com/dns-query" 59 | - "https://kronos.plan9-dns.com/dns-query" 60 | fallback-filter: 61 | geoip: true 62 | geoip-code: IR 63 | 64 | proxy-groups: 65 | 66 | - name: global 67 | type: select 68 | proxies: 69 | - auto 70 | - manual 71 | - DIRECT 72 | - REJECT 73 | 74 | - name: manual 75 | type: select 76 | use: 77 | #- local 78 | - airports 79 | - aggregator 80 | 81 | - name: auto 82 | type: url-test 83 | #filter: "🏁" 84 | use: 85 | #- local 86 | - airports 87 | - aggregator 88 | 89 | proxy-providers: 90 | 91 | #local: 92 | #type: file 93 | #path: ./providers/local.yaml ## << Put your custom servers here. Clash.Meta also accepts ss://, vmess://, trojan:// and other URLs. 94 | #health-check: 95 | #enable: true 96 | #interval: 3600 97 | #lazy: true 98 | #url: "https://cp.cloudflare.com" 99 | ##url: "https://cdn.jsdelivr.net" 100 | ##url: "https://detectportal.firefox.com/success.txt" 101 | 102 | airports: 103 | type: http 104 | url: "https://raw.githubusercontent.com/mahdibland/V2RayAggregator/master/sub/airport_merge_yaml.yml" 105 | interval: 86400 106 | path: ./providers/airports.yaml 107 | health-check: 108 | enable: true 109 | interval: 3600 110 | lazy: true 111 | url: "https://cp.cloudflare.com" 112 | #url: "https://cdn.jsdelivr.net" 113 | #url: "https://detectportal.firefox.com/success.txt" 114 | 115 | aggregator: 116 | type: http 117 | url: "https://raw.githubusercontent.com/mahdibland/V2RayAggregator/master/sub/sub_merge_yaml.yml" 118 | interval: 86400 119 | path: ./providers/aggregator.yaml 120 | health-check: 121 | enable: true 122 | interval: 3600 123 | lazy: true 124 | url: "https://cp.cloudflare.com" 125 | #url: "https://cdn.jsdelivr.net" 126 | #url: "https://detectportal.firefox.com/success.txt" 127 | 128 | rule-providers: 129 | 130 | applications: 131 | type: http 132 | behavior: classical 133 | url: "https://raw.githubusercontent.com/Loyalsoldier/clash-rules/release/applications.txt" 134 | path: ./ruleset/applications.yaml 135 | interval: 604800 136 | 137 | iran_other: 138 | type: http 139 | format: text 140 | behavior: domain 141 | url: "https://github.com/bootmortis/iran-hosted-domains/releases/latest/download/clash_rules_other.txt" 142 | path: ./ruleset/iran_other.txt 143 | interval: 604800 144 | 145 | iran_ads: 146 | type: http 147 | format: text 148 | behavior: domain 149 | url: "https://github.com/MasterKia/iran-hosted-domains/releases/latest/download/clash_rules_ads.txt" 150 | path: ./ruleset/iran_ads.txt 151 | interval: 604800 152 | 153 | rules: 154 | - GEOSITE,category-ads-all,REJECT ## Rejects advertisements. 155 | - GEOSITE,win-spy,REJECT ## Rejects MS Windows analytics and spying. 156 | - RULE-SET,iran_ads,REJECT ## Rejects Persian ads. [PersianBlocker](https://github.com/MasterKia/PersianBlocker) (License: AGPLv3) 157 | - GEOSITE,category-ir,DIRECT ## -\ 158 | - DOMAIN-SUFFIX,ir,DIRECT ## -----> Check "provider-meta-cn.yml" for China's config. 159 | - RULE-SET,iran_other,DIRECT ## -/ [Bootmortis/iran-hosted-domains](https://github.com/bootmortis/iran-hosted-domains) (License: MIT) 160 | - GEOIP,IR,DIRECT ## -----------/ 161 | - GEOSITE,category-games,DIRECT ## Online gaming 162 | - GEOIP,private,DIRECT ## Loopback and LAN IPs 163 | - RULE-SET,applications,DIRECT ## P2P software e.g. BitTorrent. 164 | - DOMAIN,yacd.metacubex.one,DIRECT ## Yet Another Clash Dashbord for Clash.Meta 165 | - DOMAIN,clash.metacubex.one,DIRECT ## Razord 166 | - MATCH,global 167 | -------------------------------------------------------------------------------- /update/provider/provider-others.yml: -------------------------------------------------------------------------------- 1 | ## COUNTRY: NO COUNTRY (BYPASS-FREE) ## 2 | ## IMPORTANT: Import the appropriate config URL for your country of residence;- 3 | # e.g. "provider.yml" if in Iran, instead of manually adjusting it,- 4 | # to ensure bypassing local services while still receiving updates for the config! 5 | ## 重要提示:为您居住的国家/地区导入适当的配置 URL;例如 “provider-cn.yml”- 6 | # 如果在中国而不是手动调整它,以确保绕过本地服务同时仍然接收配置更新! (谷歌翻译) 7 | ## مهم: آدرس URL کانفیگ مناسب با کشور خود را به نرم افزار وارد کنید؛ مثلا "provider.yml" برای ایران،- 8 | # بجای دستی تنظیم کردن ، تا علاوه بر پروکسی نشدن سرویس های محلی، برای کانفیگ آپدیت دریافت کنید! 9 | 10 | ## In case of modifications, read comments carefully! ## 11 | 12 | ## For Clash FOSS -- Can also be used with Clash.Meta but `provider-meta-others.yml` is more suitable. 13 | ## Android client is available on: 14 | # Github: https://github.com/Kr328/ClashForAndroid/releases/latest 15 | # Playstore: https://play.google.com/store/apps/details?id=com.github.kr328.clash 16 | # Izzyondroid: https://apt.izzysoft.de/fdroid/index/apk/com.github.kr328.clash.foss 17 | 18 | mixed-port: 7890 19 | allow-lan: true 20 | mode: rule 21 | log-level: error ## silent/error/warning/info/debug 22 | ipv6: true 23 | external-controller: 127.0.0.1:9090 24 | profile: 25 | store-selected: false ## It's better to default to "auto" every time it restarts. 26 | store-fake-ip: true 27 | 28 | #tun: 29 | #enable: true 30 | #stack: system ## system/gvisor 31 | #dns-hijack: 32 | #- 0.0.0.0:53 33 | #auto-detect-interface: true 34 | #auto-route: true 35 | 36 | dns: 37 | enable: true 38 | #listen: 127.0.0.1:53 ## Or 0.0.0.0:53 for LAN. 39 | ipv6: true 40 | default-nameserver: 41 | - '127.0.0.1' 42 | - '1.1.1.1' 43 | enhanced-mode: fake-ip 44 | use-hosts: true 45 | nameserver: 46 | - '127.0.0.1' 47 | - '1.1.1.1' 48 | fallback: 49 | - "https://1.1.1.1/dns-query" 50 | - "https://8.8.8.8/dns-query" 51 | - "https://9.9.9.9/dns-query" 52 | - "https://sky.rethinkdns.com/dns-query" 53 | fallback-filter: 54 | geoip: false 55 | 56 | proxy-groups: 57 | 58 | - name: global 59 | type: select 60 | proxies: 61 | - auto 62 | - manual 63 | - DIRECT 64 | - REJECT 65 | 66 | - name: manual 67 | type: select 68 | use: 69 | #- local 70 | - airports 71 | - aggregator 72 | 73 | - name: auto 74 | type: url-test 75 | #filter: "🏁" 76 | use: 77 | #- local 78 | - airports 79 | - aggregator 80 | 81 | proxy-providers: 82 | 83 | #local: 84 | #type: file 85 | #path: ./providers/local.yaml ## << Put your custom servers here. 86 | #health-check: 87 | #enable: true 88 | #interval: 3600 89 | #lazy: true 90 | #url: "https://cp.cloudflare.com" 91 | ##url: "https://cdn.jsdelivr.net" 92 | ##url: "https://detectportal.firefox.com/success.txt" 93 | 94 | airports: 95 | type: http 96 | url: "https://raw.githubusercontent.com/mahdibland/V2RayAggregator/master/sub/airport_merge_yaml.yml" 97 | interval: 86400 98 | path: ./providers/airports.yaml 99 | health-check: 100 | enable: true 101 | interval: 3600 102 | lazy: true 103 | url: "https://cp.cloudflare.com" 104 | #url: "https://cdn.jsdelivr.net" 105 | #url: "https://detectportal.firefox.com/success.txt" 106 | 107 | aggregator: 108 | type: http 109 | url: "https://raw.githubusercontent.com/mahdibland/V2RayAggregator/master/sub/sub_merge_yaml.yml" 110 | interval: 86400 111 | path: ./providers/aggregator.yaml 112 | health-check: 113 | enable: true 114 | interval: 3600 115 | lazy: true 116 | url: "https://cp.cloudflare.com" 117 | #url: "https://cdn.jsdelivr.net" 118 | #url: "https://detectportal.firefox.com/success.txt" 119 | 120 | rules: 121 | - GEOIP,private,DIRECT ## Loopback and LAN IPs 122 | - DOMAIN,yacd.haishan.me,DIRECT ## Yet Another Clash Dashboard 123 | - MATCH,global 124 | -------------------------------------------------------------------------------- /update/provider/provider.yml: -------------------------------------------------------------------------------- 1 | ## COUNTRY: IRAN ## 2 | ## IMPORTANT: Import the appropriate config URL for your country of residence;- 3 | # e.g. "provider-cn.yml" if in China, instead of manually adjusting it,- 4 | # to ensure bypassing local services while still receiving updates for the config! 5 | ## 重要提示:为您居住的国家/地区导入适当的配置 URL;例如 “provider-cn.yml”- 6 | # 如果在中国而不是手动调整它,以确保绕过本地服务同时仍然接收配置更新! (谷歌翻译) 7 | 8 | ## In case of modifications, read comments carefully! ## 9 | 10 | ## For Clash FOSS -- Can also be used with Clash.Meta but `provider-meta.yml` is more suitable. 11 | ## Android client is available on: 12 | # Github: https://github.com/Kr328/ClashForAndroid/releases/latest 13 | # Playstore: https://play.google.com/store/apps/details?id=com.github.kr328.clash 14 | # Izzyondroid: https://apt.izzysoft.de/fdroid/index/apk/com.github.kr328.clash.foss 15 | 16 | mixed-port: 7890 17 | allow-lan: true 18 | mode: rule 19 | log-level: error ## silent/error/warning/info/debug 20 | ipv6: true 21 | external-controller: 127.0.0.1:9090 22 | profile: 23 | store-selected: false ## It's better to default to "auto" every time it restarts. 24 | store-fake-ip: true 25 | 26 | #tun: 27 | #enable: true 28 | #stack: system ## system/gvisor 29 | #dns-hijack: 30 | #- 0.0.0.0:53 31 | #auto-detect-interface: true 32 | #auto-route: true 33 | 34 | dns: 35 | enable: true 36 | #listen: 127.0.0.1:53 ## Or 0.0.0.0:53 for LAN. 37 | ipv6: true 38 | default-nameserver: 39 | - '127.0.0.1' 40 | - '1.1.1.1' 41 | enhanced-mode: fake-ip 42 | use-hosts: true 43 | nameserver: 44 | - '127.0.0.1' 45 | - '1.1.1.1' 46 | fallback: 47 | - "https://1.1.1.1/dns-query" 48 | - "https://8.8.8.8/dns-query" 49 | - "https://sky.rethinkdns.com/dns-query" 50 | - "https://kronos.plan9-dns.com/dns-query" 51 | fallback-filter: 52 | geoip: true 53 | geoip-code: IR 54 | 55 | proxy-groups: 56 | 57 | - name: global 58 | type: select 59 | proxies: 60 | - auto 61 | - manual 62 | - DIRECT 63 | - REJECT 64 | 65 | - name: manual 66 | type: select 67 | use: 68 | #- local 69 | - airports 70 | - aggregator 71 | 72 | - name: auto 73 | type: url-test 74 | #filter: "🏁" 75 | use: 76 | #- local 77 | - airports 78 | - aggregator 79 | 80 | proxy-providers: 81 | 82 | #local: 83 | #type: file 84 | #path: ./providers/local.yaml ## << Put your custom servers here. 85 | #health-check: 86 | #enable: true 87 | #interval: 3600 88 | #lazy: true 89 | #url: "https://cp.cloudflare.com" 90 | ##url: "https://cdn.jsdelivr.net" 91 | ##url: "https://detectportal.firefox.com/success.txt" 92 | 93 | airports: 94 | type: http 95 | url: "https://raw.githubusercontent.com/mahdibland/V2RayAggregator/master/sub/airport_merge_yaml.yml" 96 | interval: 86400 97 | path: ./providers/airports.yaml 98 | health-check: 99 | enable: true 100 | interval: 3600 101 | lazy: true 102 | url: "https://cp.cloudflare.com" 103 | #url: "https://cdn.jsdelivr.net" 104 | #url: "https://detectportal.firefox.com/success.txt" 105 | 106 | aggregator: 107 | type: http 108 | url: "https://raw.githubusercontent.com/mahdibland/V2RayAggregator/master/sub/sub_merge_yaml.yml" 109 | interval: 86400 110 | path: ./providers/aggregator.yaml 111 | health-check: 112 | enable: true 113 | interval: 3600 114 | lazy: true 115 | url: "https://cp.cloudflare.com" 116 | #url: "https://cdn.jsdelivr.net" 117 | #url: "https://detectportal.firefox.com/success.txt" 118 | 119 | rules: 120 | - GEOIP,private,DIRECT ## Loopback and LAN IPs 121 | - GEOIP,IR,DIRECT ## Check "provider-cn.yml" for China's config. 122 | - DOMAIN-SUFFIX,ir,DIRECT ## Check "provider-cn.yml" for China's config. 123 | - DOMAIN,yacd.haishan.me,DIRECT ## Yet Another Clash Dashboard 124 | - MATCH,global 125 | -------------------------------------------------------------------------------- /utils/Country.mmdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NiREvil/V2RayAggregator/6bc10ccbde28bd6294dac42ea421cd8d3dc3f1d9/utils/Country.mmdb -------------------------------------------------------------------------------- /utils/airport/speedtest/lite_config_yaml_airport.json: -------------------------------------------------------------------------------- 1 | { 2 | "group": "FreeProxies", 3 | "speedtestMode": "all", 4 | "pingMethod": "googleping", 5 | "sortMethod": "rspeed", 6 | "concurrency": 8, 7 | "testMode": 2, 8 | "subscription": "", 9 | "timeout": 4, 10 | "language": "en", 11 | "fontSize": 24, 12 | "unique": false, 13 | "theme": "rainbow", 14 | "outputMode": 3 15 | } 16 | -------------------------------------------------------------------------------- /utils/airport/speedtest/output.py: -------------------------------------------------------------------------------- 1 | import json 2 | import base64 3 | import os 4 | import time 5 | 6 | out_json = './output.json' 7 | 8 | Eternity_Air = "./EternityAir" 9 | airport_all_base64 = "./sub/airport_merge_base64.txt" 10 | sub_all = "./sub/airport_sub_merge.txt" 11 | Eternity_Air_file = "./EternityAir.txt" 12 | 13 | 14 | def read_json(file): # 将 output.json 内容读取为列表 15 | while os.path.isfile(file) == False: 16 | print('Awaiting speedtest complete') 17 | time.sleep(30) 18 | with open(file, 'r', encoding='utf-8') as f: 19 | print('Reading output.json') 20 | proxies_all = json.load(f)["nodes"] 21 | f.close() 22 | return proxies_all 23 | 24 | 25 | def output(list, num): 26 | # sort base their avg speed rather than max speed which is default option 27 | list = sorted(list, key=lambda x: x['avg_speed'], reverse=True) 28 | 29 | def arred(x, n): return x*(10**n)//1/(10**n) 30 | print(str(list[0])) 31 | output_list = [] 32 | for item in list: 33 | info = "id: %s | remarks: %s | protocol: %s | ping: %s MS | avg_speed: %s MB | max_speed: %s MB | Link: %s\n" % (str(item["id"]), item["remarks"], item["protocol"], str( 34 | item["ping"]), str(arred(item["avg_speed"] * 0.00000095367432, 3)), str(arred(item["max_speed"] * 0.00000095367432, 3)), item["link"]) 35 | 36 | # if str(arred(item["avg_speed"] * 0.00000095367432, 3)) != "0.0" and str(arred(item["avg_speed"] * 0.00000095367432, 3)) != "0.00": 37 | output_list.append(info) 38 | with open('./LogInfoAir.txt', 'w') as f1: 39 | f1.writelines(output_list) 40 | f1.close() 41 | print('Write Log Success!') 42 | 43 | output_list = [] 44 | for index in range(list.__len__()): 45 | proxy = list[index]['link'] 46 | output_list.append(proxy) 47 | 48 | content = '\n'.join(output_list) 49 | content_base64 = base64.b64encode( 50 | '\n'.join(output_list).encode('utf-8')).decode('ascii') 51 | content_base64_part = base64.b64encode( 52 | '\n'.join(output_list[0:num]).encode('utf-8')).decode('ascii') 53 | 54 | with open(sub_all, 'w') as f: 55 | f.write(content) 56 | print('Write All Urls Success!') 57 | f.close() 58 | with open(airport_all_base64, 'w+', encoding='utf-8') as f: 59 | f.write(content_base64) 60 | print('Write All Base64 Success!') 61 | f.close() 62 | with open(Eternity_Air, 'w+', encoding='utf-8') as f: 63 | f.write(content_base64_part) 64 | print('Write Part Base64 Success!') 65 | f.close() 66 | 67 | with open(Eternity_Air_file, 'w') as f: 68 | f.write('\n'.join(output_list[0:num])) 69 | print('Write Part Base Success!') 70 | f.close() 71 | 72 | return content 73 | 74 | 75 | if __name__ == '__main__': 76 | num = 200 77 | if os.path.isfile(out_json): 78 | os.unlink(out_json) 79 | value = read_json(out_json) 80 | output(value, value.__len__() if value.__len__() <= num else num) 81 | -------------------------------------------------------------------------------- /utils/airport/speedtest/speedtest2_yaml.sh: -------------------------------------------------------------------------------- 1 | #准备好所需文件 2 | wget -O lite-linux-amd64.gz https://github.com/xxf098/LiteSpeedTest/releases/download/v0.15.0/lite-linux-amd64-v0.15.0.gz 3 | gzip -d lite-linux-amd64.gz 4 | wget -O lite_config.json https://raw.githubusercontent.com/mahdibland/ShadowsocksAggregator/master/utils/airport/speedtest/lite_config_yaml_airport.json 5 | #运行 LiteSpeedTest 6 | chmod +x ./lite-linux-amd64 7 | sudo nohup ./lite-linux-amd64 --config ./lite_config.json --test https://raw.githubusercontent.com/mahdibland/SSAggregator/master/sub/airport_merge_yaml.yml > speedtest.log 2>&1 & 8 | -------------------------------------------------------------------------------- /utils/airport/speedtest/speedtest2_yamlc.sh: -------------------------------------------------------------------------------- 1 | # Clash 2 | wget -O clash.gz https://github.com/Dreamacro/clash/releases/download/v1.11.8/clash-linux-amd64-v1.11.8.gz 3 | gunzip clash.gz 4 | wget -O lite-linux-amd64.gz https://github.com/xxf098/LiteSpeedTest/releases/download/v0.14.1/lite-linux-amd64-v0.14.1.gz 5 | gzip -d lite-linux-amd64.gz 6 | wget -O clash_config.yml https://raw.githubusercontent.com/mahdibland/ShadowsocksAggregator/master/utils/speedtest/clash_config_eu.yml 7 | wget -O proxychains.conf https://raw.githubusercontent.com/mahdibland/ShadowsocksAggregator/master/utils/speedtest/proxychains.conf 8 | wget -O lite_config.json https://raw.githubusercontent.com/mahdibland/ShadowsocksAggregator/master/utils/airport/speedtest/lite_config_yaml_airport.json 9 | #初始化 Clash 10 | chmod +x ./clash && ./clash & 11 | #安装并配置 proxychains 12 | sudo apt-get install proxychains 13 | sudo chmod 777 ../../../../../../etc/proxychains.conf 14 | mv -f proxychains.conf ../../../../../../etc/proxychains.conf 15 | #开始运行 Clash 16 | sudo pkill -f clash 17 | ./clash -f clash_config.yml & 18 | #运行 LiteSpeedTest 19 | sleep 5 20 | chmod +x ./lite-linux-amd64 21 | sudo nohup proxychains ./lite-linux-amd64 --config ./lite_config.json --test https://raw.githubusercontent.com/mahdibland/SSAggregator/master/sub/airport_merge_yaml.yml > speedtest.log 2>&1 & 22 | -------------------------------------------------------------------------------- /utils/eternity_convert.py: -------------------------------------------------------------------------------- 1 | import re 2 | import yaml 3 | import json 4 | import re 5 | import time 6 | import os 7 | 8 | from sub_convert import sub_convert 9 | # below is replacement of above 10 | from subs_function import subs_function 11 | 12 | from list_merge import sub_merge 13 | 14 | Eterniy_base_file = './EternityBase' 15 | Eterniy_file = './Eternity' 16 | Eternity_yml_file = './Eternity.yml' 17 | readme = './README.md' 18 | log_file = './LogInfo.txt' 19 | 20 | provider_path = './update/provider/' 21 | update_path = './update/' 22 | 23 | sub_list_json = './sub/sub_list.json' 24 | 25 | config_file = './update/provider/config.yml' 26 | config_global_file = './update/provider/config-global.yml' 27 | 28 | 29 | # https://ttl255.com/yaml-anchors-and-aliases-and-how-to-disable-them/ 30 | class NoAliasDumper(yaml.SafeDumper): 31 | def ignore_aliases(self, data): 32 | return True 33 | 34 | 35 | def substrings(string, left, right): 36 | value = string.replace('\n', '').replace(' ', '') 37 | start = value.index(left) 38 | end = value[start:].index( 39 | right) + (value.__len__() - value[start:].__len__()) 40 | final_value = value[start:end].replace(left, '') 41 | return final_value 42 | 43 | 44 | def eternity_convert(file, config, output, provider_file_enabled=True): 45 | # # no conversion from base64 so udp is not a problem 46 | # subconvertor not working with only proxy url 47 | all_provider = subs_function.convert_sub( 48 | "https://raw.githubusercontent.com/mahdibland/SSAggregator/master/sub/sub_merge_base64.txt", 'clash', "http://0.0.0.0:25500", False, extra_options="&udp=false") 49 | 50 | ########## Add Name to Logs Before making chaages to Proxies ############ 51 | temp_providers = all_provider.split('\n') 52 | log_reader = open(log_file, 'r') 53 | log_lines = log_reader.readlines() 54 | log_reader.close() 55 | indexx = 0 56 | for line in temp_providers: 57 | if line != 'proxies:': 58 | try: 59 | ##### 60 | server_name = substrings(line, "name:", ",") 61 | server_type = substrings(line, "type:", ",") 62 | log_lines[indexx] = "name: %s | type: %s | %s" % ( 63 | server_name, server_type, log_lines[indexx]) 64 | ##### 65 | indexx += 1 66 | except: 67 | print("log lines length != providers length") 68 | 69 | log_writer = open(log_file, 'w') 70 | log_writer.writelines(log_lines) 71 | log_writer.close() 72 | ############################################################################ 73 | 74 | # remove lines with name issue 75 | removed_bad_char = list(filter(lambda x: str(x).__contains__( 76 | "�") == False, all_provider.split("\n")[1:])) 77 | log_lines_without_bad_char = list(filter(lambda x: str(x).__contains__( 78 | "�") == False, log_lines)) 79 | 80 | # make sure the size of two list are equal 81 | print( 82 | f"removed_bad_char count => {removed_bad_char.__len__()} & log_lines_without_bad_char count => {log_lines_without_bad_char.__len__()}") 83 | 84 | # take a part from begining of all lines 85 | num = 200 86 | num = removed_bad_char.__len__() if removed_bad_char.__len__() <= num else num 87 | 88 | # convert the safe partition to yaml format 89 | all_provider = "proxies:\n" + "\n".join(removed_bad_char[0:num + 1]) 90 | 91 | lines = re.split(r'\n+', all_provider) 92 | 93 | proxy_all = [] 94 | # us_proxy = [] 95 | # hk_proxy = [] 96 | # sg_proxy = [] 97 | # others_proxy = [] 98 | indexx = 0 99 | skip_names_index = [] 100 | for line in lines: 101 | if line != 'proxies:': 102 | try: 103 | name = substrings(line, "name:", ",") 104 | speed = substrings( 105 | log_lines_without_bad_char[indexx], "avg_speed:", "|") 106 | line = re.sub("name:( |)(.*?),", "name: %s | %s," % 107 | (name, speed), line) 108 | except: 109 | print(log_lines_without_bad_char[indexx]) 110 | pass 111 | # line = ' ' + line 112 | line = line.replace('- ', '') 113 | line_parsed = yaml.safe_load(line) 114 | if "password" in line_parsed: 115 | line_parsed.update({"password": str(line_parsed.get("password"))}) 116 | # interpreted as a floating-point number 117 | if re.match(r'^\d+\.?\d*[eE][-+]?\d+$', line_parsed["password"]): 118 | skip_names_index.append(indexx) 119 | indexx += 1 120 | continue 121 | 122 | linee = line_parsed 123 | proxy_all.append(linee) 124 | 125 | indexx += 1 126 | 127 | if provider_file_enabled: 128 | providers_files = { 129 | 'all': provider_path + 'provider-all.yml', 130 | # 'others': provider_path + 'provider-others.yml', 131 | # 'us': provider_path + 'provider-us.yml', 132 | # 'hk': provider_path + 'provider-hk.yml', 133 | # 'sg': provider_path + 'provider-sg.yml' 134 | } 135 | eternity_providers = { 136 | 'all': all_provider, 137 | # 'others': others_provider, 138 | # 'us': us_provider, 139 | # 'hk': hk_provider, 140 | # 'sg': sg_provider 141 | } 142 | print('Writing content to provider') 143 | for key in providers_files.keys(): 144 | provider_all = open(providers_files[key], 'w', encoding='utf-8') 145 | provider_all.write(eternity_providers[key]) 146 | provider_all.close() 147 | print('Done!\n') 148 | 149 | # 创建完全配置的Eternity.yml 150 | config_f = open(config_file, 'r', encoding='utf-8') 151 | config_raw = config_f.read() 152 | config_f.close() 153 | 154 | config = yaml.safe_load(config_raw) 155 | 156 | all_provider_dic = {'proxies': []} 157 | # others_provider_dic = {'proxies': []} 158 | # us_provider_dic = {'proxies': []} 159 | # hk_provider_dic = {'proxies': []} 160 | # sg_provider_dic = {'proxies': []} 161 | provider_dic = { 162 | 'all': all_provider_dic, 163 | # 'others': others_provider_dic, 164 | # 'us': us_provider_dic, 165 | # 'hk': hk_provider_dic, 166 | # 'sg': sg_provider_dic 167 | } 168 | for key in eternity_providers.keys(): # 将节点转换为字典形式 169 | provider_load = yaml.safe_load(eternity_providers[key]) 170 | provider_dic[key].update(provider_load) 171 | 172 | # 创建节点名列表 173 | all_name = [] 174 | # others_name = [] 175 | # us_name = [] 176 | # hk_name = [] 177 | # sg_name = [] 178 | name_dict = { 179 | 'all': all_name, 180 | # 'others': others_name, 181 | # 'us': us_name, 182 | # 'hk': hk_name, 183 | # 'sg': sg_name 184 | } 185 | 186 | indexx = 0 187 | for key in provider_dic.keys(): 188 | if not provider_dic[key]['proxies'] is None: 189 | for proxy in provider_dic[key]['proxies']: 190 | if indexx in skip_names_index: 191 | indexx += 1 192 | continue 193 | try: 194 | speed = substrings( 195 | log_lines_without_bad_char[indexx], "avg_speed:", "|") 196 | name_dict[key].append( 197 | str(proxy['name']).replace(" ", "") + " | " + speed) 198 | except: 199 | name_dict[key].append(str(proxy['name']).replace(" ", "")) 200 | print(log_lines_without_bad_char[indexx]) 201 | 202 | indexx += 1 203 | 204 | if provider_dic[key]['proxies'] is None: 205 | name_dict[key].append('DIRECT') 206 | # 策略分组添加节点名 207 | proxy_groups = config['proxy-groups'] 208 | proxy_group_fill = [] 209 | for rule in proxy_groups: 210 | if rule['proxies'] is None: # 不是空集加入待加入名称列表 211 | proxy_group_fill.append(rule['name']) 212 | 213 | full_size = all_name.__len__() 214 | part_size = int(full_size / 4) 215 | last_size = full_size - (part_size * 3) 216 | for rule_name in proxy_group_fill: 217 | for rule in proxy_groups: 218 | if rule['name'] == rule_name: 219 | # if '美国' in rule_name: 220 | # rule.update({'proxies': us_name}) 221 | # elif '香港' in rule_name: 222 | # rule.update({'proxies': hk_name}) 223 | # elif '狮城' in rule_name or '新加坡' in rule_name: 224 | # rule.update({'proxies': sg_name}) 225 | # elif '其他' in rule_name: 226 | # rule.update({'proxies': others_name}) 227 | # else: 228 | # todo it changes from Main group to tier names 229 | if "Tier 1" in rule_name: 230 | rule.update({'proxies': all_name[0:part_size]}) 231 | elif "Tier 2" in rule_name: 232 | rule.update({'proxies': all_name[part_size:part_size*2]}) 233 | elif "Tier 3" in rule_name: 234 | rule.update({'proxies': all_name[part_size*2:part_size*3]}) 235 | elif "Tier 4" in rule_name: 236 | rule.update({'proxies': all_name[part_size*3:full_size]}) 237 | 238 | config.update(all_provider_dic) 239 | config.update({'proxy-groups': proxy_groups}) 240 | config.update({'proxies': proxy_all}) 241 | 242 | """ 243 | yaml_format = ruamel.yaml.YAML() # https://www.coder.work/article/4975478 244 | yaml_format.indent(mapping=2, sequence=4, offset=2) 245 | config_yaml = yaml_format.dump(config, sys.stdout) 246 | """ 247 | config_yaml = yaml.dump(config, default_flow_style=False, sort_keys=False, 248 | allow_unicode=True, width=750, indent=2, Dumper=NoAliasDumper) 249 | 250 | Eternity_yml = open(output, 'w+', encoding='utf-8') 251 | Eternity_yml.write(config_yaml) 252 | Eternity_yml.close() 253 | 254 | 255 | def backup(file): 256 | try: 257 | t = time.localtime() 258 | date = time.strftime('%y%m', t) 259 | date_day = time.strftime('%y%m%d', t) 260 | 261 | file_eternity = open(file, 'r', encoding='utf-8') 262 | sub_content = file_eternity.read() 263 | file_eternity.close() 264 | 265 | try: 266 | os.mkdir(f'{update_path}{date}') 267 | except FileExistsError: 268 | pass 269 | txt_dir = update_path + date + '/' + date_day + '.txt' # 生成$MM$DD.txt文件名 270 | file = open(txt_dir, 'w', encoding='utf-8') 271 | file.write(sub_convert.base64_decode(sub_content)) 272 | file.close() 273 | except Exception as e: 274 | print("Error While backup EterniyBase_file => if you use method yaml ignore this") 275 | 276 | 277 | if __name__ == '__main__': 278 | sub_merge.geoip_update( 279 | 'https://raw.githubusercontent.com/Loyalsoldier/geoip/release/Country.mmdb') 280 | eternity_convert(Eterniy_file, config_file, output=Eternity_yml_file) 281 | backup(Eterniy_file) 282 | sub_merge.readme_update(readme, sub_merge.read_list(sub_list_json)) 283 | -------------------------------------------------------------------------------- /utils/eternity_convert_airport.py: -------------------------------------------------------------------------------- 1 | import re 2 | import yaml 3 | import json 4 | import re 5 | import time 6 | import os 7 | 8 | from sub_convert import sub_convert 9 | # below is replacement of above 10 | from subs_function import subs_function 11 | 12 | from list_merge_airport import sub_merge 13 | 14 | Eterniy_file = './EternityAir' 15 | Eternity_yml_file = './EternityAir.yml' 16 | log_file = './LogInfoAir.txt' 17 | 18 | provider_path = './update/provider/' 19 | update_path = './update/' 20 | 21 | sub_list_json = './sub/sub_list.json' 22 | 23 | config_file = './update/provider/config.yml' 24 | config_global_file = './update/provider/config-global.yml' 25 | 26 | 27 | # https://ttl255.com/yaml-anchors-and-aliases-and-how-to-disable-them/ 28 | class NoAliasDumper(yaml.SafeDumper): 29 | def ignore_aliases(self, data): 30 | return True 31 | 32 | 33 | def substrings(string, left, right): 34 | value = string.replace('\n', '').replace(' ', '') 35 | start = value.index(left) 36 | end = value[start:].index( 37 | right) + (value.__len__() - value[start:].__len__()) 38 | final_value = value[start:end].replace(left, '') 39 | return final_value 40 | 41 | 42 | def eternity_convert(file, config, output, provider_file_enabled=True): 43 | # # no conversion from base64 so udp is not a problem 44 | # subconvertor not working with only proxy url 45 | all_provider = subs_function.convert_sub( 46 | "https://raw.githubusercontent.com/mahdibland/SSAggregator/master/sub/airport_merge_base64.txt", 'clash', "http://0.0.0.0:25500", False, extra_options="&udp=false") 47 | 48 | ########## Add Name to Logs Before making chaages to Proxies ############ 49 | temp_providers = all_provider.split('\n') 50 | log_reader = open(log_file, 'r') 51 | log_lines = log_reader.readlines() 52 | log_reader.close() 53 | indexx = 0 54 | for line in temp_providers: 55 | if line != 'proxies:': 56 | ##### 57 | server_name = substrings(line, "name:", ",") 58 | server_type = substrings(line, "type:", ",") 59 | log_lines[indexx] = "name: %s | type: %s | %s" % ( 60 | server_name, server_type, log_lines[indexx]) 61 | ##### 62 | indexx += 1 63 | 64 | log_writer = open(log_file, 'w') 65 | log_writer.writelines(log_lines) 66 | log_writer.close() 67 | ############################################################################ 68 | 69 | # remove lines with name issue 70 | removed_bad_char = list(filter(lambda x: str(x).__contains__( 71 | "�") == False, all_provider.split("\n")[1:])) 72 | log_lines_without_bad_char = list(filter(lambda x: str(x).__contains__( 73 | "�") == False, log_lines)) 74 | 75 | # make sure the size of two list are equal 76 | print( 77 | f"removed_bad_char count => {removed_bad_char.__len__()} & log_lines_without_bad_char count => {log_lines_without_bad_char.__len__()}") 78 | 79 | # take a part from begining of all lines 80 | num = 200 81 | num = removed_bad_char.__len__() if removed_bad_char.__len__() <= num else num 82 | 83 | # remove zero speed lines 84 | removed_bad_char_without_zero = [] 85 | for (index, item) in enumerate(removed_bad_char[0:num + 1]): 86 | if log_lines_without_bad_char[index].__contains__("avg_speed: 0.0 MB") == False: 87 | removed_bad_char_without_zero.append(item) 88 | 89 | # convert the safe partition to yaml format 90 | all_provider = "proxies:\n" + "\n".join(removed_bad_char_without_zero) 91 | 92 | lines = re.split(r'\n+', all_provider) 93 | 94 | proxy_all = [] 95 | indexx = 0 96 | for line in lines: 97 | if line != 'proxies:': 98 | try: 99 | name = substrings(line, "name:", ",") 100 | speed = substrings( 101 | log_lines_without_bad_char[indexx], "avg_speed:", "|") 102 | line = re.sub("name:( |)(.*?),", "name: %s | %s," % 103 | (name, speed), line) 104 | except: 105 | print(log_lines_without_bad_char[indexx]) 106 | pass 107 | # line = ' ' + line 108 | line = line.replace('- ', '') 109 | linee = yaml.safe_load(line) 110 | proxy_all.append(linee) 111 | 112 | indexx += 1 113 | 114 | if provider_file_enabled: 115 | providers_files = { 116 | 'all': provider_path + 'provider-all-airport.yml', 117 | } 118 | eternity_providers = { 119 | 'all': all_provider, 120 | } 121 | print('Writing content to provider') 122 | for key in providers_files.keys(): 123 | provider_all = open(providers_files[key], 'w', encoding='utf-8') 124 | provider_all.write(eternity_providers[key]) 125 | provider_all.close() 126 | print('Done!\n') 127 | 128 | # 创建完全配置的Eternity.yml 129 | config_f = open(config_file, 'r', encoding='utf-8') 130 | config_raw = config_f.read() 131 | config_f.close() 132 | 133 | config = yaml.safe_load(config_raw) 134 | 135 | all_provider_dic = {'proxies': []} 136 | provider_dic = { 137 | 'all': all_provider_dic, 138 | } 139 | for key in eternity_providers.keys(): # 将节点转换为字典形式 140 | provider_load = yaml.safe_load(eternity_providers[key]) 141 | provider_dic[key].update(provider_load) 142 | 143 | # 创建节点名列表 144 | all_name = [] 145 | name_dict = { 146 | 'all': all_name, 147 | } 148 | 149 | indexx = 0 150 | for key in provider_dic.keys(): 151 | if not provider_dic[key]['proxies'] is None: 152 | for proxy in provider_dic[key]['proxies']: 153 | try: 154 | speed = substrings( 155 | log_lines_without_bad_char[indexx], "avg_speed:", "|") 156 | name_dict[key].append( 157 | str(proxy['name']).replace(" ", "") + " | " + speed) 158 | except: 159 | name_dict[key].append(str(proxy['name']).replace(" ", "")) 160 | print(log_lines_without_bad_char[indexx]) 161 | 162 | indexx += 1 163 | 164 | if provider_dic[key]['proxies'] is None: 165 | name_dict[key].append('DIRECT') 166 | # 策略分组添加节点名 167 | proxy_groups = config['proxy-groups'] 168 | proxy_group_fill = [] 169 | for rule in proxy_groups: 170 | if rule['proxies'] is None: # 不是空集加入待加入名称列表 171 | proxy_group_fill.append(rule['name']) 172 | 173 | full_size = all_name.__len__() 174 | part_size = int(full_size / 4) 175 | last_size = full_size - (part_size * 3) 176 | for rule_name in proxy_group_fill: 177 | for rule in proxy_groups: 178 | if rule['name'] == rule_name: 179 | # todo it changes from Main group to tier names 180 | if "Tier 1" in rule_name: 181 | rule.update({'proxies': all_name[0:part_size]}) 182 | elif "Tier 2" in rule_name: 183 | rule.update({'proxies': all_name[part_size:part_size*2]}) 184 | elif "Tier 3" in rule_name: 185 | rule.update({'proxies': all_name[part_size*2:part_size*3]}) 186 | elif "Tier 4" in rule_name: 187 | rule.update({'proxies': all_name[part_size*3:full_size]}) 188 | 189 | config.update(all_provider_dic) 190 | config.update({'proxy-groups': proxy_groups}) 191 | config.update({'proxies': proxy_all}) 192 | 193 | config_yaml = yaml.dump(config, default_flow_style=False, sort_keys=False, 194 | allow_unicode=True, width=750, indent=2, Dumper=NoAliasDumper) 195 | 196 | Eternity_yml = open(output, 'w+', encoding='utf-8') 197 | Eternity_yml.write(config_yaml) 198 | Eternity_yml.close() 199 | 200 | 201 | if __name__ == '__main__': 202 | sub_merge.geoip_update( 203 | 'https://raw.githubusercontent.com/Loyalsoldier/geoip/release/Country.mmdb') 204 | eternity_convert(Eterniy_file, config_file, output=Eternity_yml_file) 205 | -------------------------------------------------------------------------------- /utils/list_merge_airport.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | from urllib import request 3 | import yaml 4 | import os 5 | import re 6 | import json 7 | from get_subs import subs 8 | from list_update import update_url 9 | from sub_convert import sub_convert 10 | 11 | 12 | Eterniy = './Eternity' 13 | readme = './README.md' 14 | 15 | sub_list_airport_json = './sub/sub_list_airport.json' 16 | sub_merge_path = './sub/' 17 | sub_list_path = './sub/list/' 18 | 19 | 20 | class sub_merge(): 21 | def read_list(json_file, remote=False): # 将 sub_list.json Url 内容读取为列表 22 | with open(json_file, 'r', encoding='utf-8') as f: 23 | raw_list = json.load(f) 24 | input_list = [] 25 | for index in range(len(raw_list)): 26 | if raw_list[index]['enabled']: 27 | if remote == False: 28 | urls = re.split('\|', raw_list[index]['url']) 29 | else: 30 | urls = raw_list[index]['url'] 31 | raw_list[index]['url'] = urls 32 | input_list.append(raw_list[index]) 33 | return input_list 34 | 35 | def geoip_update(url): 36 | print('Downloading Country.mmdb...') 37 | try: 38 | request.urlretrieve(url, './utils/Country.mmdb') 39 | print('Success!\n') 40 | except Exception: 41 | print('Failed!\n') 42 | pass 43 | 44 | def readme_update(readme_file='./README.md', sub_list=[]): # 更新 README 节点信息 45 | print('Update README.md file...') 46 | with open(readme_file, 'r', encoding='utf-8') as f: 47 | lines = f.readlines() 48 | f.close() 49 | # 获得当前名单及各仓库节点数量 50 | with open('./sub/sub_merge.txt', 'r', encoding='utf-8') as f: 51 | total = len(f.readlines()) 52 | total = f'Total number of merged nodes: `{total}`\n' 53 | thanks = [] 54 | repo_amount_dic = {} 55 | for repo in sub_list: 56 | line = '' 57 | if repo['enabled'] == True: 58 | id = repo['id'] 59 | remarks = repo['remarks'] 60 | repo_site = repo['site'] 61 | 62 | sub_file = f'./sub/list/{id:0>2d}.txt' 63 | with open(sub_file, 'r', encoding='utf-8') as f: 64 | proxies = f.readlines() 65 | if proxies == ['Url 解析错误'] or proxies == ['订阅内容解析错误']: 66 | amount = 0 67 | else: 68 | amount = len(proxies) 69 | f.close() 70 | repo_amount_dic.setdefault(id, amount) 71 | line = f'- [{remarks}]({repo_site}), number of nodes: `{amount}`\n' 72 | if remarks != "alanbobs999/TopFreeProxies": 73 | thanks.append(line) 74 | f.close() 75 | 76 | # 高速节点打印 77 | for index in range(len(lines)): 78 | if lines[index] == '### high-speed node\n': # 目标行内容 79 | # 清除旧内容 80 | lines.pop(index+1) # 删除节点数量 81 | while lines[index+4] != '\n': 82 | lines.pop(index+4) 83 | 84 | with open('./Eternity', 'r', encoding='utf-8') as f: 85 | proxies_base64 = f.read() 86 | proxies = sub_convert.base64_decode(proxies_base64) 87 | proxies = proxies.split('\n') 88 | proxies = [' '+proxy for proxy in proxies] 89 | proxies = [proxy+'\n' for proxy in proxies] 90 | top_amount = len(proxies) 91 | 92 | lines.insert( 93 | index+1, f'high-speed node quantity: `{top_amount}`\n') 94 | index += 4 95 | for i in proxies: 96 | index += 1 97 | lines.insert(index, i) 98 | break 99 | # 所有节点打印 100 | for index in range(len(lines)): 101 | if lines[index] == '### all nodes\n': # 目标行内容 102 | # 清除旧内容 103 | lines.pop(index+1) # 删除节点数量 104 | 105 | # with open('./sub/sub_merge.txt', 'r', encoding='utf-8') as f: 106 | with open('./sub/sub_merge_yaml.yml', 'r', encoding='utf-8') as f: 107 | proxies = f.read() 108 | proxies = proxies.split('\n') 109 | top_amount = len(proxies) - 1 110 | f.close() 111 | # if it's not yaml method we need to add 1 to the top amount 112 | lines.insert( 113 | index+1, f'merge nodes w/o dup: `{top_amount}`\n') 114 | break 115 | # 节点来源打印 116 | for index in range(len(lines)): 117 | if lines[index] == '### node source\n': 118 | # 清除旧内容 119 | while lines[index+1] != '\n': 120 | lines.pop(index+1) 121 | 122 | for i in thanks: 123 | index += 1 124 | lines.insert(index, i) 125 | break 126 | 127 | # 写入 README 内容 128 | with open(readme_file, 'w', encoding='utf-8') as f: 129 | data = ''.join(lines) 130 | print('Finish!\n') 131 | f.write(data) 132 | 133 | 134 | if __name__ == '__main__': 135 | update_url.update_main(use_airport=True, airports_id=[ 136 | 5], sub_list_json="./sub/sub_list_airport.json") 137 | # sub_merge.geoip_update( 138 | # 'https://raw.githubusercontent.com/Loyalsoldier/geoip/release/Country.mmdb') 139 | 140 | sub_list = sub_merge.read_list(sub_list_airport_json) 141 | sub_list_remote = sub_merge.read_list(sub_list_airport_json, True) 142 | 143 | subs.get_subs_v3( 144 | list(filter(lambda x: x['id'] == 5, sub_list)), output_path="airport_merge_yaml", should_cleanup=False, specific_files_cleanup=["05.txt"]) 145 | # sub_merge.readme_update(readme, sub_list) 146 | -------------------------------------------------------------------------------- /utils/list_update.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | 3 | from datetime import timedelta, datetime 4 | import json 5 | import re 6 | import requests 7 | from requests.adapters import HTTPAdapter 8 | from urllib.parse import quote 9 | 10 | # 文件路径定义 11 | # sub_list_json = './sub/sub_list.json' 12 | 13 | def url_updated(url): # 判断远程远程链接是否已经更新 14 | s = requests.Session() 15 | s.mount('http://', HTTPAdapter(max_retries=2)) 16 | s.mount('https://', HTTPAdapter(max_retries=2)) 17 | try: 18 | resp = s.get(url, timeout=4) 19 | status = resp.status_code 20 | except Exception: 21 | status = 404 22 | if status == 200: 23 | url_updated = True 24 | else: 25 | url_updated = False 26 | return url_updated 27 | 28 | 29 | class update_url(): 30 | 31 | def update_main(use_airport=False, airports_id: [] = [5], sub_list_json= './sub/sub_list.json'): 32 | with open(sub_list_json, 'r', encoding='utf-8') as f: # 载入订阅链接 33 | raw_list = json.load(f) 34 | f.close() 35 | 36 | for sub in raw_list: 37 | id = sub['id'] 38 | current_url = sub['url'] 39 | if use_airport == False: 40 | if airports_id.__contains__(id) == False and sub['update_method'] != 'update_airports': 41 | try: 42 | if sub['update_method'] != 'auto' and sub['enabled'] == True: 43 | print(f'Finding available update for ID{id}') 44 | if sub['update_method'] == 'change_date': 45 | new_url = update_url.change_date( 46 | id, current_url) 47 | if new_url == current_url: 48 | print(f'No available update for ID{id}\n') 49 | else: 50 | sub['url'] = new_url 51 | print(f'ID{id} url updated to {new_url}\n') 52 | elif sub['update_method'] == 'page_release': 53 | new_url = update_url.find_link(id, current_url) 54 | if new_url == current_url: 55 | print(f'No available update for ID{id}\n') 56 | else: 57 | sub['url'] = new_url 58 | print(f'ID{id} url updated to {new_url}\n') 59 | elif sub['update_method'] == 'update_airports': 60 | new_url = update_url.update_airports( 61 | id, current_url) 62 | if new_url == current_url: 63 | print(f'No available update for ID{id}\n') 64 | else: 65 | sub['url'] = new_url 66 | print(f'ID{id} url updated to {new_url}\n') 67 | 68 | except KeyError: 69 | print( 70 | f'{id} Url not changed! Please define update method.') 71 | 72 | else: 73 | if airports_id.__contains__(id) == True: 74 | try: 75 | if sub['update_method'] != 'auto' and sub['enabled'] == True: 76 | print(f'Finding available update for ID{id}') 77 | if sub['update_method'] == 'change_date': 78 | new_url = update_url.change_date( 79 | id, current_url) 80 | if new_url == current_url: 81 | print(f'No available update for ID{id}\n') 82 | else: 83 | sub['url'] = new_url 84 | print(f'ID{id} url updated to {new_url}\n') 85 | elif sub['update_method'] == 'page_release': 86 | new_url = update_url.find_link(id, current_url) 87 | if new_url == current_url: 88 | print(f'No available update for ID{id}\n') 89 | else: 90 | sub['url'] = new_url 91 | print(f'ID{id} url updated to {new_url}\n') 92 | elif sub['update_method'] == 'update_airports': 93 | new_url = update_url.update_airports( 94 | id, current_url) 95 | if new_url == current_url: 96 | print(f'No available update for ID{id}\n') 97 | else: 98 | sub['url'] = new_url 99 | print(f'ID{id} url updated to {new_url}\n') 100 | 101 | except KeyError: 102 | print( 103 | f'{id} Url not changed! Please define update method.') 104 | 105 | updated_list = json.dumps( 106 | raw_list, sort_keys=False, indent=2, ensure_ascii=False) 107 | file = open(sub_list_json, 'w', encoding='utf-8') 108 | file.write(updated_list) 109 | file.close() 110 | 111 | def update_airports(id, current_url): 112 | if id == 5: 113 | # try: 114 | s = requests.Session() 115 | s.mount('http://', HTTPAdapter(max_retries=2)) 116 | s.mount('https://', HTTPAdapter(max_retries=2)) 117 | urllist = list(set(list(filter(lambda x: x != "" and str(x).startswith("http"), s.get( 118 | 'https://raw.githubusercontent.com/RenaLio/Mux2sub/main/urllist', timeout=4).text.split("\n"))))) 119 | sublist = list(set(list(filter(lambda x: x != "" and str(x).startswith("http"), s.get( 120 | 'https://raw.githubusercontent.com/RenaLio/Mux2sub/main/sub_list', timeout=4).text.split("\n"))))) 121 | 122 | air_free = list(set(list(filter(lambda x: x != "" and str(x).startswith("http"), s.get( 123 | 'https://raw.githubusercontent.com/rxsweet/getAirport/main/config/sublist_free', timeout=4).text.split("\n"))))) 124 | air_mining = list(set(list(filter(lambda x: x != "" and str(x).startswith("http"), s.get( 125 | 'https://raw.githubusercontent.com/rxsweet/getAirport/main/config/sublist_mining', timeout=4).text.split("\n"))))) 126 | 127 | urllist.extend(sublist) 128 | urllist.extend(air_free) 129 | urllist.extend(air_mining) 130 | 131 | # urllist = list(map(lambda x: quote(x, safe=""), urllist)) 132 | # urllist = list(filter(lambda x: str(x).__contains__( 133 | # "getafreenode.com") == False, urllist)) 134 | new_url = "|".join(list(set(urllist))) 135 | # except Exception as e: 136 | # print(e) 137 | return new_url 138 | 139 | def change_date(id, current_url): 140 | if id == 0: 141 | today = datetime.today().strftime('%m%d') 142 | url_front = 'https://raw.githubusercontent.com/pojiezhiyuanjun/freev2/master/' 143 | url_end = '.txt' 144 | new_url = url_front + today + url_end 145 | 146 | if id == 1: 147 | today = datetime.today().strftime('%Y%m%d') 148 | this_year = datetime.today().strftime('%Y') 149 | this_month = datetime.today().strftime('%m') 150 | url_front = 'https://nodefree.org/dy/' 151 | url_end = '.yaml' 152 | new_url = url_front + this_year + '/' + this_month + '/' + today + url_end 153 | 154 | if id == 3: 155 | # https://v2rayshare.com/wp-content/uploads/2022/10/20221025.txt 156 | today = datetime.today().strftime('%Y%m%d') 157 | this_month = datetime.today().strftime('%m') 158 | this_year = datetime.today().strftime('%Y') 159 | url_front = 'https://v2rayshare.com/wp-content/uploads/' 160 | url_end = '.txt' 161 | new_url = url_front + \ 162 | "/".join([this_year, this_month, today]) + url_end 163 | 164 | if id == 4: 165 | # https://clashnode.com/wp-content/uploads/2022/10/20221004.yaml 166 | today = datetime.today().strftime('%Y%m%d') 167 | this_month = datetime.today().strftime('%m') 168 | this_year = datetime.today().strftime('%Y') 169 | url_front = 'https://clashnode.com/wp-content/uploads/' 170 | url_end = '.txt' 171 | new_url = url_front + \ 172 | "/".join([this_year, this_month, today]) + url_end 173 | 174 | if url_updated(new_url): 175 | return new_url 176 | else: 177 | return current_url 178 | 179 | def find_link(id, current_url): 180 | if id == 2: 181 | try: 182 | res_json = requests.get( 183 | 'https://api.github.com/repos/mianfeifq/share/contents/').json() 184 | for file in res_json: 185 | if file['name'].startswith('data'): 186 | return file['download_url'] 187 | else: 188 | return current_url 189 | except Exception: 190 | return current_url 191 | 192 | 193 | if __name__ == '__main__': 194 | update_url.update_main() 195 | -------------------------------------------------------------------------------- /utils/localserver/index.js: -------------------------------------------------------------------------------- 1 | const express = require("express"); 2 | const needle = require("needle"); 3 | const { Base64 } = require("js-base64"); 4 | // const constant = require("./constant"); 5 | const cors = require("cors"); 6 | 7 | const app = express(); 8 | app.use( 9 | cors({ 10 | origin: "*", 11 | credentials: true, 12 | }) 13 | ); 14 | 15 | // app.get("/get-lite-config", async (req, res) => { 16 | // needle.get( 17 | // constant.lite_config, 18 | // { 19 | // headers: { 20 | // Authorization: constant.token, 21 | // }, 22 | // }, 23 | // (err, result, body) => { 24 | // res.status(200).send(result.body); 25 | // } 26 | // ); 27 | // }); 28 | 29 | app.get("/get-base64", async (req, res) => { 30 | try { 31 | const { content } = req.query; 32 | needle.get( 33 | content, 34 | { 35 | timeout: 60000, 36 | }, 37 | (err, result, body) => { 38 | if (err) { 39 | res.status(400).send(err); 40 | return; 41 | } 42 | res.status(200).send(Base64.toBase64(body)); 43 | } 44 | ); 45 | } catch (error) { 46 | res.status(400).send(error); 47 | } 48 | }); 49 | 50 | let port = process.env.PORT || 3333; 51 | app.listen(port, () => { 52 | console.log(`successfully running on port ${port}`); 53 | }); 54 | -------------------------------------------------------------------------------- /utils/localserver/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "shadowsocks-server", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "type": "commonjs", 7 | "scripts": { 8 | "start": "nodemon index.js" 9 | }, 10 | "keywords": [], 11 | "author": "", 12 | "license": "ISC", 13 | "dependencies": { 14 | "cors": "^2.8.5", 15 | "express": "^4.18.1", 16 | "js-base64": "^3.7.2", 17 | "needle": "^3.1.0", 18 | "nodemon": "^2.0.20", 19 | "yarn": "^1.22.19" 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /utils/requirements.txt: -------------------------------------------------------------------------------- 1 | geoip2==4.7.0 2 | PyYAML==6.0.1 3 | requests 4 | -------------------------------------------------------------------------------- /utils/speedtest/clash_config.yml: -------------------------------------------------------------------------------- 1 | # port of HTTP 2 | port: 7890 3 | 4 | # port of SOCKS5 5 | socks-port: 7891 6 | 7 | # (HTTP and SOCKS5 in one port) 8 | # mixed-port: 7890 9 | 10 | # redir port for Linux and macOS 11 | # redir-port: 7892 12 | 13 | allow-lan: false 14 | mode: rule 15 | log-level: info 16 | external-controller: 127.0.0.1:9090 17 | 18 | proxies: 19 | 20 | ######################### 21 | proxy-groups: 22 | - name: all 23 | type: load-balance 24 | use: 25 | - all 26 | url: 'http://www.gstatic.com/generate_204' 27 | interval: 300 28 | 29 | proxy-providers: 30 | all: 31 | type: http 32 | url: "https://proxies.bihai.cf/clash/proxies?c=CN,HK,TW,US,CA,JP,SG,AU,CH,DE,GB,NL,FR,RU" 33 | path: bihai/provider.yaml 34 | health-check: 35 | enable: true 36 | interval: 600 37 | url: http://www.gstatic.com/generate_204 38 | 39 | rules: 40 | - DOMAIN-SUFFIX,githubusercontent.com,DIRECT 41 | - DOMAIN-SUFFIX,github.com,DIRECT 42 | - MATCH,all 43 | ######################## 44 | -------------------------------------------------------------------------------- /utils/speedtest/clash_config_eu.yml: -------------------------------------------------------------------------------- 1 | # port of HTTP 2 | port: 7890 3 | 4 | # port of SOCKS5 5 | socks-port: 1080 6 | 7 | # (HTTP and SOCKS5 in one port) 8 | # mixed-port: 7890 9 | 10 | # redir port for Linux and macOS 11 | # redir-port: 7892 12 | 13 | allow-lan: false 14 | mode: rule 15 | log-level: info 16 | external-controller: 127.0.0.1:9090 17 | 18 | proxies: 19 | 20 | ######################### 21 | proxy-groups: 22 | - name: all 23 | type: load-balance 24 | use: 25 | - all 26 | url: "http://clients3.google.com/generate_204" 27 | interval: 300 28 | 29 | proxy-providers: 30 | all: 31 | type: http 32 | url: "https://proxies.bihai.cf/clash/proxies?c=DE,GB,NL,FR&filter=nrp" 33 | # url: "https://raw.githubusercontent.com/mahdibland/SSAggregator/master/utils/speedtest/provider.yaml" 34 | path: bihai/no.yaml 35 | health-check: 36 | enable: true 37 | interval: 300 38 | url: http://clients3.google.com/generate_204 39 | 40 | rules: 41 | - DOMAIN-SUFFIX,githubusercontent.com,DIRECT 42 | - DOMAIN-SUFFIX,github.com,DIRECT 43 | - MATCH,all 44 | ######################## 45 | -------------------------------------------------------------------------------- /utils/speedtest/ip_test.sh: -------------------------------------------------------------------------------- 1 | # Clash 2 | wget -O clash.gz https://github.com/Dreamacro/clash/releases/download/v1.11.8/clash-linux-amd64-v1.11.8.gz 3 | gunzip clash.gz 4 | wget -O lite-linux-amd64 https://github.com/mahdibland/SSAggregator/releases/download/1.0.0/lite-linux-amd64 5 | wget -O clash_config.yml https://raw.githubusercontent.com/mahdibland/ShadowsocksAggregator/master/utils/speedtest/clash_config_eu.yml 6 | wget -O proxychains.conf https://raw.githubusercontent.com/mahdibland/ShadowsocksAggregator/master/utils/speedtest/proxychains.conf 7 | wget -O lite_config.json https://raw.githubusercontent.com/mahdibland/ShadowsocksAggregator/master/utils/speedtest/lite_config_yaml.json 8 | #初始化 Clash 9 | chmod +x ./clash && ./clash & 10 | #安装并配置 proxychains 11 | sudo apt-get install proxychains 12 | sudo chmod 777 ../../../../../../etc/proxychains.conf 13 | mv -f proxychains.conf ../../../../../../etc/proxychains.conf 14 | #开始运行 Clash 15 | sudo pkill -f clash 16 | curl -i ifconfig.me 17 | ./clash -f clash_config.yml & 18 | sleep 5 19 | sudo nohup proxychains curl -i ifconfig.me 20 | sleep 5 21 | sudo nohup proxychains curl -i ifconfig.me 22 | sleep 5 23 | sudo nohup proxychains curl -i ifconfig.me 24 | -------------------------------------------------------------------------------- /utils/speedtest/lite_config.json: -------------------------------------------------------------------------------- 1 | { 2 | "group":"FreeProxies", 3 | "speedtestMode":"all", 4 | "pingMethod":"googleping", 5 | "sortMethod":"rspeed", 6 | "concurrency":15, 7 | "testMode":2, 8 | "subscription":"https://raw.githubusercontent.com/mahdibland/SSAggregator/master/sub/sub_merge_base64.txt", 9 | "timeout":12, 10 | "language":"en", 11 | "fontSize":24, 12 | "theme":"rainbow", 13 | "generatePicMode": 0 14 | } 15 | -------------------------------------------------------------------------------- /utils/speedtest/lite_config_yaml.json: -------------------------------------------------------------------------------- 1 | { 2 | "group": "FreeProxies", 3 | "speedtestMode": "all", 4 | "pingMethod": "googleping", 5 | "sortMethod": "rspeed", 6 | "concurrency": 8, 7 | "testMode": 2, 8 | "subscription": "", 9 | "timeout": 10, 10 | "language": "en", 11 | "fontSize": 24, 12 | "unique": true, 13 | "theme": "rainbow", 14 | "generatePicMode": 3, 15 | "outputMode": 3 16 | } 17 | -------------------------------------------------------------------------------- /utils/speedtest/output.py: -------------------------------------------------------------------------------- 1 | import json 2 | import base64 3 | import os 4 | import time 5 | 6 | out_json = './out.json' 7 | 8 | sub_all_base64 = "./sub/sub_merge_base64.txt" 9 | sub_all = "./sub/sub_merge.txt" 10 | Eternity_file_base64 = "./Eternity" 11 | Eternity_file = "./Eternity.txt" 12 | Eternity_Base = "./EternityBase" 13 | 14 | splitted_output = "./sub/splitted/" 15 | 16 | 17 | def read_json(file): # 将 out.json 内容读取为列表 18 | while os.path.isfile(file) == False: 19 | # log 20 | #file_list = os.listdir("./") 21 | #print(file_list) 22 | print('Awaiting speedtest complete') 23 | time.sleep(30) 24 | with open(file, 'r', encoding='utf-8') as f: 25 | print('Reading out.json') 26 | proxies_all = json.load(f)["nodes"] 27 | f.close() 28 | return proxies_all 29 | 30 | 31 | def output(list, num): 32 | # sort base their avg speed rather than max speed which is default option 33 | list = sorted(list, key=lambda x: x['avg_speed'], reverse=True) 34 | 35 | # log 36 | print(list[0]) 37 | print(list[-1]) 38 | 39 | def arred(x, n): return x*(10**n)//1/(10**n) 40 | print(str(list[0])) 41 | output_list = [] 42 | for item in list: 43 | info = "id: %s | remarks: %s | protocol: %s | ping: %s MS | avg_speed: %s MB | max_speed: %s MB | Link: %s\n" % (str(item["id"]), item["remarks"], item["protocol"], str( 44 | item["ping"]), str(arred(item["avg_speed"] * 0.00000095367432, 3)), str(arred(item["max_speed"] * 0.00000095367432, 3)), item["link"]) 45 | output_list.append(info) 46 | with open('./LogInfo.txt', 'w') as f1: 47 | f1.writelines(output_list) 48 | f1.close() 49 | print('Write Log Success!') 50 | 51 | output_list = [] 52 | for index in range(list.__len__()): 53 | proxy = list[index]['link'] 54 | output_list.append(proxy) 55 | 56 | # writing content as mixed and base64 57 | content = '\n'.join(output_list) 58 | content_base64 = base64.b64encode( 59 | '\n'.join(output_list).encode('utf-8')).decode('ascii') 60 | content_base64_part = base64.b64encode( 61 | '\n'.join(output_list[0:num]).encode('utf-8')).decode('ascii') 62 | 63 | # spliting different protocols 64 | os.makedirs(splitted_output, exist_ok=True) 65 | vmess_outputs = [] 66 | trojan_outputs = [] 67 | ssr_outputs = [] 68 | ss_outputs = [] 69 | 70 | for output in output_list: 71 | if str(output).startswith("vmess://"): 72 | vmess_outputs.append(output) 73 | if str(output).startswith("trojan://"): 74 | trojan_outputs.append(output) 75 | if str(output).startswith("ssr://"): 76 | ssr_outputs.append(output) 77 | if str(output).startswith("ss://"): 78 | ss_outputs.append(output) 79 | 80 | with open(splitted_output.__add__("vmess.txt"), 'w') as f: 81 | vmess_content = "\n".join(vmess_outputs) 82 | f.write(vmess_content) 83 | print('Write vmess splitted Success!') 84 | f.close() 85 | 86 | with open(splitted_output.__add__("trojan.txt"), 'w') as f: 87 | trojan_content = "\n".join(trojan_outputs) 88 | f.write(trojan_content) 89 | print('Write trojan splitted Success!') 90 | f.close() 91 | 92 | with open(splitted_output.__add__("ssr.txt"), 'w') as f: 93 | ssr_content = "\n".join(ssr_outputs) 94 | f.write(ssr_content) 95 | print('Write ssr splitted Success!') 96 | f.close() 97 | 98 | with open(splitted_output.__add__("ss.txt"), 'w') as f: 99 | ss_content = "\n".join(ss_outputs) 100 | f.write(ss_content) 101 | print('Write ss splitted Success!') 102 | f.close() 103 | 104 | ################## 105 | 106 | with open(sub_all_base64, 'w+', encoding='utf-8') as f: 107 | f.write(content_base64) 108 | print('Write All Base64 Success!') 109 | f.close() 110 | with open(Eternity_file_base64, 'w+', encoding='utf-8') as f: 111 | f.write(content_base64_part) 112 | print('Write Part Base64 Success!') 113 | f.close() 114 | 115 | with open(sub_all, 'w') as f: 116 | f.write(content) 117 | print('Write All Success!') 118 | f.close() 119 | with open(Eternity_Base, 'w') as f: 120 | f.write(content) 121 | print('Write Base Success!') 122 | f.close() 123 | with open(Eternity_file, 'w') as f: 124 | f.write('\n'.join(output_list[0:num])) 125 | print('Write Part Base Success!') 126 | f.close() 127 | return content 128 | 129 | 130 | if __name__ == '__main__': 131 | num = 200 132 | value = read_json(out_json) 133 | output(value, value.__len__() if value.__len__() <= num else num) 134 | -------------------------------------------------------------------------------- /utils/speedtest/provider.yaml: -------------------------------------------------------------------------------- 1 | proxies: 2 | - { name: "Kazan", type: vmess, server: napsternetv.com, port: 443, uuid: 2F094845-E2BD-EBF7-DEB7-995992436FAF, alterId: 0, cipher: auto, tls: true, network: ws, ws-opts: { path: /speedtest, headers: { host: kzn.napsternetv.com } } } 3 | -------------------------------------------------------------------------------- /utils/speedtest/proxychains.conf: -------------------------------------------------------------------------------- 1 | strict_chain 2 | proxy_dns 3 | remote_dns_subnet 224 4 | tcp_read_time_out 15000 5 | tcp_connect_time_out 10000 6 | localnet 127.0.0.0/255.0.0.0 7 | quiet_mode 8 | 9 | [ProxyList] 10 | socks5 127.0.0.1 1080 11 | -------------------------------------------------------------------------------- /utils/speedtest/speedtest.sh: -------------------------------------------------------------------------------- 1 | #准备好所需文件 2 | wget -O clash.gz https://github.com/Dreamacro/clash/releases/download/v1.11.8/clash-linux-amd64-v1.11.8.gz 3 | gunzip clash.gz 4 | wget -O lite-linux-amd64 https://github.com/mahdibland/SSAggregator/releases/download/1.0.0/lite-linux-amd64 5 | wget -O clash_config.yml https://raw.githubusercontent.com/mahdibland/ShadowsocksAggregator/master/utils/speedtest/clash_config.yml 6 | wget -O proxychains.conf https://raw.githubusercontent.com/mahdibland/ShadowsocksAggregator/master/utils/speedtest/proxychains.conf 7 | wget -O lite_config.json https://raw.githubusercontent.com/mahdibland/ShadowsocksAggregator/master/utils/speedtest/lite_config.json 8 | #初始化 Clash 9 | chmod +x ./clash && ./clash & 10 | #安装并配置 proxychains 11 | sudo apt-get install proxychains 12 | sudo chmod 777 ../../../../../../etc/proxychains.conf 13 | mv -f proxychains.conf ../../../../../../etc/proxychains.conf 14 | #开始运行 Clash 15 | sudo pkill -f clash 16 | ./clash -f clash_config.yml & 17 | #运行 LiteSpeedTest 18 | chmod +x ./lite-linux-amd64 19 | sudo nohup proxychains ./lite-linux-amd64 --config ./lite_config.json --test subs >speedtest.log 2>&1 & 20 | -------------------------------------------------------------------------------- /utils/speedtest/speedtest2.sh: -------------------------------------------------------------------------------- 1 | #准备好所需文件 2 | wget -O lite-linux-amd64 https://github.com/mahdibland/SSAggregator/releases/download/1.0.0/lite-linux-amd64 3 | wget -O lite_config.json https://raw.githubusercontent.com/mahdibland/ShadowsocksAggregator/master/utils/speedtest/lite_config.json 4 | #运行 LiteSpeedTest 5 | chmod +x ./lite-linux-amd64 6 | sudo nohup ./lite-linux-amd64 --config ./lite_config.json --test subs >speedtest.log 2>&1 & 7 | -------------------------------------------------------------------------------- /utils/speedtest/speedtest2_yaml.sh: -------------------------------------------------------------------------------- 1 | #准备好所需文件 2 | wget -O lite-linux-amd64.gz https://github.com/xxf098/LiteSpeedTest/releases/download/v0.14.1/lite-linux-amd64-v0.14.1.gz 3 | gzip -d lite-linux-amd64.gz 4 | wget -O lite_config.json https://raw.githubusercontent.com/mahdibland/ShadowsocksAggregator/master/utils/speedtest/lite_config_yaml.json 5 | #运行 LiteSpeedTest 6 | chmod +x ./lite-linux-amd64 7 | sudo nohup ./lite-linux-amd64 --config ./lite_config.json --test https://raw.githubusercontent.com/mahdibland/SSAggregator/master/sub/sub_merge_yaml.yml > speedtest.log 2>&1 & 8 | -------------------------------------------------------------------------------- /utils/speedtest/speedtest2_yamlc.sh: -------------------------------------------------------------------------------- 1 | # Clash 2 | wget -O clash.gz https://github.com/Dreamacro/clash/releases/download/v1.11.8/clash-linux-amd64-v1.11.8.gz 3 | gunzip clash.gz 4 | wget -O lite-linux-amd64.gz https://github.com/xxf098/LiteSpeedTest/releases/download/v0.14.1/lite-linux-amd64-v0.14.1.gz 5 | gzip -d lite-linux-amd64.gz 6 | wget -O clash_config.yml https://raw.githubusercontent.com/mahdibland/ShadowsocksAggregator/master/utils/speedtest/clash_config_eu.yml 7 | wget -O proxychains.conf https://raw.githubusercontent.com/mahdibland/ShadowsocksAggregator/master/utils/speedtest/proxychains.conf 8 | wget -O lite_config.json https://raw.githubusercontent.com/mahdibland/ShadowsocksAggregator/master/utils/speedtest/lite_config_yaml.json 9 | #初始化 Clash 10 | chmod +x ./clash && ./clash & 11 | #安装并配置 proxychains 12 | sudo apt-get install proxychains 13 | sudo chmod 777 ../../../../../../etc/proxychains.conf 14 | mv -f proxychains.conf ../../../../../../etc/proxychains.conf 15 | #开始运行 Clash 16 | sudo pkill -f clash 17 | ./clash -f clash_config.yml & 18 | #运行 LiteSpeedTest 19 | sleep 5 20 | chmod +x ./lite-linux-amd64 21 | sudo nohup proxychains ./lite-linux-amd64 --config ./lite_config.json --test https://raw.githubusercontent.com/mahdibland/SSAggregator/master/sub/sub_merge_yaml.yml > speedtest.log 2>&1 & 22 | --------------------------------------------------------------------------------