├── .github └── workflows │ ├── auto_update.yml │ └── delete_workflow_runs.yml ├── .gitignore ├── LICENSE ├── README.md ├── clash.yaml ├── list.json ├── merge ├── merge.txt ├── merge_base64.txt └── merge_clash.yaml ├── utils ├── requirements ├── sub_convert.py ├── sub_merge.py └── sub_update.py └── v2ray /.github/workflows/auto_update.yml: -------------------------------------------------------------------------------- 1 | # This is a basic workflow to help you get started with Actions 2 | # 配置参考 https://github.com/alanbobs999/TopFreeProxies 3 | 4 | name: Auto update 5 | 6 | # Controls when the workflow will run 7 | 8 | on: 9 | schedule: 10 | # Executed at 5:00, 13:00, 21:00 o'clock every day 11 | # 表达式生成 https://crontab.guru/ 12 | - cron: '0 5,13,21 * * *' 13 | 14 | workflow_dispatch: 15 | 16 | jobs: 17 | auto_update: 18 | runs-on: ubuntu-latest 19 | steps: 20 | - name: Checkout 21 | uses: actions/checkout@v2 22 | - name: Python 23 | uses: actions/setup-python@v2 24 | with: 25 | python-version: '3.10' 26 | - name: Cache 27 | uses: actions/cache@v4 28 | with: 29 | path: ~/.cache/pip 30 | key: ${{ runner.os }}-pip-${{ hashFiles('**/run_in_Actions/requirements') }} 31 | restore-keys: | 32 | ${{ runner.os }}-pip- 33 | - name: Timezone 34 | run: sudo timedatectl set-timezone 'Asia/Shanghai' 35 | - name: Requirements 36 | run: | 37 | pip install -r ./utils/requirements 38 | - name: SubMerge 39 | run: | 40 | wget -O subconverter.tar.gz https://github.com/tindy2013/subconverter/releases/latest/download/subconverter_linux64.tar.gz 41 | tar -zxvf subconverter.tar.gz -C ./ 42 | chmod +x ./subconverter/subconverter && nohup ./subconverter/subconverter >./subconverter.log 2>&1 & 43 | python ./utils/sub_merge.py 44 | - name: GitMerge 45 | run: | 46 | git config --local user.email "actions@github.com" 47 | git config --local user.name "GitHub Actions" 48 | git pull origin master 49 | git add ./merge 50 | git add v2ray 51 | git add clash.yaml 52 | git commit -m "merge: $(date '+%Y-%m-%d %H:%M:%S') 合并节点" 53 | - name: Push 54 | uses: ad-m/github-push-action@master 55 | with: 56 | branch: master 57 | - name: GitCommit 58 | run: | 59 | git pull origin master 60 | git add list.json 61 | (git commit -m "update: $(date '+%Y-%m-%d %H:%M:%S') 更新链接") || true 62 | - name: GitPush 63 | uses: ad-m/github-push-action@master 64 | with: 65 | branch: master 66 | 67 | to_gitee: 68 | needs: [auto_update] 69 | runs-on: ubuntu-latest 70 | steps: 71 | - name: 'Checkout' 72 | uses: actions/checkout@v4.2.2 73 | with: 74 | fetch-depth: 0 75 | - name: 'Mirror to gitee' 76 | uses: mfuu/repository-mirroring-action@v1 77 | with: 78 | target_repo_url: git@gitee.com:mfuu/v2ray.git 79 | ssh_private_key: ${{ secrets.MIRROR }} 80 | 81 | to_gitlab: 82 | needs: [auto_update] 83 | runs-on: ubuntu-latest 84 | steps: 85 | - name: 'Checkout' 86 | uses: actions/checkout@v4.2.2 87 | with: 88 | fetch-depth: 0 89 | - name: 'Mirror to gitlab' 90 | uses: mfuu/repository-mirroring-action@v1 91 | with: 92 | target_repo_url: git@gitlab.com:mfuu/v2ray.git 93 | ssh_private_key: ${{ secrets.MIRROR }} 94 | 95 | update_branch: 96 | needs: [to_gitee, to_gitlab] 97 | runs-on: ubuntu-latest 98 | steps: 99 | - name: Checkout 100 | uses: actions/checkout@v2 101 | - name: UpdateBranch 102 | run: | 103 | git config --local user.email "actions@github.com" 104 | git config --local user.name "GitHub Actions" 105 | git pull origin master 106 | git checkout --orphan latest_branch 107 | git add -A 108 | git commit -am "update: $(date '+%Y-%m-%d %H:%M:%S')" 109 | git branch -D master 110 | git branch -m master 111 | git push -f origin master 112 | -------------------------------------------------------------------------------- /.github/workflows/delete_workflow_runs.yml: -------------------------------------------------------------------------------- 1 | name: Delete old workflow runs 2 | on: 3 | schedule: 4 | - cron: '0 0 1 * *' 5 | # Run monthly, at 00:00 on the 1st day of month. 6 | 7 | jobs: 8 | del_runs: 9 | runs-on: ubuntu-latest 10 | permissions: 11 | actions: write 12 | steps: 13 | - name: Delete workflow runs 14 | uses: Mattraks/delete-workflow-runs@v2 15 | with: 16 | token: ${{ github.token }} 17 | repository: ${{ github.repository }} 18 | retain_days: 30 19 | keep_minimum_runs: 6 -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /utils/__pycache__ 2 | /utils/Country.mmdb 3 | subconverter 4 | subconverter.log 5 | subconverter.tar.gz -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Attribution-ShareAlike 4.0 International 2 | 3 | ======================================================================= 4 | 5 | Creative Commons Corporation ("Creative Commons") is not a law firm and 6 | does not provide legal services or legal advice. Distribution of 7 | Creative Commons public licenses does not create a lawyer-client or 8 | other relationship. Creative Commons makes its licenses and related 9 | information available on an "as-is" basis. Creative Commons gives no 10 | warranties regarding its licenses, any material licensed under their 11 | terms and conditions, or any related information. Creative Commons 12 | disclaims all liability for damages resulting from their use to the 13 | fullest extent possible. 14 | 15 | Using Creative Commons Public Licenses 16 | 17 | Creative Commons public licenses provide a standard set of terms and 18 | conditions that creators and other rights holders may use to share 19 | original works of authorship and other material subject to copyright 20 | and certain other rights specified in the public license below. The 21 | following considerations are for informational purposes only, are not 22 | exhaustive, and do not form part of our licenses. 23 | 24 | Considerations for licensors: Our public licenses are 25 | intended for use by those authorized to give the public 26 | permission to use material in ways otherwise restricted by 27 | copyright and certain other rights. Our licenses are 28 | irrevocable. Licensors should read and understand the terms 29 | and conditions of the license they choose before applying it. 30 | Licensors should also secure all rights necessary before 31 | applying our licenses so that the public can reuse the 32 | material as expected. Licensors should clearly mark any 33 | material not subject to the license. This includes other CC- 34 | licensed material, or material used under an exception or 35 | limitation to copyright. More considerations for licensors: 36 | wiki.creativecommons.org/Considerations_for_licensors 37 | 38 | Considerations for the public: By using one of our public 39 | licenses, a licensor grants the public permission to use the 40 | licensed material under specified terms and conditions. If 41 | the licensor's permission is not necessary for any reason--for 42 | example, because of any applicable exception or limitation to 43 | copyright--then that use is not regulated by the license. Our 44 | licenses grant only permissions under copyright and certain 45 | other rights that a licensor has authority to grant. Use of 46 | the licensed material may still be restricted for other 47 | reasons, including because others have copyright or other 48 | rights in the material. A licensor may make special requests, 49 | such as asking that all changes be marked or described. 50 | Although not required by our licenses, you are encouraged to 51 | respect those requests where reasonable. More considerations 52 | for the public: 53 | wiki.creativecommons.org/Considerations_for_licensees 54 | 55 | ======================================================================= 56 | 57 | Creative Commons Attribution-ShareAlike 4.0 International Public 58 | License 59 | 60 | By exercising the Licensed Rights (defined below), You accept and agree 61 | to be bound by the terms and conditions of this Creative Commons 62 | Attribution-ShareAlike 4.0 International Public License ("Public 63 | License"). To the extent this Public License may be interpreted as a 64 | contract, You are granted the Licensed Rights in consideration of Your 65 | acceptance of these terms and conditions, and the Licensor grants You 66 | such rights in consideration of benefits the Licensor receives from 67 | making the Licensed Material available under these terms and 68 | conditions. 69 | 70 | 71 | Section 1 -- Definitions. 72 | 73 | a. Adapted Material means material subject to Copyright and Similar 74 | Rights that is derived from or based upon the Licensed Material 75 | and in which the Licensed Material is translated, altered, 76 | arranged, transformed, or otherwise modified in a manner requiring 77 | permission under the Copyright and Similar Rights held by the 78 | Licensor. For purposes of this Public License, where the Licensed 79 | Material is a musical work, performance, or sound recording, 80 | Adapted Material is always produced where the Licensed Material is 81 | synched in timed relation with a moving image. 82 | 83 | b. Adapter's License means the license You apply to Your Copyright 84 | and Similar Rights in Your contributions to Adapted Material in 85 | accordance with the terms and conditions of this Public License. 86 | 87 | c. BY-SA Compatible License means a license listed at 88 | creativecommons.org/compatiblelicenses, approved by Creative 89 | Commons as essentially the equivalent of this Public License. 90 | 91 | d. Copyright and Similar Rights means copyright and/or similar rights 92 | closely related to copyright including, without limitation, 93 | performance, broadcast, sound recording, and Sui Generis Database 94 | Rights, without regard to how the rights are labeled or 95 | categorized. For purposes of this Public License, the rights 96 | specified in Section 2(b)(1)-(2) are not Copyright and Similar 97 | Rights. 98 | 99 | e. Effective Technological Measures means those measures that, in the 100 | absence of proper authority, may not be circumvented under laws 101 | fulfilling obligations under Article 11 of the WIPO Copyright 102 | Treaty adopted on December 20, 1996, and/or similar international 103 | agreements. 104 | 105 | f. Exceptions and Limitations means fair use, fair dealing, and/or 106 | any other exception or limitation to Copyright and Similar Rights 107 | that applies to Your use of the Licensed Material. 108 | 109 | g. License Elements means the license attributes listed in the name 110 | of a Creative Commons Public License. The License Elements of this 111 | Public License are Attribution and ShareAlike. 112 | 113 | h. Licensed Material means the artistic or literary work, database, 114 | or other material to which the Licensor applied this Public 115 | License. 116 | 117 | i. Licensed Rights means the rights granted to You subject to the 118 | terms and conditions of this Public License, which are limited to 119 | all Copyright and Similar Rights that apply to Your use of the 120 | Licensed Material and that the Licensor has authority to license. 121 | 122 | j. Licensor means the individual(s) or entity(ies) granting rights 123 | under this Public License. 124 | 125 | k. Share means to provide material to the public by any means or 126 | process that requires permission under the Licensed Rights, such 127 | as reproduction, public display, public performance, distribution, 128 | dissemination, communication, or importation, and to make material 129 | available to the public including in ways that members of the 130 | public may access the material from a place and at a time 131 | individually chosen by them. 132 | 133 | l. Sui Generis Database Rights means rights other than copyright 134 | resulting from Directive 96/9/EC of the European Parliament and of 135 | the Council of 11 March 1996 on the legal protection of databases, 136 | as amended and/or succeeded, as well as other essentially 137 | equivalent rights anywhere in the world. 138 | 139 | m. You means the individual or entity exercising the Licensed Rights 140 | under this Public License. Your has a corresponding meaning. 141 | 142 | 143 | Section 2 -- Scope. 144 | 145 | a. License grant. 146 | 147 | 1. Subject to the terms and conditions of this Public License, 148 | the Licensor hereby grants You a worldwide, royalty-free, 149 | non-sublicensable, non-exclusive, irrevocable license to 150 | exercise the Licensed Rights in the Licensed Material to: 151 | 152 | a. reproduce and Share the Licensed Material, in whole or 153 | in part; and 154 | 155 | b. produce, reproduce, and Share Adapted Material. 156 | 157 | 2. Exceptions and Limitations. For the avoidance of doubt, where 158 | Exceptions and Limitations apply to Your use, this Public 159 | License does not apply, and You do not need to comply with 160 | its terms and conditions. 161 | 162 | 3. Term. The term of this Public License is specified in Section 163 | 6(a). 164 | 165 | 4. Media and formats; technical modifications allowed. The 166 | Licensor authorizes You to exercise the Licensed Rights in 167 | all media and formats whether now known or hereafter created, 168 | and to make technical modifications necessary to do so. The 169 | Licensor waives and/or agrees not to assert any right or 170 | authority to forbid You from making technical modifications 171 | necessary to exercise the Licensed Rights, including 172 | technical modifications necessary to circumvent Effective 173 | Technological Measures. For purposes of this Public License, 174 | simply making modifications authorized by this Section 2(a) 175 | (4) never produces Adapted Material. 176 | 177 | 5. Downstream recipients. 178 | 179 | a. Offer from the Licensor -- Licensed Material. Every 180 | recipient of the Licensed Material automatically 181 | receives an offer from the Licensor to exercise the 182 | Licensed Rights under the terms and conditions of this 183 | Public License. 184 | 185 | b. Additional offer from the Licensor -- Adapted Material. 186 | Every recipient of Adapted Material from You 187 | automatically receives an offer from the Licensor to 188 | exercise the Licensed Rights in the Adapted Material 189 | under the conditions of the Adapter's License You apply. 190 | 191 | c. No downstream restrictions. You may not offer or impose 192 | any additional or different terms or conditions on, or 193 | apply any Effective Technological Measures to, the 194 | Licensed Material if doing so restricts exercise of the 195 | Licensed Rights by any recipient of the Licensed 196 | Material. 197 | 198 | 6. No endorsement. Nothing in this Public License constitutes or 199 | may be construed as permission to assert or imply that You 200 | are, or that Your use of the Licensed Material is, connected 201 | with, or sponsored, endorsed, or granted official status by, 202 | the Licensor or others designated to receive attribution as 203 | provided in Section 3(a)(1)(A)(i). 204 | 205 | b. Other rights. 206 | 207 | 1. Moral rights, such as the right of integrity, are not 208 | licensed under this Public License, nor are publicity, 209 | privacy, and/or other similar personality rights; however, to 210 | the extent possible, the Licensor waives and/or agrees not to 211 | assert any such rights held by the Licensor to the limited 212 | extent necessary to allow You to exercise the Licensed 213 | Rights, but not otherwise. 214 | 215 | 2. Patent and trademark rights are not licensed under this 216 | Public License. 217 | 218 | 3. To the extent possible, the Licensor waives any right to 219 | collect royalties from You for the exercise of the Licensed 220 | Rights, whether directly or through a collecting society 221 | under any voluntary or waivable statutory or compulsory 222 | licensing scheme. In all other cases the Licensor expressly 223 | reserves any right to collect such royalties. 224 | 225 | 226 | Section 3 -- License Conditions. 227 | 228 | Your exercise of the Licensed Rights is expressly made subject to the 229 | following conditions. 230 | 231 | a. Attribution. 232 | 233 | 1. If You Share the Licensed Material (including in modified 234 | form), You must: 235 | 236 | a. retain the following if it is supplied by the Licensor 237 | with the Licensed Material: 238 | 239 | i. identification of the creator(s) of the Licensed 240 | Material and any others designated to receive 241 | attribution, in any reasonable manner requested by 242 | the Licensor (including by pseudonym if 243 | designated); 244 | 245 | ii. a copyright notice; 246 | 247 | iii. a notice that refers to this Public License; 248 | 249 | iv. a notice that refers to the disclaimer of 250 | warranties; 251 | 252 | v. a URI or hyperlink to the Licensed Material to the 253 | extent reasonably practicable; 254 | 255 | b. indicate if You modified the Licensed Material and 256 | retain an indication of any previous modifications; and 257 | 258 | c. indicate the Licensed Material is licensed under this 259 | Public License, and include the text of, or the URI or 260 | hyperlink to, this Public License. 261 | 262 | 2. You may satisfy the conditions in Section 3(a)(1) in any 263 | reasonable manner based on the medium, means, and context in 264 | which You Share the Licensed Material. For example, it may be 265 | reasonable to satisfy the conditions by providing a URI or 266 | hyperlink to a resource that includes the required 267 | information. 268 | 269 | 3. If requested by the Licensor, You must remove any of the 270 | information required by Section 3(a)(1)(A) to the extent 271 | reasonably practicable. 272 | 273 | b. ShareAlike. 274 | 275 | In addition to the conditions in Section 3(a), if You Share 276 | Adapted Material You produce, the following conditions also apply. 277 | 278 | 1. The Adapter's License You apply must be a Creative Commons 279 | license with the same License Elements, this version or 280 | later, or a BY-SA Compatible License. 281 | 282 | 2. You must include the text of, or the URI or hyperlink to, the 283 | Adapter's License You apply. You may satisfy this condition 284 | in any reasonable manner based on the medium, means, and 285 | context in which You Share Adapted Material. 286 | 287 | 3. You may not offer or impose any additional or different terms 288 | or conditions on, or apply any Effective Technological 289 | Measures to, Adapted Material that restrict exercise of the 290 | rights granted under the Adapter's License You apply. 291 | 292 | 293 | Section 4 -- Sui Generis Database Rights. 294 | 295 | Where the Licensed Rights include Sui Generis Database Rights that 296 | apply to Your use of the Licensed Material: 297 | 298 | a. for the avoidance of doubt, Section 2(a)(1) grants You the right 299 | to extract, reuse, reproduce, and Share all or a substantial 300 | portion of the contents of the database; 301 | 302 | b. if You include all or a substantial portion of the database 303 | contents in a database in which You have Sui Generis Database 304 | Rights, then the database in which You have Sui Generis Database 305 | Rights (but not its individual contents) is Adapted Material, 306 | including for purposes of Section 3(b); and 307 | 308 | c. You must comply with the conditions in Section 3(a) if You Share 309 | all or a substantial portion of the contents of the database. 310 | 311 | For the avoidance of doubt, this Section 4 supplements and does not 312 | replace Your obligations under this Public License where the Licensed 313 | Rights include other Copyright and Similar Rights. 314 | 315 | 316 | Section 5 -- Disclaimer of Warranties and Limitation of Liability. 317 | 318 | a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE 319 | EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS 320 | AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF 321 | ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, 322 | IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, 323 | WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR 324 | PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, 325 | ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT 326 | KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT 327 | ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. 328 | 329 | b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE 330 | TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, 331 | NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, 332 | INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, 333 | COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR 334 | USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN 335 | ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR 336 | DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR 337 | IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. 338 | 339 | c. The disclaimer of warranties and limitation of liability provided 340 | above shall be interpreted in a manner that, to the extent 341 | possible, most closely approximates an absolute disclaimer and 342 | waiver of all liability. 343 | 344 | 345 | Section 6 -- Term and Termination. 346 | 347 | a. This Public License applies for the term of the Copyright and 348 | Similar Rights licensed here. However, if You fail to comply with 349 | this Public License, then Your rights under this Public License 350 | terminate automatically. 351 | 352 | b. Where Your right to use the Licensed Material has terminated under 353 | Section 6(a), it reinstates: 354 | 355 | 1. automatically as of the date the violation is cured, provided 356 | it is cured within 30 days of Your discovery of the 357 | violation; or 358 | 359 | 2. upon express reinstatement by the Licensor. 360 | 361 | For the avoidance of doubt, this Section 6(b) does not affect any 362 | right the Licensor may have to seek remedies for Your violations 363 | of this Public License. 364 | 365 | c. For the avoidance of doubt, the Licensor may also offer the 366 | Licensed Material under separate terms or conditions or stop 367 | distributing the Licensed Material at any time; however, doing so 368 | will not terminate this Public License. 369 | 370 | d. Sections 1, 5, 6, 7, and 8 survive termination of this Public 371 | License. 372 | 373 | 374 | Section 7 -- Other Terms and Conditions. 375 | 376 | a. The Licensor shall not be bound by any additional or different 377 | terms or conditions communicated by You unless expressly agreed. 378 | 379 | b. Any arrangements, understandings, or agreements regarding the 380 | Licensed Material not stated herein are separate from and 381 | independent of the terms and conditions of this Public License. 382 | 383 | 384 | Section 8 -- Interpretation. 385 | 386 | a. For the avoidance of doubt, this Public License does not, and 387 | shall not be interpreted to, reduce, limit, restrict, or impose 388 | conditions on any use of the Licensed Material that could lawfully 389 | be made without permission under this Public License. 390 | 391 | b. To the extent possible, if any provision of this Public License is 392 | deemed unenforceable, it shall be automatically reformed to the 393 | minimum extent necessary to make it enforceable. If the provision 394 | cannot be reformed, it shall be severed from this Public License 395 | without affecting the enforceability of the remaining terms and 396 | conditions. 397 | 398 | c. No term or condition of this Public License will be waived and no 399 | failure to comply consented to unless expressly agreed to by the 400 | Licensor. 401 | 402 | d. Nothing in this Public License constitutes or may be interpreted 403 | as a limitation upon, or waiver of, any privileges and immunities 404 | that apply to the Licensor or You, including from the legal 405 | processes of any jurisdiction or authority. 406 | 407 | 408 | ======================================================================= 409 | 410 | Creative Commons is not a party to its public licenses. 411 | Notwithstanding, Creative Commons may elect to apply one of its public 412 | licenses to material it publishes and in those instances will be 413 | considered the “Licensor.” The text of the Creative Commons public 414 | licenses is dedicated to the public domain under the CC0 Public Domain 415 | Dedication. Except for the limited purpose of indicating that material 416 | is shared under a Creative Commons public license or as otherwise 417 | permitted by the Creative Commons policies published at 418 | creativecommons.org/policies, Creative Commons does not authorize the 419 | use of the trademark "Creative Commons" or any other trademark or logo 420 | of Creative Commons without its prior written consent including, 421 | without limitation, in connection with any unauthorized modifications 422 | to any of its public licenses or any other arrangements, 423 | understandings, or agreements concerning use of licensed material. For 424 | the avoidance of doubt, this paragraph does not form part of the public 425 | licenses. 426 | 427 | Creative Commons may be contacted at creativecommons.org. 428 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ## V2ray-Nodes 2 | 3 | ![Vistors](https://visitor-badge.laobi.icu/badge?page_id=mfuu.v2ray) ![LICENSE](https://img.shields.io/badge/license-CC%20BY--SA%204.0-green.svg) 4 | 5 | **该仓库仅对部分节点内容做了整合,避免重复添加链接。每8个小时自动更新,节点内容参考 `list.json`** 6 | 7 | | 工具 | Android | Windows | 8 | | ---- | ---- | ---- | 9 | | v2ray | [v2rayNG](https://github.com/2dust/v2rayNG/releases/download/1.6.28/v2rayNG_1.6.28_arm64-v8a.apk) | [v2rayN](https://github.com/2dust/v2rayN/releases/download/3.27/v2rayN-Core.zip) | 10 | 11 | **订阅链接:** 12 | 13 | ``` 14 | https://raw.githubusercontent.com/mfuu/v2ray/master/v2ray 15 | ``` 16 | 17 | ``` 18 | https://raw.githubusercontent.com/mfuu/v2ray/master/clash.yaml 19 | ``` 20 | 21 | 22 | **镜像:** 23 | 24 | ``` 25 | https://gitlab.com/mfuu/v2ray/-/raw/master/v2ray 26 | ``` 27 | 28 | ``` 29 | https://gitlab.com/mfuu/v2ray/-/raw/master/clash.yaml 30 | ``` 31 | 32 | 33 | **参考仓库** 34 | 35 | * https://github.com/alanbobs999/TopFreeProxies 36 | 37 | ## HOST 38 | 39 | 修改host文件,提升访问速度,推荐使用 [SwitchHosts](https://github.com/oldj/SwitchHosts) 40 | 41 | * GITHUB https://raw.githubusercontent.com/ineo6/hosts/master/hosts 42 | * Google https://raw.githubusercontent.com/googlehosts/hosts/master/hosts-files/hosts 43 | 44 | 45 | ## 仓库声明 46 | 47 | **订阅节点仅作学习交流使用,只是对网络上节点的选择合并,用于查找资料,学习知识,不做任何违法行为。所有资源均来自互联网,仅供大家交流学习使用,出现违法问题概不负责。** 48 | -------------------------------------------------------------------------------- /clash.yaml: -------------------------------------------------------------------------------- 1 | proxies: 2 | - {name: 🇨🇦CA-51.79.102.253-000, server: 51.79.102.253, port: 80, type: vmess, uuid: 58fe1542-5290-40ad-815a-77707a81afe5, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /IOebhLMhl1CTbFHbL95myfRX2, tls: false, ws-headers: {Host: 51.79.102.253}} 3 | - {name: 🏁RELAY-162.159.45.236-001, server: 162.159.45.236, port: 2086, type: vmess, uuid: 7d92ffc9-02e1-4087-8a46-cc4d76560917, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: github.com/Alvin9999, tls: false, ws-headers: {Host: m6919.164748.xyz}} 4 | - {name: 🇨🇭CH-204.136.10.115-002, server: 204.136.10.115, port: 1866, type: ss, cipher: chacha20-ietf-poly1305, password: oXGp1+ihlfKg826H} 5 | - {name: 🇨🇦CA-51.79.103.76-003, server: 51.79.103.76, port: 80, type: vmess, uuid: 58fe1542-5290-40ad-815a-77707a81afe5, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /IOebhLMhl1CTbFHbL95myfRX2, tls: false, ws-headers: {Host: wrmelmwxlf.gktevlrqznwqqozy.fabpfs66gizmnojhcvqxwl.kytrcfzqla87gvgvs6c7kjnrubuh.cc}} 6 | - {name: 🇫🇷FR-57.128.190.171-004, server: 57.128.190.171, port: 11259, type: ss, cipher: chacha20-ietf-poly1305, password: f9d73c84e32a10f3} 7 | - {name: 🇱🇹LT-45.87.175.28-005, server: 45.87.175.28, port: 8080, type: ss, cipher: chacha20-ietf-poly1305, password: oZIoA69Q8yhcQV8ka3Pa3A} 8 | - {name: 🇫🇷FR-57.128.190.110-006, server: 57.128.190.110, port: 11703, type: ss, cipher: chacha20-ietf-poly1305, password: d275849ebcfcec7e} 9 | - {name: 🏁RELAY-104.21.21.192-007, server: b62a948c-faa2-4e8a-bf8a-3ff3121c875a.asoul-ava.top, port: 443, type: vmess, uuid: 5f726fe3-d82e-4da5-a711-8af0cbb2b682, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /azumase.ren, tls: true, ws-headers: {Host: b62a948c-faa2-4e8a-bf8a-3ff3121c875a.asoul-ava.top}} 10 | - {name: 🇫🇷FR-107.191.63.241-008, server: 107.191.63.241, port: 30665, type: ss, cipher: chacha20-ietf-poly1305, password: 44fe4b7d-cd48-45fc-a036-60ea40e4a96c} 11 | - {name: 🇭🇰HK-1.65.209.65-009, server: e0b97381-swo740-sy0k9b-yjq0.hgc1.tcpbbr.net, port: 8080, type: vmess, uuid: 25b2699a-e18e-11ec-8e69-f23c91cfbbc9, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: false, ws-headers: {Host: e0b97381-swo740-sy0k9b-yjq0.hgc1.tcpbbr.net}} 12 | - {name: 🇨🇳CN-120.198.71.216-010, server: 120.198.71.216, port: 35921, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.198.71.216}} 13 | - {name: 🇨🇳CN-120.234.102.229-011, server: 120.234.102.229, port: 49174, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.234.102.229}} 14 | - {name: 🇫🇷FR-15.188.131.37-012, server: 15.188.131.37, port: 22222, type: trojan, password: telegram-id-privatevpns, sni: trojan.burgerip.co.uk, skip-cert-verify: true} 15 | - {name: 🇫🇷FR-15.237.11.137-013, server: 15.237.11.137, port: 22222, type: trojan, password: telegram-id-privatevpns, sni: trojan.burgerip.co.uk, skip-cert-verify: true} 16 | - {name: 🇹🇷TR-202.78.162.5-014, server: 202.78.162.5, port: 443, type: vmess, uuid: 716eded6-2201-4dbd-9d63-1638c9e8e677, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: true, ws-headers: {Host: pendar.onthewifi.com}} 17 | - {name: 🇹🇷TR-202.78.162.5-015, server: 202.78.162.5, port: 443, type: vmess, uuid: 2ff97c6d-8557-42a4-b43f-19c77c5959ea, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: true, ws-headers: {Host: irsoft.sytes.net}} 18 | - {name: 🏁RELAY-172.67.133.248-016, server: 172.67.133.248, port: 443, type: trojan, password: f0f6e76e-e5fe-4e2c-9faf-34832e021eae, sni: DDd.890604.FIlEGear-sG.Me, ws-path: "h=%2FmZr1mA5hub7QHHkQBzYO", skip-cert-verify: true} 19 | - {name: 🇨🇳CN-111.26.109.79-017, server: v32.heduian.link, port: 30832, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: baidu.com}} 20 | - {name: 🇭🇰HK-1.65.209.65-018, server: 507dabb3-swtr40-sxzp1j-1irfn.hgc1.tcpbbr.net, port: 8080, type: vmess, uuid: a33115b6-75fa-11ed-8826-f23c9164ca5d, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: false, ws-headers: {Host: 507dabb3-swtr40-sxzp1j-1irfn.hgc1.tcpbbr.net}} 21 | - {name: 🏁RELAY-104.21.32.1-019, server: 5tghyu8.999820.xyz, port: 80, type: vmess, uuid: 90f357dd-79ac-47c6-b0b8-958e2d19de07, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /10W6SJaK0F0oVXeNU6S2RVRP, tls: false, ws-headers: {Host: 5tghyu8.999820.xyz}} 22 | - {name: 🇨🇳CN-183.238.90.8-020, server: 183.238.90.8, port: 41766, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.238.90.8}} 23 | - {name: 🇩🇪DE-3.77.75.190-021, server: 3.77.75.190, port: 22222, type: trojan, password: telegram-id-privatevpns, sni: trojan.burgerip.co.uk, skip-cert-verify: true} 24 | - {name: 🇨🇳CN-36.151.251.62-022, server: 36.151.251.62, port: 3330, type: trojan, password: RlzoEILU, sni: cdn.egvra.cn, skip-cert-verify: true} 25 | - {name: 🇨🇳CN-120.232.153.63-023, server: 120.232.153.63, port: 37805, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.63}} 26 | - {name: 🏁RELAY-104.21.64.1-024, server: 104.21.64.1, port: 2096, type: vmess, uuid: 8f78e709-2c5f-4c19-9f44-b5b5f80ab74c, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: true, ws-headers: {Host: cc2d1.988988.shop}} 27 | - {name: 🏁RELAY-172.67.214.33-025, server: 172.67.214.33, port: 2082, type: vmess, uuid: 2f821152-c3e9-4074-9185-2790e7425f42, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: false, ws-headers: {Host: cs.flha.ru}} 28 | - {name: 🇭🇰HK-1.65.209.65-026, server: d98cad7b-swkhs0-swwn15-1phla.hgc1.tcpbbr.net, port: 8080, type: vmess, uuid: 467f2940-77cd-11ee-b5ed-f23c9164ca5d, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: false, ws-headers: {Host: d98cad7b-swkhs0-swwn15-1phla.hgc1.tcpbbr.net}} 29 | - {name: 🇭🇰HK-1.65.209.65-027, server: 2abb3c67-swkhs0-t1457r-g53t.hgc1.tcpbbr.net, port: 8080, type: vmess, uuid: b778e4ae-1458-11ec-a8bf-f23c91cfbbc9, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: false, ws-headers: {Host: 2abb3c67-swkhs0-t1457r-g53t.hgc1.tcpbbr.net}} 30 | - {name: 🏁RELAY-104.21.16.1-028, server: de01.sh-cloudflare.sbs, port: 2096, type: vmess, uuid: b3928f8d-ea81-4d75-bcec-4016a072adff, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: true, ws-headers: {Host: de01.sh-cloudflare.sbs}} 31 | - {name: 🇭🇰HK-1.65.209.65-029, server: 0e1121ca-swd340-teqqcv-1rc6n.hgc1.tcpbbr.net, port: 8080, type: vmess, uuid: 32bd96d6-186b-11f0-9a65-f23c9164ca5d, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: false, ws-headers: {Host: 0e1121ca-swd340-teqqcv-1rc6n.hgc1.tcpbbr.net}} 32 | - {name: 🇫🇷FR-193.243.147.128-030, server: 193.243.147.128, port: 40368, type: ss, cipher: aes-256-gcm, password: 7BcLdsO1WweoGD0X} 33 | - {name: 🇨🇳CN-120.198.71.219-031, server: 120.198.71.219, port: 49355, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.198.71.219}} 34 | - {name: 🇨🇳CN-58.246.138.244-032, server: sslvpn.51job.com, port: 1443, type: vmess, uuid: a6a0d901-67e9-460a-90b5-634c5c4f9782, alterId: 64, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /634c5c4f9782, tls: true, ws-headers: {Host: centos7}} 35 | - {name: 🇸🇰SK-156.146.40.194-033, server: 156.146.40.194, port: 989, type: ss, cipher: aes-256-cfb, password: f8f7aCzcPKbsF8p3} 36 | - {name: 🇨🇳CN-183.236.51.38-034, server: 183.236.51.38, port: 49291, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 37 | - {name: 🇨🇳CN-157.148.96.92-035, server: 391907cc-swgsg0-t1bnjq-1krtb.cu.plebai.net, port: 15229, type: trojan, password: 60f6b4c4-9d70-11ed-a4d2-f23c9164ca5d, skip-cert-verify: true} 38 | - {name: 🇯🇵JP-38.47.96.30-036, server: 38.47.96.30, port: 443, type: vmess, uuid: 164a6ad0-476a-4bae-b78f-a3d37cf0f414, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /lzjjj, tls: true, ws-headers: {Host: th.lzj520hxw.dpdns.org}} 39 | - {name: 🇰🇷KR-125.141.31.72-037, server: 125.141.31.72, port: 15098, type: ss, cipher: aes-256-cfb, password: "qwerREWQ@@"} 40 | - {name: 🇨🇳CN-111.26.109.79-038, server: v29.heduian.link, port: 30829, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: ocbc.com}} 41 | - {name: 🇩🇪DE-5.39.249.119-039, server: de.vmess.comnpmjs.com, port: 443, type: vmess, uuid: ceaaf653-9874-58c6-b100-092c01a1f73d, alterId: 0, cipher: auto, skip-cert-verify: true, network: grpc, ws-path: vmess-grpc, tls: true, ws-headers: {Host: de.vmess.comnpmjs.com}} 42 | - {name: 🇭🇰HK-1.65.209.65-040, server: bc842b49-swexs0-t1rt5e-1s09x.hgc1.tcpbbr.net, port: 8080, type: vmess, uuid: 62b7824e-47dc-11ef-9f2d-f23c9164ca5d, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: false, ws-headers: {Host: broadcastlv.chat.bilibili.com}} 43 | - {name: 🇨🇳CN-157.148.96.92-041, server: 13c2c931-swin40-swy6li-tni2.cu.plebai.net, port: 15229, type: trojan, password: 5e2f888c-68ef-11ef-96ca-f23c9164ca5d, sni: 13c2c931-swin40-swy6li-tni2.cu.plebai.net, skip-cert-verify: true} 44 | - {name: 🇨🇳CN-157.148.96.92-042, server: 4560c642-swin40-tjuq6l-wf62.cu.plebai.net, port: 15229, type: trojan, password: def14a51-e0d9-11ec-8429-f23c91cfbbc9, sni: 4560c642-swin40-tjuq6l-wf62.cu.plebai.net, skip-cert-verify: true} 45 | - {name: 🇰🇷KR-3.35.54.68-043, server: 3.35.54.68, port: 443, type: ss, cipher: aes-256-cfb, password: yijian0503} 46 | - {name: 🇨🇳CN-183.2.157.135-044, server: 8tv68qhq.slashdevslashnetslashtun.net, port: 15010, type: ss, cipher: aes-256-gcm, password: ENYGONDU94UW1G6X} 47 | - {name: 🇭🇰HK-1.65.250.168-045, server: hkkh11v1.xpmc.cc, port: 27693, type: ss, cipher: chacha20-ietf-poly1305, password: 91a41f4e02dc} 48 | - {name: 🇨🇳CN-183.236.51.38-046, server: 183.236.51.38, port: 49302, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 49 | - {name: 🇯🇵JP-48.218.11.10-047, server: usla.mjt000.com, port: 443, type: trojan, password: e4af2638-bb12-4e4a-84f1-a032e23ca63f, sni: usla.mjt000.com, skip-cert-verify: true} 50 | - {name: 🇨🇳CN-120.232.153.40-048, server: 120.232.153.40, port: 52182, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 51 | - {name: 🇨🇳CN-111.26.109.79-049, server: v9.heduian.link, port: 30809, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: baidu.com}} 52 | - {name: 🇨🇳CN-120.232.153.40-050, server: 120.232.153.40, port: 31209, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 53 | - {name: 🇨🇳CN-120.233.147.160-051, server: jg647hf446ghvw.gym0boy.com, port: 16100, type: ss, cipher: chacha20-ietf-poly1305, password: a9d1c7f7-a1bc-47d8-b320-9b79cdf8cd00} 54 | - {name: 🇨🇳CN-163.177.45.154-052, server: cn01.efan8867801.xyz, port: 8766, type: ss, cipher: rc4-md5, password: efanccyun} 55 | - {name: 🇭🇰HK-43.226.17.17-053, server: 43.226.17.17, port: 25356, type: ss, cipher: chacha20-ietf-poly1305, password: 2e96aa2f3054} 56 | - {name: 🇨🇳CN-183.2.157.134-054, server: ti3hyra4.slashdevslashnetslashtun.net, port: 18008, type: ss, cipher: aes-256-gcm, password: 6EZ5QKFX60AVSUYT} 57 | - {name: 🇨🇳CN-120.233.147.160-055, server: jg647hf446ghvw.gym0boy.com, port: 32875, type: ss, cipher: chacha20-ietf-poly1305, password: a9d1c7f7-a1bc-47d8-b320-9b79cdf8cd00} 58 | - {name: 🇨🇳CN-36.150.94.35-056, server: v12.heduian.link, port: 30812, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: ocbc.com}} 59 | - {name: 🇨🇳CN-120.233.147.160-057, server: jg647hf446ghvw.gym0boy.com, port: 44054, type: ss, cipher: chacha20-ietf-poly1305, password: a9d1c7f7-a1bc-47d8-b320-9b79cdf8cd00} 60 | - {name: 🇨🇳CN-183.240.227.29-058, server: sg1.qqingca.cc, port: 20347, type: ss, cipher: chacha20-ietf-poly1305, password: 5a0b2638-8416-42c1-b87e-99864b3d3ef2} 61 | - {name: 🇰🇷KR-125.141.26.12-059, server: 125.141.26.12, port: 4857, type: ss, cipher: aes-256-cfb, password: "qwerREWQ@@"} 62 | - {name: 🇰🇷KR-27.255.82.135-060, server: p080.panda001.net, port: 36379, type: ss, cipher: aes-256-cfb, password: "qwerREWQ@@"} 63 | - {name: 🇨🇳CN-163.177.45.154-061, server: cn01.efan8867801.xyz, port: 8774, type: ss, cipher: rc4-md5, password: efanccyun} 64 | - {name: 🇨🇳CN-111.26.109.79-062, server: v32.heduian.link, port: 30832, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: baidu.com}} 65 | - {name: 🇨🇳CN-111.26.109.79-063, server: 111.26.109.79, port: 30828, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: ocbc.com}} 66 | - {name: 🇨🇳CN-183.2.157.134-064, server: ti3hyra4.slashdevslashnetslashtun.net, port: 17005, type: ss, cipher: aes-256-gcm, password: 2Z11BX63H64YSEDM} 67 | - {name: 🇰🇷KR-3.35.54.68-065, server: 3.35.54.68, port: 443, type: ss, cipher: ss, password: //YWVzLTI1Ni1jZmI6eWlqaWFuMDUwMw} 68 | - {name: 🇨🇳CN-183.2.157.135-066, server: 8tv68qhq.slashdevslashnetslashtun.net, port: 15010, type: ss, cipher: ss, password: //YWVzLTI1Ni1nY206RU5ZR09ORFU5NFVXMUc2WA} 69 | - {name: 🇨🇳CN-183.236.51.38-067, server: 183.236.51.38, port: 49302, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 70 | - {name: 🇨🇳CN-120.232.153.40-068, server: 120.232.153.40, port: 52182, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 71 | - {name: 🇨🇳CN-120.232.153.40-069, server: 120.232.153.40, port: 31209, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 72 | - {name: 🇨🇳CN-120.233.147.160-070, server: jg647hf446ghvw.gym0boy.com, port: 16100, type: ss, cipher: ss, password: //Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTphOWQxYzdmNy1hMWJjLTQ3ZDgtYjMyMC05Yjc5Y2RmOGNkMDA} 73 | - {name: 🇨🇳CN-183.2.157.134-071, server: ti3hyra4.slashdevslashnetslashtun.net, port: 18008, type: ss, cipher: ss, password: //YWVzLTI1Ni1nY206NkVaNVFLRlg2MEFWU1VZVA} 74 | - {name: 🇨🇳CN-120.233.147.160-072, server: jg647hf446ghvw.gym0boy.com, port: 32875, type: ss, cipher: ss, password: //Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTphOWQxYzdmNy1hMWJjLTQ3ZDgtYjMyMC05Yjc5Y2RmOGNkMDA} 75 | - {name: 🇯🇵JP-8.211.154.107-073, server: 8.211.154.107, port: 50951, type: vmess, uuid: a3d04548-625c-4658-9ff0-f9a7835d1f6d, alterId: 0, cipher: auto, skip-cert-verify: true, network: kcp, ws-path: /, tls: false, ws-headers: {Host: 8.211.154.107}} 76 | - {name: 🇨🇳CN-120.233.147.160-074, server: jg647hf446ghvw.gym0boy.com, port: 44054, type: ss, cipher: ss, password: //Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTphOWQxYzdmNy1hMWJjLTQ3ZDgtYjMyMC05Yjc5Y2RmOGNkMDA} 77 | - {name: 🇨🇳CN-183.240.227.29-075, server: sg1.qqingca.cc, port: 20347, type: ss, cipher: ss, password: //Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTo1YTBiMjYzOC04NDE2LTQyYzEtYjg3ZS05OTg2NGIzZDNlZjI} 78 | - {name: 🇰🇷KR-125.141.26.12-076, server: 125.141.26.12, port: 4857, type: ss, cipher: ss, password: //YWVzLTI1Ni1jZmI6cXdlclJFV1FAQA} 79 | - {name: 🇰🇷KR-27.255.82.135-077, server: p080.panda001.net, port: 36379, type: ss, cipher: ss, password: //YWVzLTI1Ni1jZmI6cXdlclJFV1FAQA} 80 | - {name: 🇨🇳CN-183.2.157.134-078, server: ti3hyra4.slashdevslashnetslashtun.net, port: 17005, type: ss, cipher: ss, password: //YWVzLTI1Ni1nY206MloxMUJYNjNINjRZU0VETQ} 81 | - {name: 🏁RELAY-188.164.159.241-079, server: 188.164.159.241, port: 2096, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, ws-path: "h=%2F%3Fed%3D2560", skip-cert-verify: true} 82 | - {name: 🇨🇳CN-157.148.96.89-080, server: f1e4e0ee-swin40-t12cnj-1ol97.cu.plebai.net, port: 15229, type: trojan, password: 93fb69fc-77cf-11ee-85ee-f23c91369f2d, sni: f1e4e0ee-swin40-t12cnj-1ol97.cu.plebai.net, skip-cert-verify: true} 83 | - {name: 🇨🇳CN-157.148.96.94-081, server: 6f772034-sx6ps0-taklwz-12bd.cu.plebai.net, port: 15229, type: trojan, password: ea76ae7e-ea95-11ef-8b73-f23c91cfbbc9, sni: 6f772034-sx6ps0-taklwz-12bd.cu.plebai.net, skip-cert-verify: true} 84 | - {name: 🇨🇳CN-157.148.96.92-082, server: 8e9c3ff5-sx4v40-t6oecc-1slpn.cu.plebai.net, port: 15229, type: trojan, password: 659b0268-92ca-11ef-b3af-f23c913c8d2b, sni: 8e9c3ff5-sx4v40-t6oecc-1slpn.cu.plebai.net, skip-cert-verify: true} 85 | - {name: 🇨🇳CN-157.148.96.94-083, server: 415a547f-sx8kg0-t1msbw-1nn0k.cu.plebai.net, port: 15229, type: trojan, password: f9c35596-f323-11ed-8ccd-f23c91cfbbc9, sni: 415a547f-sx8kg0-t1msbw-1nn0k.cu.plebai.net, skip-cert-verify: true} 86 | - {name: 🇨🇳CN-157.148.96.92-084, server: 2252b964-sx4v40-tee612-2r82.cu.plebai.net, port: 15229, type: trojan, password: 03573f46-e944-11eb-a8bf-f23c91cfbbc9, sni: 2252b964-sx4v40-tee612-2r82.cu.plebai.net, skip-cert-verify: true} 87 | - {name: 🇨🇳CN-157.148.96.92-085, server: 67636d50-sx6ps0-sxpbuh-1ndin.cu.plebai.net, port: 15229, type: trojan, password: 1a7f2766-e24d-11ed-98a7-f23c913c8d2b, sni: 67636d50-sx6ps0-sxpbuh-1ndin.cu.plebai.net, skip-cert-verify: true} 88 | - {name: 🇨🇳CN-157.148.96.89-086, server: a4b963da-sx6ps0-t0j7ql-1t7gn.cu.plebai.net, port: 15229, type: trojan, password: 4d78032e-d27c-11ef-bd97-f23c9164ca5d, sni: a4b963da-sx6ps0-t0j7ql-1t7gn.cu.plebai.net, skip-cert-verify: true} 89 | - {name: 🇨🇳CN-157.148.96.92-087, server: 3c80a135-swb8g0-t6ouc9-13xtu.cu.plebai.net, port: 15229, type: trojan, password: 4a7f880c-72f4-11ed-b0b5-f23c9164ca5d, sni: 3c80a135-swb8g0-t6ouc9-13xtu.cu.plebai.net, skip-cert-verify: true} 90 | - {name: 🇨🇳CN-157.148.96.94-088, server: 2e051986-sx4v40-t2ghw9-1pf7n.cu.plebai.net, port: 15229, type: trojan, password: e542ec26-b786-11ee-9a75-f23c91cfbbc9, sni: 2e051986-sx4v40-t2ghw9-1pf7n.cu.plebai.net, skip-cert-verify: true} 91 | - {name: 🇨🇳CN-157.148.96.92-089, server: c5d812aa-sx4v40-sx7hbg-1mmbp.cu.plebai.net, port: 15229, type: trojan, password: 607d365e-7ea1-11ee-95e9-f23c913c8d2b, sni: c5d812aa-sx4v40-sx7hbg-1mmbp.cu.plebai.net, skip-cert-verify: true} 92 | - {name: 🇨🇳CN-157.148.96.94-090, server: f8263ad9-sx8kg0-t7qex7-1supq.cu.plebai.net, port: 15229, type: trojan, password: 7af3db60-b2d9-11ef-88ab-f23c913c8d2b, sni: f8263ad9-sx8kg0-t7qex7-1supq.cu.plebai.net, skip-cert-verify: true} 93 | - {name: 🇨🇳CN-157.148.96.94-091, server: 493d7185-sx4v40-t30eih-jm0w.cu.plebai.net, port: 15229, type: trojan, password: e3004917-ad9d-b8a2-a2ee-65a54830e020, sni: 493d7185-sx4v40-t30eih-jm0w.cu.plebai.net, skip-cert-verify: true} 94 | - {name: 🇨🇳CN-157.148.96.92-092, server: eb4fe914-sx6ps0-t234dm-eso8.cu.plebai.net, port: 15229, type: trojan, password: 3c461e2c-9d13-11ef-8563-f23c913c8d2b, sni: eb4fe914-sx6ps0-t234dm-eso8.cu.plebai.net, skip-cert-verify: true} 95 | - {name: 🇨🇳CN-157.148.96.94-093, server: e3ca594f-sx8kg0-t9azkv-17xn0.cu.plebai.net, port: 15229, type: trojan, password: 4faf123a-572a-11eb-8684-f23c913c8d2b, sni: e3ca594f-sx8kg0-t9azkv-17xn0.cu.plebai.net, skip-cert-verify: true} 96 | - {name: 🇨🇳CN-157.148.96.94-094, server: 0a107103-sx8kg0-syxs94-1jbj0.cu.plebai.net, port: 15229, type: trojan, password: b2c6384c-f63d-11ec-b1b3-f23c91cfbbc9, sni: 0a107103-sx8kg0-syxs94-1jbj0.cu.plebai.net, skip-cert-verify: true} 97 | - {name: 🇨🇳CN-157.148.96.92-095, server: d6cafd53-sx4v40-tbcla6-194tt.cu.plebai.net, port: 15229, type: trojan, password: 602e99aa-718d-11eb-b77b-f23c913c8d2b, sni: d6cafd53-sx4v40-tbcla6-194tt.cu.plebai.net, skip-cert-verify: true} 98 | - {name: 🏁RELAY-103.116.7.103-096, server: 103.116.7.103, port: 2083, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, ws-path: "h=%2F%3Fed%3D2560", skip-cert-verify: true} 99 | - {name: 🇰🇷KR-112.184.209.63-097, server: 112.184.209.63, port: 12088, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, ws-path: "h=%2F%3Fed%3D2560", skip-cert-verify: true} 100 | - {name: 🇳🇴NO-95.164.38.151-098, server: 95.164.38.151, port: 443, type: trojan, password: 0fc9c5ff-9531-4178-966f-7d958e1df64b, sni: copy-wifi-twins.stark-industries.solutions, skip-cert-verify: true} 101 | - {name: 🏁RELAY-5.182.84.244-099, server: 5.182.84.244, port: 443, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, ws-path: "h=%2F%3Fed%3D2560", skip-cert-verify: true} 102 | - {name: 🏁RELAY-92.53.190.161-100, server: 92.53.190.161, port: 2087, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, ws-path: "h=%2F%3Fed%3D2560", skip-cert-verify: true} 103 | - {name: 🇨🇳CN-163.177.45.154-101, server: cn01.efan8867801.xyz, port: "8766/?plugin=obfs-local%3Bobfs%3Dhttp%3Bobfs-host%3D202505282364048-MMi78MWpgU.download.microsoft.com", type: ss, cipher: rc4-md5, password: efanccyun} 104 | - {name: 🇭🇰HK-43.226.17.17-102, server: 43.226.17.17, port: "25356/?plugin=v2ray-plugin%3Bmode%3Dwebsocket%3Bpath%3D%2Flornlqecrjwe%3Bhost%3Dkr7v1.pmxiaonan.xyz%3Btls", type: ss, cipher: chacha20-ietf-poly1305, password: 2e96aa2f3054} 105 | - {name: 🇭🇰HK-1.65.250.168-103, server: hkkh11v1.xpmc.cc, port: "27693/?plugin=v2ray-plugin%3Bmode%3Dwebsocket%3Bmux%3D8%3Bpath%3D%2Futvbnrzejpmt%3Bhost%3Dhkkh11v1.xpmc.cc%3Btls", type: ss, cipher: chacha20-ietf-poly1305, password: 91a41f4e02dc} 106 | - {name: 🇨🇳CN-163.177.45.154-104, server: cn01.efan8867801.xyz, port: "8774/?plugin=obfs-local%3Bobfs%3Dhttp%3Bobfs-host%3D202505160159024-hAiTvMCGlv.download.microsoft.com", type: ss, cipher: rc4-md5, password: efanccyun} 107 | - {name: 🏁RELAY-172.67.153.59-105, server: ssp1.100896.xyz, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp1.100896.xyz, skip-cert-verify: true} 108 | - {name: 🏁RELAY-198.41.220.125-106, server: 198.41.220.125, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp2.100896.xyz, skip-cert-verify: true} 109 | - {name: 🏁RELAY-172.67.153.59-107, server: ssloa1.100896.xyz, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssloa1.100896.xyz, skip-cert-verify: true} 110 | - {name: 🏁RELAY-172.67.153.59-108, server: ssloa1.100896.xyz, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssloa1.100896.xyz, skip-cert-verify: true} 111 | - {name: 🏁RELAY-104.21.3.60-109, server: ssanj01.100896.xyz, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssanj01.100896.xyz, skip-cert-verify: true} 112 | - {name: 🏁RELAY-104.21.3.60-110, server: ssanj01.100896.xyz, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssanj01.100896.xyz, skip-cert-verify: true} 113 | - {name: 🏁RELAY-104.21.3.60-111, server: ssp1.100896.xyz, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp1.100896.xyz, skip-cert-verify: true} 114 | - {name: 🏁RELAY-190.93.244.105-112, server: 190.93.244.105, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp1.100896.xyz, skip-cert-verify: true} 115 | - {name: 🏁RELAY-108.162.196.69-113, server: 108.162.196.69, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssanj01.100896.xyz, skip-cert-verify: true} 116 | - {name: 🏁RELAY-141.101.114.154-114, server: 141.101.114.154, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp1.100896.xyz, skip-cert-verify: true} 117 | - {name: 🏁RELAY-162.159.128.101-115, server: 162.159.128.101, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp1.100896.xyz, skip-cert-verify: true} 118 | - {name: 🏁RELAY-172.67.156.239-116, server: 172.67.156.239, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssloa2.100896.xyz, skip-cert-verify: true} 119 | - {name: 🏁RELAY-188.114.97.58-117, server: 188.114.97.58, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssloa2.100896.xyz, skip-cert-verify: true} 120 | - {name: 🏁RELAY-172.67.152.188-118, server: 172.67.152.188, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp1.100896.xyz, skip-cert-verify: true} 121 | - {name: 🏁RELAY-141.101.120.10-119, server: 141.101.120.10, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp2.100896.xyz, skip-cert-verify: true} 122 | - {name: 🏁RELAY-108.162.198.165-120, server: 108.162.198.165, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp1.100896.xyz, skip-cert-verify: true} 123 | - {name: 🏁RELAY-190.93.244.105-121, server: 190.93.244.105, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp1.100896.xyz, skip-cert-verify: true} 124 | - {name: 🏁RELAY-198.41.220.125-122, server: 198.41.220.125, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp2.100896.xyz, skip-cert-verify: true} 125 | - {name: 🏁RELAY-104.22.5.205-123, server: 104.22.5.205, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp2.100896.xyz, skip-cert-verify: true} 126 | - {name: 🏁RELAY-108.162.196.130-124, server: 108.162.196.130, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp2.100896.xyz, skip-cert-verify: true} 127 | - {name: 🏁RELAY-108.162.198.165-125, server: 108.162.198.165, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp1.100896.xyz, skip-cert-verify: true} 128 | - {name: 🏁RELAY-188.114.97.58-126, server: 188.114.97.58, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp1.100896.xyz, skip-cert-verify: true} 129 | - {name: 🏁RELAY-141.101.115.138-127, server: cdn3.100896.xyz, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp6.100896.xyz, skip-cert-verify: true} 130 | - {name: 🇨🇳CN-120.232.153.40-128, server: 120.232.153.40, port: 52182, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 131 | - {name: 🇨🇳CN-36.156.102.123-129, server: 36.156.102.123, port: 50723, type: trojan, password: RlzoEILU, sni: 36.156.102.123, skip-cert-verify: true} 132 | - {name: 🇨🇳CN-120.232.153.40-130, server: 120.232.153.40, port: 31209, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 133 | - {name: 🇭🇰HK-38.147.187.99-131, server: 38.147.187.99, port: 18181, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 134 | - {name: 🇨🇳CN-183.236.51.38-132, server: 183.236.51.38, port: 33919, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 135 | - {name: 🇨🇳CN-120.232.153.40-133, server: 120.232.153.40, port: 50152, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 136 | - {name: 🏁RELAY-162.159.152.11-134, server: 162.159.152.11, port: 443, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 137 | - {name: 🇸🇬SG-43.134.167.135-135, server: 43.134.167.135, port: 9950, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 138 | - {name: 🇨🇳CN-120.232.153.40-136, server: 120.232.153.40, port: 43292, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 139 | - {name: 🏁RELAY-162.159.153.212-137, server: 162.159.153.212, port: 443, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 140 | - {name: 🇨🇳CN-120.198.71.219-138, server: 120.198.71.219, port: 51095, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.198.71.219}} 141 | - {name: 🇨🇳CN-183.236.51.38-139, server: 183.236.51.38, port: 41024, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 142 | - {name: 🇨🇳CN-183.236.51.38-140, server: 183.236.51.38, port: 59652, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 143 | - {name: 🇨🇳CN-183.236.51.38-141, server: 183.236.51.38, port: 59652, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 144 | - {name: 🇨🇳CN-183.236.51.38-142, server: 183.236.51.38, port: 49302, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 145 | - {name: 🇨🇳CN-183.236.51.38-143, server: 183.236.51.38, port: 49554, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 146 | - {name: 🏁RELAY-31.43.179.60-144, server: 31.43.179.60, port: 2053, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 147 | - {name: 🇨🇳CN-125.88.196.143-145, server: dozo01.flztjc.top, port: 8313, type: trojan, password: 2c605663-b89a-5734-a9d6-97d4743d72cf, sni: dozo01.flztjc.top, skip-cert-verify: true} 148 | - {name: 🏁RELAY-108.165.152.59-146, server: 108.165.152.59, port: 2087, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 149 | - {name: 🏁RELAY-108.165.152.36-147, server: 108.165.152.36, port: 2096, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 150 | - {name: 🇨🇳CN-183.236.51.38-148, server: 183.236.51.38, port: 49302, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 151 | - {name: 🇨🇳CN-183.240.228.221-149, server: b2bb1a46-surog0-t2cl3c-14ubl.cm.plebai.net, port: 15229, type: vmess, uuid: d0f35ada-c39c-11ef-8a98-f23c91cfbbc9, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: b2bb1a46-surog0-t2cl3c-14ubl.cm.plebai.net}} 152 | - {name: 🇨🇳CN-183.240.228.221-150, server: 614ea2b0-sux8g0-td95qh-1isea.cm.plebai.net, port: 15229, type: vmess, uuid: d6abdbda-fe9d-11ec-bb74-f23c9164ca5d, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 614ea2b0-sux8g0-td95qh-1isea.cm.plebai.net}} 153 | - {name: 🇨🇳CN-183.232.235.2-151, server: 183.232.235.2, port: 8313, type: trojan, password: 2c605663-b89a-5734-a9d6-97d4743d72cf, sni: hk-13-568.flztjc.net, skip-cert-verify: true} 154 | - {name: 🇺🇸US-198.12.121.169-152, server: 198.12.121.169, port: 24863, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 155 | - {name: 🇰🇷KR-220.120.172.116-153, server: 220.120.172.116, port: 33522, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 156 | - {name: 🇰🇷KR-125.133.178.233-154, server: 125.133.178.233, port: 10013, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 157 | - {name: 🏁RELAY-27.50.48.189-155, server: 27.50.48.189, port: 2083, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 158 | - {name: 🏁RELAY-104.129.166.131-156, server: 104.129.166.131, port: 8443, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 159 | - {name: 🏁RELAY-108.165.152.241-157, server: 108.165.152.241, port: 2053, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 160 | - {name: 🇰🇷KR-220.118.248.123-158, server: 220.118.248.123, port: 12302, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 161 | - {name: 🏁RELAY-27.50.48.154-159, server: 27.50.48.154, port: 8443, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 162 | - {name: 🇰🇷KR-14.42.89.42-160, server: 14.42.89.42, port: 50004, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 163 | - {name: 🏁RELAY-162.159.44.235-161, server: 162.159.44.235, port: 2053, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 164 | - {name: 🏁RELAY-45.67.214.41-162, server: 45.67.214.41, port: 2083, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 165 | - {name: 🏁RELAY-188.164.159.214-163, server: 188.164.159.214, port: 2083, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 166 | - {name: 🏁RELAY-172.64.33.144-164, server: theo.ns.cloudflare.com, port: 443, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 167 | - {name: 🇰🇷KR-121.145.126.10-165, server: 121.145.126.10, port: 12578, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 168 | - {name: 🇰🇷KR-210.100.138.35-166, server: 210.100.138.35, port: 17779, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 169 | - {name: 🇰🇷KR-121.133.117.221-167, server: 121.133.117.221, port: 50000, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 170 | - {name: 🏁RELAY-167.68.4.131-168, server: 167.68.4.131, port: 8443, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 171 | - {name: 🇰🇷KR-220.120.172.116-169, server: 220.120.172.116, port: 33522, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 172 | - {name: 🏁RELAY-103.116.7.248-170, server: 103.116.7.248, port: 443, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 173 | - {name: 🏁RELAY-141.11.203.191-171, server: 141.11.203.191, port: 8443, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 174 | - {name: 🏁RELAY-27.50.49.41-172, server: 27.50.49.41, port: 2096, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 175 | - {name: 🏁RELAY-188.164.159.171-173, server: 188.164.159.171, port: 443, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 176 | - {name: 🇰🇷KR-211.195.83.140-174, server: 211.195.83.140, port: 50003, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 177 | - {name: 🏁RELAY-46.254.93.52-175, server: 46.254.93.52, port: 8443, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 178 | - {name: 🏁RELAY-45.194.53.81-176, server: 45.194.53.81, port: 2087, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 179 | - {name: 🇺🇸US-198.62.62.61-177, server: 198.62.62.61, port: 2083, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 180 | - {name: 🏁RELAY-154.197.64.252-178, server: 154.197.64.252, port: 443, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 181 | - {name: 🇰🇷KR-121.133.117.221-179, server: 121.133.117.221, port: 50000, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 182 | - {name: 🇨🇳CN-157.148.96.94-180, server: 5b224751-swzb40-t2c3sq-1spnr.cu.plebai.net, port: 15229, type: trojan, password: 127e3f92-f714-11ef-bbb0-f23c91cfbbc9, sni: 5b224751-swzb40-t2c3sq-1spnr.cu.plebai.net, skip-cert-verify: true} 183 | - {name: 🇨🇳CN-120.233.44.201-181, server: 120.233.44.201, port: 21102, type: trojan, password: 2b1ed981-6547-4094-998b-06a3323d6f6c, sni: 120.233.44.201, skip-cert-verify: true} 184 | - {name: 🇨🇳CN-120.233.44.201-182, server: 120.233.44.201, port: 21102, type: trojan, password: 2b1ed981-6547-4094-998b-06a3323d6f6c, sni: 120.233.44.201, skip-cert-verify: true} 185 | - {name: 🇺🇸US-94.131.20.3-183, server: guy-trace-lyric.stark-industries.solutions, port: 443, type: trojan, password: 3482c71a-d01c-4ae5-b454-fa8cb3785f66, skip-cert-verify: true} 186 | - {name: 🇨🇳CN-36.151.251.62-184, server: 36.151.251.62, port: 13542, type: trojan, password: RlzoEILU, sni: cdn.egvra.cn, skip-cert-verify: true} 187 | - {name: 🇺🇸US-94.131.20.3-185, server: chop-wrist-bud.stark-industries.solutions, port: 443, type: trojan, password: 3482c71a-d01c-4ae5-b454-fa8cb3785f66, sni: chop-wrist-bud.stark-industries.solutions, skip-cert-verify: true} 188 | - {name: 🇫🇷FR-15.188.131.37-186, server: 15.188.131.37, port: 22222, type: trojan, password: telegram-id-privatevpns, sni: trojan.burgerip.co.uk, skip-cert-verify: true} 189 | - {name: 🇨🇳CN-36.151.251.62-187, server: 36.151.251.62, port: 13542, type: trojan, password: RlzoEILU, sni: cdn.egvra.cn, skip-cert-verify: true} 190 | - {name: 🇨🇳CN-36.151.251.61-188, server: 36.151.251.61, port: 33097, type: trojan, password: RlzoEILU, sni: 36.151.251.61, skip-cert-verify: true} 191 | - {name: 🇰🇷KR-3.35.54.68-189, server: 3.35.54.68, port: 443, type: ss, cipher: aes-256-cfb, password: yijian0503} 192 | - {name: 🇨🇳CN-183.2.157.135-190, server: 8tv68qhq.slashdevslashnetslashtun.net, port: 15010, type: ss, cipher: aes-256-gcm, password: ENYGONDU94UW1G6X} 193 | - {name: 🇭🇰HK-1.65.250.168-191, server: hkkh11v1.xpmc.cc, port: "27693/?plugin=v2ray-plugin%3Bmode%3Dwebsocket%3Bmux%3D8%3Bpath%3D%2Futvbnrzejpmt%3Bhost%3Dhkkh11v1.xpmc.cc%3Btls", type: ss, cipher: chacha20-ietf-poly1305, password: 91a41f4e02dc} 194 | - {name: 🇨🇳CN-183.236.51.38-192, server: 183.236.51.38, port: 49302, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 195 | - {name: 🇯🇵JP-48.218.11.10-193, server: usla.mjt000.com, port: 443, type: trojan, password: e4af2638-bb12-4e4a-84f1-a032e23ca63f, sni: usla.mjt000.com, skip-cert-verify: true} 196 | - {name: 🇨🇳CN-120.232.153.40-194, server: 120.232.153.40, port: 52182, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 197 | - {name: 🇨🇳CN-111.26.109.79-195, server: v9.heduian.link, port: 30809, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: baidu.com}} 198 | - {name: 🇨🇳CN-111.26.109.79-196, server: v9.heduian.link, port: 30809, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: baidu.com}} 199 | - {name: 🇨🇳CN-111.26.109.79-197, server: v9.heduian.link, port: 30809, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: baidu.com}} 200 | - {name: 🇨🇳CN-120.232.153.40-198, server: 120.232.153.40, port: 31209, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 201 | - {name: 🇨🇳CN-120.233.147.160-199, server: jg647hf446ghvw.gym0boy.com, port: 16100, type: ss, cipher: chacha20-ietf-poly1305, password: a9d1c7f7-a1bc-47d8-b320-9b79cdf8cd00} 202 | - {name: 🇨🇳CN-163.177.45.154-200, server: cn01.efan8867801.xyz, port: "8766/?plugin=obfs-local%3Bobfs%3Dhttp%3Bobfs-host%3D202505282364048-MMi78MWpgU.download.microsoft.com", type: ss, cipher: rc4-md5, password: efanccyun} 203 | - {name: 🇭🇰HK-43.226.17.17-201, server: 43.226.17.17, port: "25356/?plugin=v2ray-plugin%3Bmode%3Dwebsocket%3Bpath%3D%2Flornlqecrjwe%3Bhost%3Dkr7v1.pmxiaonan.xyz%3Btls", type: ss, cipher: chacha20-ietf-poly1305, password: 2e96aa2f3054} 204 | - {name: 🇨🇳CN-183.2.157.134-202, server: ti3hyra4.slashdevslashnetslashtun.net, port: 18008, type: ss, cipher: aes-256-gcm, password: 6EZ5QKFX60AVSUYT} 205 | - {name: 🇨🇳CN-120.233.147.160-203, server: jg647hf446ghvw.gym0boy.com, port: 32875, type: ss, cipher: chacha20-ietf-poly1305, password: a9d1c7f7-a1bc-47d8-b320-9b79cdf8cd00} 206 | - {name: 🇯🇵JP-8.211.154.107-204, server: 8.211.154.107, port: 50951, type: vmess, uuid: a3d04548-625c-4658-9ff0-f9a7835d1f6d, alterId: 0, cipher: auto, skip-cert-verify: true, network: kcp, ws-path: /, tls: false, ws-headers: {Host: 8.211.154.107}} 207 | - {name: 🇨🇳CN-36.150.94.35-205, server: v12.heduian.link, port: 30812, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: ocbc.com}} 208 | - {name: 🇨🇳CN-183.236.51.38-206, server: 183.236.51.38, port: 49302, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 209 | - {name: 🇨🇳CN-120.233.147.160-207, server: jg647hf446ghvw.gym0boy.com, port: 44054, type: ss, cipher: chacha20-ietf-poly1305, password: a9d1c7f7-a1bc-47d8-b320-9b79cdf8cd00} 210 | - {name: 🇨🇳CN-183.240.227.29-208, server: sg1.qqingca.cc, port: 20347, type: ss, cipher: chacha20-ietf-poly1305, password: 5a0b2638-8416-42c1-b87e-99864b3d3ef2} 211 | - {name: 🇰🇷KR-125.141.26.12-209, server: 125.141.26.12, port: 4857, type: ss, cipher: aes-256-cfb, password: "qwerREWQ@@"} 212 | - {name: 🇰🇷KR-27.255.82.135-210, server: p080.panda001.net, port: 36379, type: ss, cipher: aes-256-cfb, password: "qwerREWQ@@"} 213 | - {name: 🇨🇳CN-163.177.45.154-211, server: cn01.efan8867801.xyz, port: "8774/?plugin=obfs-local%3Bobfs%3Dhttp%3Bobfs-host%3D202505160159024-hAiTvMCGlv.download.microsoft.com", type: ss, cipher: rc4-md5, password: efanccyun} 214 | - {name: 🇨🇳CN-111.26.109.79-212, server: v32.heduian.link, port: 30832, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: baidu.com}} 215 | - {name: 🇨🇳CN-111.26.109.79-213, server: 111.26.109.79, port: 30828, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: ocbc.com}} 216 | - {name: 🇨🇳CN-183.2.157.134-214, server: ti3hyra4.slashdevslashnetslashtun.net, port: 17005, type: ss, cipher: aes-256-gcm, password: 2Z11BX63H64YSEDM} 217 | - {name: 🇨🇳CN-111.26.109.79-215, server: 111.26.109.79, port: 30828, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: ocbc.com}} 218 | - {name: 🇨🇳CN-58.246.138.244-216, server: sslvpn.51job.com, port: 1443, type: vmess, uuid: a6a0d901-67e9-460a-90b5-634c5c4f9782, alterId: 64, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /634c5c4f9782, tls: true, ws-headers: {Host: centos7}} 219 | - {name: 🇸🇰SK-156.146.40.194-217, server: 156.146.40.194, port: 989, type: ss, cipher: aes-256-cfb, password: f8f7aCzcPKbsF8p3} 220 | - {name: 🇨🇳CN-183.236.51.38-218, server: 183.236.51.38, port: 49291, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 221 | - {name: 🇨🇳CN-157.148.96.94-219, server: 391907cc-swgsg0-t1bnjq-1krtb.cu.plebai.net, port: 15229, type: trojan, password: 60f6b4c4-9d70-11ed-a4d2-f23c9164ca5d, skip-cert-verify: true} 222 | - {name: 🇯🇵JP-38.47.96.30-220, server: 38.47.96.30, port: 443, type: vmess, uuid: 164a6ad0-476a-4bae-b78f-a3d37cf0f414, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /lzjjj, tls: true, ws-headers: {Host: th.lzj520hxw.dpdns.org}} 223 | - {name: 🇰🇷KR-125.141.31.72-221, server: 125.141.31.72, port: 15098, type: ss, cipher: aes-256-cfb, password: "qwerREWQ@@"} 224 | - {name: 🇨🇳CN-111.26.109.79-222, server: v29.heduian.link, port: 30829, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: ocbc.com}} 225 | - {name: 🇩🇪DE-5.39.249.119-223, server: de.vmess.comnpmjs.com, port: 443, type: vmess, uuid: ceaaf653-9874-58c6-b100-092c01a1f73d, alterId: 0, cipher: auto, skip-cert-verify: true, network: grpc, ws-path: vmess-grpc, tls: true, ws-headers: {Host: de.vmess.comnpmjs.com}} 226 | - {name: 🇭🇰HK-1.65.209.65-224, server: bc842b49-swexs0-t1rt5e-1s09x.hgc1.tcpbbr.net, port: 8080, type: vmess, uuid: 62b7824e-47dc-11ef-9f2d-f23c9164ca5d, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: false, ws-headers: {Host: broadcastlv.chat.bilibili.com}} 227 | - {name: 🇨🇳CN-157.148.96.89-225, server: 13c2c931-swin40-swy6li-tni2.cu.plebai.net, port: 15229, type: trojan, password: 5e2f888c-68ef-11ef-96ca-f23c9164ca5d, sni: 13c2c931-swin40-swy6li-tni2.cu.plebai.net, skip-cert-verify: true} 228 | - {name: 🇨🇳CN-157.148.96.89-226, server: 4560c642-swin40-tjuq6l-wf62.cu.plebai.net, port: 15229, type: trojan, password: def14a51-e0d9-11ec-8429-f23c91cfbbc9, sni: 4560c642-swin40-tjuq6l-wf62.cu.plebai.net, skip-cert-verify: true} 229 | - {name: 🇰🇷KR-3.35.54.68-227, server: 3.35.54.68, port: 443, type: ss, cipher: aes-256-cfb, password: yijian0503} 230 | - {name: 🇨🇳CN-183.2.157.135-228, server: 8tv68qhq.slashdevslashnetslashtun.net, port: 15010, type: ss, cipher: aes-256-gcm, password: ENYGONDU94UW1G6X} 231 | - {name: 🇭🇰HK-1.65.250.168-229, server: hkkh11v1.xpmc.cc, port: 27693, type: ss, cipher: chacha20-ietf-poly1305, password: 91a41f4e02dc} 232 | - {name: 🇨🇳CN-183.236.51.38-230, server: 183.236.51.38, port: 49302, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 233 | - {name: 🇯🇵JP-48.218.11.10-231, server: usla.mjt000.com, port: 443, type: trojan, password: e4af2638-bb12-4e4a-84f1-a032e23ca63f, sni: usla.mjt000.com, skip-cert-verify: true} 234 | - {name: 🇨🇳CN-120.232.153.40-232, server: 120.232.153.40, port: 52182, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 235 | - {name: 🇨🇳CN-111.26.109.79-233, server: v9.heduian.link, port: 30809, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: baidu.com}} 236 | - {name: 🇨🇳CN-120.232.153.40-234, server: 120.232.153.40, port: 31209, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 237 | - {name: 🇨🇳CN-120.233.147.160-235, server: jg647hf446ghvw.gym0boy.com, port: 16100, type: ss, cipher: chacha20-ietf-poly1305, password: a9d1c7f7-a1bc-47d8-b320-9b79cdf8cd00} 238 | - {name: 🇨🇳CN-163.177.45.154-236, server: cn01.efan8867801.xyz, port: 8766, type: ss, cipher: rc4-md5, password: efanccyun} 239 | - {name: 🇭🇰HK-43.226.17.17-237, server: 43.226.17.17, port: 25356, type: ss, cipher: chacha20-ietf-poly1305, password: 2e96aa2f3054} 240 | - {name: 🇨🇳CN-183.2.157.134-238, server: ti3hyra4.slashdevslashnetslashtun.net, port: 18008, type: ss, cipher: aes-256-gcm, password: 6EZ5QKFX60AVSUYT} 241 | - {name: 🇨🇳CN-120.233.147.160-239, server: jg647hf446ghvw.gym0boy.com, port: 32875, type: ss, cipher: chacha20-ietf-poly1305, password: a9d1c7f7-a1bc-47d8-b320-9b79cdf8cd00} 242 | - {name: 🇨🇳CN-36.150.94.35-240, server: v12.heduian.link, port: 30812, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: ocbc.com}} 243 | - {name: 🇨🇳CN-120.233.147.160-241, server: jg647hf446ghvw.gym0boy.com, port: 44054, type: ss, cipher: chacha20-ietf-poly1305, password: a9d1c7f7-a1bc-47d8-b320-9b79cdf8cd00} 244 | - {name: 🇨🇳CN-183.240.227.29-242, server: sg1.qqingca.cc, port: 20347, type: ss, cipher: chacha20-ietf-poly1305, password: 5a0b2638-8416-42c1-b87e-99864b3d3ef2} 245 | - {name: 🇰🇷KR-125.141.26.12-243, server: 125.141.26.12, port: 4857, type: ss, cipher: aes-256-cfb, password: "qwerREWQ@@"} 246 | - {name: 🇰🇷KR-27.255.82.135-244, server: p080.panda001.net, port: 36379, type: ss, cipher: aes-256-cfb, password: "qwerREWQ@@"} 247 | - {name: 🇨🇳CN-163.177.45.154-245, server: cn01.efan8867801.xyz, port: 8774, type: ss, cipher: rc4-md5, password: efanccyun} 248 | - {name: 🇨🇳CN-111.26.109.79-246, server: v32.heduian.link, port: 30832, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: baidu.com}} 249 | - {name: 🇨🇳CN-111.26.109.79-247, server: 111.26.109.79, port: 30828, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: ocbc.com}} 250 | - {name: 🇨🇳CN-183.2.157.134-248, server: ti3hyra4.slashdevslashnetslashtun.net, port: 17005, type: ss, cipher: aes-256-gcm, password: 2Z11BX63H64YSEDM} 251 | - {name: 🇰🇷KR-3.35.54.68-249, server: 3.35.54.68, port: 443, type: ss, cipher: ss, password: //YWVzLTI1Ni1jZmI6eWlqaWFuMDUwMw} 252 | - {name: 🇨🇳CN-183.2.157.135-250, server: 8tv68qhq.slashdevslashnetslashtun.net, port: 15010, type: ss, cipher: ss, password: //YWVzLTI1Ni1nY206RU5ZR09ORFU5NFVXMUc2WA} 253 | - {name: 🇨🇳CN-183.236.51.38-251, server: 183.236.51.38, port: 49302, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 254 | - {name: 🇨🇳CN-120.232.153.40-252, server: 120.232.153.40, port: 52182, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 255 | - {name: 🇨🇳CN-120.232.153.40-253, server: 120.232.153.40, port: 31209, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 256 | - {name: 🇨🇳CN-120.233.147.160-254, server: jg647hf446ghvw.gym0boy.com, port: 16100, type: ss, cipher: ss, password: //Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTphOWQxYzdmNy1hMWJjLTQ3ZDgtYjMyMC05Yjc5Y2RmOGNkMDA} 257 | - {name: 🇨🇳CN-183.2.157.134-255, server: ti3hyra4.slashdevslashnetslashtun.net, port: 18008, type: ss, cipher: ss, password: //YWVzLTI1Ni1nY206NkVaNVFLRlg2MEFWU1VZVA} 258 | - {name: 🇨🇳CN-120.233.147.160-256, server: jg647hf446ghvw.gym0boy.com, port: 32875, type: ss, cipher: ss, password: //Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTphOWQxYzdmNy1hMWJjLTQ3ZDgtYjMyMC05Yjc5Y2RmOGNkMDA} 259 | - {name: 🇯🇵JP-8.211.154.107-257, server: 8.211.154.107, port: 50951, type: vmess, uuid: a3d04548-625c-4658-9ff0-f9a7835d1f6d, alterId: 0, cipher: auto, skip-cert-verify: true, network: kcp, ws-path: /, tls: false, ws-headers: {Host: 8.211.154.107}} 260 | - {name: 🇨🇳CN-120.233.147.160-258, server: jg647hf446ghvw.gym0boy.com, port: 44054, type: ss, cipher: ss, password: //Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTphOWQxYzdmNy1hMWJjLTQ3ZDgtYjMyMC05Yjc5Y2RmOGNkMDA} 261 | - {name: 🇨🇳CN-183.240.227.29-259, server: sg1.qqingca.cc, port: 20347, type: ss, cipher: ss, password: //Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTo1YTBiMjYzOC04NDE2LTQyYzEtYjg3ZS05OTg2NGIzZDNlZjI} 262 | - {name: 🇰🇷KR-125.141.26.12-260, server: 125.141.26.12, port: 4857, type: ss, cipher: ss, password: //YWVzLTI1Ni1jZmI6cXdlclJFV1FAQA} 263 | - {name: 🇰🇷KR-27.255.82.135-261, server: p080.panda001.net, port: 36379, type: ss, cipher: ss, password: //YWVzLTI1Ni1jZmI6cXdlclJFV1FAQA} 264 | - {name: 🇨🇳CN-183.2.157.134-262, server: ti3hyra4.slashdevslashnetslashtun.net, port: 17005, type: ss, cipher: ss, password: //YWVzLTI1Ni1nY206MloxMUJYNjNINjRZU0VETQ} 265 | - {name: 🏁RELAY-188.164.159.241-263, server: 188.164.159.241, port: 2096, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, ws-path: "h=%2F%3Fed%3D2560", skip-cert-verify: true} 266 | - {name: 🇨🇳CN-157.148.96.92-264, server: f1e4e0ee-swin40-t12cnj-1ol97.cu.plebai.net, port: 15229, type: trojan, password: 93fb69fc-77cf-11ee-85ee-f23c91369f2d, sni: f1e4e0ee-swin40-t12cnj-1ol97.cu.plebai.net, skip-cert-verify: true} 267 | - {name: 🇨🇳CN-157.148.96.89-265, server: 6f772034-sx6ps0-taklwz-12bd.cu.plebai.net, port: 15229, type: trojan, password: ea76ae7e-ea95-11ef-8b73-f23c91cfbbc9, sni: 6f772034-sx6ps0-taklwz-12bd.cu.plebai.net, skip-cert-verify: true} 268 | - {name: 🇨🇳CN-157.148.96.92-266, server: 8e9c3ff5-sx4v40-t6oecc-1slpn.cu.plebai.net, port: 15229, type: trojan, password: 659b0268-92ca-11ef-b3af-f23c913c8d2b, sni: 8e9c3ff5-sx4v40-t6oecc-1slpn.cu.plebai.net, skip-cert-verify: true} 269 | - {name: 🇨🇳CN-157.148.96.92-267, server: 415a547f-sx8kg0-t1msbw-1nn0k.cu.plebai.net, port: 15229, type: trojan, password: f9c35596-f323-11ed-8ccd-f23c91cfbbc9, sni: 415a547f-sx8kg0-t1msbw-1nn0k.cu.plebai.net, skip-cert-verify: true} 270 | - {name: 🇨🇳CN-157.148.96.94-268, server: 2252b964-sx4v40-tee612-2r82.cu.plebai.net, port: 15229, type: trojan, password: 03573f46-e944-11eb-a8bf-f23c91cfbbc9, sni: 2252b964-sx4v40-tee612-2r82.cu.plebai.net, skip-cert-verify: true} 271 | - {name: 🇨🇳CN-157.148.96.94-269, server: 67636d50-sx6ps0-sxpbuh-1ndin.cu.plebai.net, port: 15229, type: trojan, password: 1a7f2766-e24d-11ed-98a7-f23c913c8d2b, sni: 67636d50-sx6ps0-sxpbuh-1ndin.cu.plebai.net, skip-cert-verify: true} 272 | - {name: 🇨🇳CN-157.148.96.92-270, server: a4b963da-sx6ps0-t0j7ql-1t7gn.cu.plebai.net, port: 15229, type: trojan, password: 4d78032e-d27c-11ef-bd97-f23c9164ca5d, sni: a4b963da-sx6ps0-t0j7ql-1t7gn.cu.plebai.net, skip-cert-verify: true} 273 | - {name: 🇨🇳CN-157.148.96.89-271, server: 3c80a135-swb8g0-t6ouc9-13xtu.cu.plebai.net, port: 15229, type: trojan, password: 4a7f880c-72f4-11ed-b0b5-f23c9164ca5d, sni: 3c80a135-swb8g0-t6ouc9-13xtu.cu.plebai.net, skip-cert-verify: true} 274 | - {name: 🇨🇳CN-157.148.96.92-272, server: 2e051986-sx4v40-t2ghw9-1pf7n.cu.plebai.net, port: 15229, type: trojan, password: e542ec26-b786-11ee-9a75-f23c91cfbbc9, sni: 2e051986-sx4v40-t2ghw9-1pf7n.cu.plebai.net, skip-cert-verify: true} 275 | - {name: 🇨🇳CN-157.148.96.92-273, server: c5d812aa-sx4v40-sx7hbg-1mmbp.cu.plebai.net, port: 15229, type: trojan, password: 607d365e-7ea1-11ee-95e9-f23c913c8d2b, sni: c5d812aa-sx4v40-sx7hbg-1mmbp.cu.plebai.net, skip-cert-verify: true} 276 | - {name: 🇨🇳CN-157.148.96.94-274, server: f8263ad9-sx8kg0-t7qex7-1supq.cu.plebai.net, port: 15229, type: trojan, password: 7af3db60-b2d9-11ef-88ab-f23c913c8d2b, sni: f8263ad9-sx8kg0-t7qex7-1supq.cu.plebai.net, skip-cert-verify: true} 277 | - {name: 🇨🇳CN-157.148.96.94-275, server: 493d7185-sx4v40-t30eih-jm0w.cu.plebai.net, port: 15229, type: trojan, password: e3004917-ad9d-b8a2-a2ee-65a54830e020, sni: 493d7185-sx4v40-t30eih-jm0w.cu.plebai.net, skip-cert-verify: true} 278 | - {name: 🇨🇳CN-157.148.96.92-276, server: eb4fe914-sx6ps0-t234dm-eso8.cu.plebai.net, port: 15229, type: trojan, password: 3c461e2c-9d13-11ef-8563-f23c913c8d2b, sni: eb4fe914-sx6ps0-t234dm-eso8.cu.plebai.net, skip-cert-verify: true} 279 | - {name: 🇨🇳CN-157.148.96.92-277, server: e3ca594f-sx8kg0-t9azkv-17xn0.cu.plebai.net, port: 15229, type: trojan, password: 4faf123a-572a-11eb-8684-f23c913c8d2b, sni: e3ca594f-sx8kg0-t9azkv-17xn0.cu.plebai.net, skip-cert-verify: true} 280 | - {name: 🇨🇳CN-157.148.96.94-278, server: 0a107103-sx8kg0-syxs94-1jbj0.cu.plebai.net, port: 15229, type: trojan, password: b2c6384c-f63d-11ec-b1b3-f23c91cfbbc9, sni: 0a107103-sx8kg0-syxs94-1jbj0.cu.plebai.net, skip-cert-verify: true} 281 | - {name: 🇨🇳CN-157.148.96.92-279, server: d6cafd53-sx4v40-tbcla6-194tt.cu.plebai.net, port: 15229, type: trojan, password: 602e99aa-718d-11eb-b77b-f23c913c8d2b, sni: d6cafd53-sx4v40-tbcla6-194tt.cu.plebai.net, skip-cert-verify: true} 282 | - {name: 🏁RELAY-103.116.7.103-280, server: 103.116.7.103, port: 2083, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, ws-path: "h=%2F%3Fed%3D2560", skip-cert-verify: true} 283 | - {name: 🇰🇷KR-112.184.209.63-281, server: 112.184.209.63, port: 12088, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, ws-path: "h=%2F%3Fed%3D2560", skip-cert-verify: true} 284 | - {name: 🇳🇴NO-95.164.38.151-282, server: 95.164.38.151, port: 443, type: trojan, password: 0fc9c5ff-9531-4178-966f-7d958e1df64b, sni: copy-wifi-twins.stark-industries.solutions, skip-cert-verify: true} 285 | - {name: 🏁RELAY-5.182.84.244-283, server: 5.182.84.244, port: 443, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, ws-path: "h=%2F%3Fed%3D2560", skip-cert-verify: true} 286 | - {name: 🏁RELAY-92.53.190.161-284, server: 92.53.190.161, port: 2087, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, ws-path: "h=%2F%3Fed%3D2560", skip-cert-verify: true} 287 | - {name: 🇨🇳CN-163.177.45.154-285, server: cn01.efan8867801.xyz, port: "8766/?plugin=obfs-local%3Bobfs%3Dhttp%3Bobfs-host%3D202505282364048-MMi78MWpgU.download.microsoft.com", type: ss, cipher: rc4-md5, password: efanccyun} 288 | - {name: 🇭🇰HK-43.226.17.17-286, server: 43.226.17.17, port: "25356/?plugin=v2ray-plugin%3Bmode%3Dwebsocket%3Bpath%3D%2Flornlqecrjwe%3Bhost%3Dkr7v1.pmxiaonan.xyz%3Btls", type: ss, cipher: chacha20-ietf-poly1305, password: 2e96aa2f3054} 289 | - {name: 🇭🇰HK-1.65.250.168-287, server: hkkh11v1.xpmc.cc, port: "27693/?plugin=v2ray-plugin%3Bmode%3Dwebsocket%3Bmux%3D8%3Bpath%3D%2Futvbnrzejpmt%3Bhost%3Dhkkh11v1.xpmc.cc%3Btls", type: ss, cipher: chacha20-ietf-poly1305, password: 91a41f4e02dc} 290 | - {name: 🇨🇳CN-163.177.45.154-288, server: cn01.efan8867801.xyz, port: "8774/?plugin=obfs-local%3Bobfs%3Dhttp%3Bobfs-host%3D202505160159024-hAiTvMCGlv.download.microsoft.com", type: ss, cipher: rc4-md5, password: efanccyun} -------------------------------------------------------------------------------- /list.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "id": 0, 4 | "remark": "nodefree.org", 5 | "site": "https://github.com/Fukki-Z/nodefree", 6 | "url": "https://nodefree.org/dy/2025/05/20250530.txt", 7 | "update": "Y/m/Y-m-d", 8 | "enabled": false 9 | }, 10 | { 11 | "id": 1, 12 | "remark": "pojiezhiyuanjun/freev2", 13 | "site": "https://github.com/pojiezhiyuanjun/freev2", 14 | "url": "https://raw.githubusercontent.com/pojiezhiyuanjun/freev2/master/0602.txt", 15 | "update": "m-d", 16 | "enabled": false 17 | }, 18 | { 19 | "id": 2, 20 | "remark": "freefq/free", 21 | "site": "https://github.com/freefq/free", 22 | "url": "https://raw.githubusercontent.com/freefq/free/master/v2", 23 | "enabled": false 24 | }, 25 | { 26 | "id": 3, 27 | "remark": "colatiger/v2ray-nodes", 28 | "site": "https://github.com/colatiger/v2ray-nodes", 29 | "url": "https://proxy.huwo.club/v2ray.txt", 30 | "enabled": false 31 | }, 32 | { 33 | "id": 4, 34 | "remark": "vxiaov/free_proxies", 35 | "site": "https://github.com/vxiaov/free_proxies", 36 | "url": "https://raw.githubusercontent.com/vxiaov/free_proxies/main/links.txt", 37 | "enabled": true 38 | }, 39 | { 40 | "id": 5, 41 | "remark": "kxswa/k", 42 | "site": "https://github.com/kxswa/k", 43 | "url": "https://raw.githubusercontent.com/kxswa/k/k/base64", 44 | "enabled": false 45 | }, 46 | { 47 | "id": 6, 48 | "remark": "Pawdroid/Free-servers", 49 | "site": "https://github.com/Pawdroid/Free-servers", 50 | "url": "https://raw.githubusercontent.com/Pawdroid/Free-servers/main/sub", 51 | "enabled": true 52 | }, 53 | { 54 | "id": 7, 55 | "remark": "anaer/Sub", 56 | "site": "https://github.com/anaer/Sub", 57 | "url": "https://raw.githubusercontent.com/anaer/Sub/main/clash.yaml", 58 | "enabled": false 59 | }, 60 | { 61 | "id": 8, 62 | "remark": "alanbobs999/TopFreeProxies", 63 | "site": "https://github.com/alanbobs999/TopFreeProxies", 64 | "url": "https://raw.githubusercontent.com/alanbobs999/TopFreeProxies/master/Eternity", 65 | "enabled": false 66 | }, 67 | { 68 | "id": 9, 69 | "remark": "Jsnzkpg/Jsnzkpg", 70 | "site": "https://github.com/Jsnzkpg/Jsnzkpg", 71 | "url": "https://raw.githubusercontent.com/Jsnzkpg/Jsnzkpg/Jsnzkpg/Jsnzkpg", 72 | "enabled": true 73 | }, 74 | { 75 | "id": 10, 76 | "remark": "wrfree/free", 77 | "site": "https://github.com/wrfree/free", 78 | "url": "https://raw.githubusercontent.com/wrfree/free/main/v2", 79 | "enabled": false 80 | }, 81 | { 82 | "id": 11, 83 | "remark": "aiboboxx/v2rayfree", 84 | "site": "https://github.com/aiboboxx/v2rayfree", 85 | "url": "https://raw.githubusercontent.com/aiboboxx/v2rayfree/main/v2", 86 | "enabled": true 87 | }, 88 | { 89 | "id": 12, 90 | "remark": "barry-far/V2ray-Configs", 91 | "site": "https://github.com/barry-far/V2ray-Configs", 92 | "url": "https://raw.githubusercontent.com/barry-far/V2ray-Configs/refs/heads/main/All_Configs_Sub.txt", 93 | "enabled": false 94 | }, 95 | { 96 | "id": 13, 97 | "remark": "free18/v2ray", 98 | "site": "https://github.com/free18/v2ray", 99 | "url": "https://raw.githubusercontent.com/free18/v2ray/refs/heads/main/v.txt", 100 | "enabled": true 101 | }, 102 | { 103 | "id": 14, 104 | "remark": "mahdibland/V2RayAggregator", 105 | "site": "https://github.com/mahdibland/V2RayAggregator", 106 | "url": "https://raw.githubusercontent.com/mahdibland/SSAggregator/master/sub/sub_merge_base64.txt", 107 | "enabled": false 108 | }, 109 | { 110 | "id": 15, 111 | "remark": "pmsub", 112 | "site": "https://sub.pmsub.me/base64", 113 | "url": "https://sub.pmsub.me/base64", 114 | "enabled": false 115 | }, 116 | { 117 | "id": 16, 118 | "remark": "Misaka-blog/chromego_merge", 119 | "site": "https://github.com/Misaka-blog/chromego_merge", 120 | "url": "https://raw.githubusercontent.com/Misaka-blog/chromego_merge/refs/heads/main/sub/base64.txt", 121 | "enabled": true 122 | }, 123 | { 124 | "id": 17, 125 | "remark": "ripaojiedian/freenode", 126 | "site": "https://github.com/ripaojiedian/freenode", 127 | "url": "https://raw.githubusercontent.com/ripaojiedian/freenode/main/sub", 128 | "enabled": true 129 | }, 130 | { 131 | "id": 18, 132 | "remark": "peasoft/NoMoreWalls", 133 | "site": "https://github.com/peasoft/NoMoreWalls", 134 | "url": "https://github.com/peasoft/NoMoreWalls/raw/refs/heads/master/list.txt", 135 | "enabled": true 136 | } 137 | ] -------------------------------------------------------------------------------- /merge/merge_clash.yaml: -------------------------------------------------------------------------------- 1 | proxies: 2 | - {name: 🇨🇦CA-51.79.102.253-000, server: 51.79.102.253, port: 80, type: vmess, uuid: 58fe1542-5290-40ad-815a-77707a81afe5, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /IOebhLMhl1CTbFHbL95myfRX2, tls: false, ws-headers: {Host: 51.79.102.253}} 3 | - {name: 🏁RELAY-162.159.45.236-001, server: 162.159.45.236, port: 2086, type: vmess, uuid: 7d92ffc9-02e1-4087-8a46-cc4d76560917, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: github.com/Alvin9999, tls: false, ws-headers: {Host: m6919.164748.xyz}} 4 | - {name: 🇨🇭CH-204.136.10.115-002, server: 204.136.10.115, port: 1866, type: ss, cipher: chacha20-ietf-poly1305, password: oXGp1+ihlfKg826H} 5 | - {name: 🇨🇦CA-51.79.103.76-003, server: 51.79.103.76, port: 80, type: vmess, uuid: 58fe1542-5290-40ad-815a-77707a81afe5, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /IOebhLMhl1CTbFHbL95myfRX2, tls: false, ws-headers: {Host: wrmelmwxlf.gktevlrqznwqqozy.fabpfs66gizmnojhcvqxwl.kytrcfzqla87gvgvs6c7kjnrubuh.cc}} 6 | - {name: 🇫🇷FR-57.128.190.171-004, server: 57.128.190.171, port: 11259, type: ss, cipher: chacha20-ietf-poly1305, password: f9d73c84e32a10f3} 7 | - {name: 🇱🇹LT-45.87.175.28-005, server: 45.87.175.28, port: 8080, type: ss, cipher: chacha20-ietf-poly1305, password: oZIoA69Q8yhcQV8ka3Pa3A} 8 | - {name: 🇫🇷FR-57.128.190.110-006, server: 57.128.190.110, port: 11703, type: ss, cipher: chacha20-ietf-poly1305, password: d275849ebcfcec7e} 9 | - {name: 🏁RELAY-104.21.21.192-007, server: b62a948c-faa2-4e8a-bf8a-3ff3121c875a.asoul-ava.top, port: 443, type: vmess, uuid: 5f726fe3-d82e-4da5-a711-8af0cbb2b682, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /azumase.ren, tls: true, ws-headers: {Host: b62a948c-faa2-4e8a-bf8a-3ff3121c875a.asoul-ava.top}} 10 | - {name: 🇫🇷FR-107.191.63.241-008, server: 107.191.63.241, port: 30665, type: ss, cipher: chacha20-ietf-poly1305, password: 44fe4b7d-cd48-45fc-a036-60ea40e4a96c} 11 | - {name: 🇭🇰HK-1.65.209.65-009, server: e0b97381-swo740-sy0k9b-yjq0.hgc1.tcpbbr.net, port: 8080, type: vmess, uuid: 25b2699a-e18e-11ec-8e69-f23c91cfbbc9, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: false, ws-headers: {Host: e0b97381-swo740-sy0k9b-yjq0.hgc1.tcpbbr.net}} 12 | - {name: 🇨🇳CN-120.198.71.216-010, server: 120.198.71.216, port: 35921, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.198.71.216}} 13 | - {name: 🇨🇳CN-120.234.102.229-011, server: 120.234.102.229, port: 49174, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.234.102.229}} 14 | - {name: 🇫🇷FR-15.188.131.37-012, server: 15.188.131.37, port: 22222, type: trojan, password: telegram-id-privatevpns, sni: trojan.burgerip.co.uk, skip-cert-verify: true} 15 | - {name: 🇫🇷FR-15.237.11.137-013, server: 15.237.11.137, port: 22222, type: trojan, password: telegram-id-privatevpns, sni: trojan.burgerip.co.uk, skip-cert-verify: true} 16 | - {name: 🇹🇷TR-202.78.162.5-014, server: 202.78.162.5, port: 443, type: vmess, uuid: 716eded6-2201-4dbd-9d63-1638c9e8e677, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: true, ws-headers: {Host: pendar.onthewifi.com}} 17 | - {name: 🇹🇷TR-202.78.162.5-015, server: 202.78.162.5, port: 443, type: vmess, uuid: 2ff97c6d-8557-42a4-b43f-19c77c5959ea, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: true, ws-headers: {Host: irsoft.sytes.net}} 18 | - {name: 🏁RELAY-172.67.133.248-016, server: 172.67.133.248, port: 443, type: trojan, password: f0f6e76e-e5fe-4e2c-9faf-34832e021eae, sni: DDd.890604.FIlEGear-sG.Me, ws-path: "h=%2FmZr1mA5hub7QHHkQBzYO", skip-cert-verify: true} 19 | - {name: 🇨🇳CN-111.26.109.79-017, server: v32.heduian.link, port: 30832, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: baidu.com}} 20 | - {name: 🇭🇰HK-1.65.209.65-018, server: 507dabb3-swtr40-sxzp1j-1irfn.hgc1.tcpbbr.net, port: 8080, type: vmess, uuid: a33115b6-75fa-11ed-8826-f23c9164ca5d, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: false, ws-headers: {Host: 507dabb3-swtr40-sxzp1j-1irfn.hgc1.tcpbbr.net}} 21 | - {name: 🏁RELAY-104.21.32.1-019, server: 5tghyu8.999820.xyz, port: 80, type: vmess, uuid: 90f357dd-79ac-47c6-b0b8-958e2d19de07, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /10W6SJaK0F0oVXeNU6S2RVRP, tls: false, ws-headers: {Host: 5tghyu8.999820.xyz}} 22 | - {name: 🇨🇳CN-183.238.90.8-020, server: 183.238.90.8, port: 41766, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.238.90.8}} 23 | - {name: 🇩🇪DE-3.77.75.190-021, server: 3.77.75.190, port: 22222, type: trojan, password: telegram-id-privatevpns, sni: trojan.burgerip.co.uk, skip-cert-verify: true} 24 | - {name: 🇨🇳CN-36.151.251.62-022, server: 36.151.251.62, port: 3330, type: trojan, password: RlzoEILU, sni: cdn.egvra.cn, skip-cert-verify: true} 25 | - {name: 🇨🇳CN-120.232.153.63-023, server: 120.232.153.63, port: 37805, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.63}} 26 | - {name: 🏁RELAY-104.21.64.1-024, server: 104.21.64.1, port: 2096, type: vmess, uuid: 8f78e709-2c5f-4c19-9f44-b5b5f80ab74c, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: true, ws-headers: {Host: cc2d1.988988.shop}} 27 | - {name: 🏁RELAY-172.67.214.33-025, server: 172.67.214.33, port: 2082, type: vmess, uuid: 2f821152-c3e9-4074-9185-2790e7425f42, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: false, ws-headers: {Host: cs.flha.ru}} 28 | - {name: 🇭🇰HK-1.65.209.65-026, server: d98cad7b-swkhs0-swwn15-1phla.hgc1.tcpbbr.net, port: 8080, type: vmess, uuid: 467f2940-77cd-11ee-b5ed-f23c9164ca5d, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: false, ws-headers: {Host: d98cad7b-swkhs0-swwn15-1phla.hgc1.tcpbbr.net}} 29 | - {name: 🇭🇰HK-1.65.209.65-027, server: 2abb3c67-swkhs0-t1457r-g53t.hgc1.tcpbbr.net, port: 8080, type: vmess, uuid: b778e4ae-1458-11ec-a8bf-f23c91cfbbc9, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: false, ws-headers: {Host: 2abb3c67-swkhs0-t1457r-g53t.hgc1.tcpbbr.net}} 30 | - {name: 🏁RELAY-104.21.16.1-028, server: de01.sh-cloudflare.sbs, port: 2096, type: vmess, uuid: b3928f8d-ea81-4d75-bcec-4016a072adff, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: true, ws-headers: {Host: de01.sh-cloudflare.sbs}} 31 | - {name: 🇭🇰HK-1.65.209.65-029, server: 0e1121ca-swd340-teqqcv-1rc6n.hgc1.tcpbbr.net, port: 8080, type: vmess, uuid: 32bd96d6-186b-11f0-9a65-f23c9164ca5d, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: false, ws-headers: {Host: 0e1121ca-swd340-teqqcv-1rc6n.hgc1.tcpbbr.net}} 32 | - {name: 🇫🇷FR-193.243.147.128-030, server: 193.243.147.128, port: 40368, type: ss, cipher: aes-256-gcm, password: 7BcLdsO1WweoGD0X} 33 | - {name: 🇨🇳CN-120.198.71.219-031, server: 120.198.71.219, port: 49355, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.198.71.219}} 34 | - {name: 🇨🇳CN-58.246.138.244-032, server: sslvpn.51job.com, port: 1443, type: vmess, uuid: a6a0d901-67e9-460a-90b5-634c5c4f9782, alterId: 64, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /634c5c4f9782, tls: true, ws-headers: {Host: centos7}} 35 | - {name: 🇸🇰SK-156.146.40.194-033, server: 156.146.40.194, port: 989, type: ss, cipher: aes-256-cfb, password: f8f7aCzcPKbsF8p3} 36 | - {name: 🇨🇳CN-183.236.51.38-034, server: 183.236.51.38, port: 49291, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 37 | - {name: 🇨🇳CN-157.148.96.92-035, server: 391907cc-swgsg0-t1bnjq-1krtb.cu.plebai.net, port: 15229, type: trojan, password: 60f6b4c4-9d70-11ed-a4d2-f23c9164ca5d, skip-cert-verify: true} 38 | - {name: 🇯🇵JP-38.47.96.30-036, server: 38.47.96.30, port: 443, type: vmess, uuid: 164a6ad0-476a-4bae-b78f-a3d37cf0f414, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /lzjjj, tls: true, ws-headers: {Host: th.lzj520hxw.dpdns.org}} 39 | - {name: 🇰🇷KR-125.141.31.72-037, server: 125.141.31.72, port: 15098, type: ss, cipher: aes-256-cfb, password: "qwerREWQ@@"} 40 | - {name: 🇨🇳CN-111.26.109.79-038, server: v29.heduian.link, port: 30829, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: ocbc.com}} 41 | - {name: 🇩🇪DE-5.39.249.119-039, server: de.vmess.comnpmjs.com, port: 443, type: vmess, uuid: ceaaf653-9874-58c6-b100-092c01a1f73d, alterId: 0, cipher: auto, skip-cert-verify: true, network: grpc, ws-path: vmess-grpc, tls: true, ws-headers: {Host: de.vmess.comnpmjs.com}} 42 | - {name: 🇭🇰HK-1.65.209.65-040, server: bc842b49-swexs0-t1rt5e-1s09x.hgc1.tcpbbr.net, port: 8080, type: vmess, uuid: 62b7824e-47dc-11ef-9f2d-f23c9164ca5d, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: false, ws-headers: {Host: broadcastlv.chat.bilibili.com}} 43 | - {name: 🇨🇳CN-157.148.96.92-041, server: 13c2c931-swin40-swy6li-tni2.cu.plebai.net, port: 15229, type: trojan, password: 5e2f888c-68ef-11ef-96ca-f23c9164ca5d, sni: 13c2c931-swin40-swy6li-tni2.cu.plebai.net, skip-cert-verify: true} 44 | - {name: 🇨🇳CN-157.148.96.92-042, server: 4560c642-swin40-tjuq6l-wf62.cu.plebai.net, port: 15229, type: trojan, password: def14a51-e0d9-11ec-8429-f23c91cfbbc9, sni: 4560c642-swin40-tjuq6l-wf62.cu.plebai.net, skip-cert-verify: true} 45 | - {name: 🇰🇷KR-3.35.54.68-043, server: 3.35.54.68, port: 443, type: ss, cipher: aes-256-cfb, password: yijian0503} 46 | - {name: 🇨🇳CN-183.2.157.135-044, server: 8tv68qhq.slashdevslashnetslashtun.net, port: 15010, type: ss, cipher: aes-256-gcm, password: ENYGONDU94UW1G6X} 47 | - {name: 🇭🇰HK-1.65.250.168-045, server: hkkh11v1.xpmc.cc, port: 27693, type: ss, cipher: chacha20-ietf-poly1305, password: 91a41f4e02dc} 48 | - {name: 🇨🇳CN-183.236.51.38-046, server: 183.236.51.38, port: 49302, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 49 | - {name: 🇯🇵JP-48.218.11.10-047, server: usla.mjt000.com, port: 443, type: trojan, password: e4af2638-bb12-4e4a-84f1-a032e23ca63f, sni: usla.mjt000.com, skip-cert-verify: true} 50 | - {name: 🇨🇳CN-120.232.153.40-048, server: 120.232.153.40, port: 52182, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 51 | - {name: 🇨🇳CN-111.26.109.79-049, server: v9.heduian.link, port: 30809, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: baidu.com}} 52 | - {name: 🇨🇳CN-120.232.153.40-050, server: 120.232.153.40, port: 31209, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 53 | - {name: 🇨🇳CN-120.233.147.160-051, server: jg647hf446ghvw.gym0boy.com, port: 16100, type: ss, cipher: chacha20-ietf-poly1305, password: a9d1c7f7-a1bc-47d8-b320-9b79cdf8cd00} 54 | - {name: 🇨🇳CN-163.177.45.154-052, server: cn01.efan8867801.xyz, port: 8766, type: ss, cipher: rc4-md5, password: efanccyun} 55 | - {name: 🇭🇰HK-43.226.17.17-053, server: 43.226.17.17, port: 25356, type: ss, cipher: chacha20-ietf-poly1305, password: 2e96aa2f3054} 56 | - {name: 🇨🇳CN-183.2.157.134-054, server: ti3hyra4.slashdevslashnetslashtun.net, port: 18008, type: ss, cipher: aes-256-gcm, password: 6EZ5QKFX60AVSUYT} 57 | - {name: 🇨🇳CN-120.233.147.160-055, server: jg647hf446ghvw.gym0boy.com, port: 32875, type: ss, cipher: chacha20-ietf-poly1305, password: a9d1c7f7-a1bc-47d8-b320-9b79cdf8cd00} 58 | - {name: 🇨🇳CN-36.150.94.35-056, server: v12.heduian.link, port: 30812, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: ocbc.com}} 59 | - {name: 🇨🇳CN-120.233.147.160-057, server: jg647hf446ghvw.gym0boy.com, port: 44054, type: ss, cipher: chacha20-ietf-poly1305, password: a9d1c7f7-a1bc-47d8-b320-9b79cdf8cd00} 60 | - {name: 🇨🇳CN-183.240.227.29-058, server: sg1.qqingca.cc, port: 20347, type: ss, cipher: chacha20-ietf-poly1305, password: 5a0b2638-8416-42c1-b87e-99864b3d3ef2} 61 | - {name: 🇰🇷KR-125.141.26.12-059, server: 125.141.26.12, port: 4857, type: ss, cipher: aes-256-cfb, password: "qwerREWQ@@"} 62 | - {name: 🇰🇷KR-27.255.82.135-060, server: p080.panda001.net, port: 36379, type: ss, cipher: aes-256-cfb, password: "qwerREWQ@@"} 63 | - {name: 🇨🇳CN-163.177.45.154-061, server: cn01.efan8867801.xyz, port: 8774, type: ss, cipher: rc4-md5, password: efanccyun} 64 | - {name: 🇨🇳CN-111.26.109.79-062, server: v32.heduian.link, port: 30832, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: baidu.com}} 65 | - {name: 🇨🇳CN-111.26.109.79-063, server: 111.26.109.79, port: 30828, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: ocbc.com}} 66 | - {name: 🇨🇳CN-183.2.157.134-064, server: ti3hyra4.slashdevslashnetslashtun.net, port: 17005, type: ss, cipher: aes-256-gcm, password: 2Z11BX63H64YSEDM} 67 | - {name: 🇰🇷KR-3.35.54.68-065, server: 3.35.54.68, port: 443, type: ss, cipher: ss, password: //YWVzLTI1Ni1jZmI6eWlqaWFuMDUwMw} 68 | - {name: 🇨🇳CN-183.2.157.135-066, server: 8tv68qhq.slashdevslashnetslashtun.net, port: 15010, type: ss, cipher: ss, password: //YWVzLTI1Ni1nY206RU5ZR09ORFU5NFVXMUc2WA} 69 | - {name: 🇨🇳CN-183.236.51.38-067, server: 183.236.51.38, port: 49302, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 70 | - {name: 🇨🇳CN-120.232.153.40-068, server: 120.232.153.40, port: 52182, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 71 | - {name: 🇨🇳CN-120.232.153.40-069, server: 120.232.153.40, port: 31209, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 72 | - {name: 🇨🇳CN-120.233.147.160-070, server: jg647hf446ghvw.gym0boy.com, port: 16100, type: ss, cipher: ss, password: //Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTphOWQxYzdmNy1hMWJjLTQ3ZDgtYjMyMC05Yjc5Y2RmOGNkMDA} 73 | - {name: 🇨🇳CN-183.2.157.134-071, server: ti3hyra4.slashdevslashnetslashtun.net, port: 18008, type: ss, cipher: ss, password: //YWVzLTI1Ni1nY206NkVaNVFLRlg2MEFWU1VZVA} 74 | - {name: 🇨🇳CN-120.233.147.160-072, server: jg647hf446ghvw.gym0boy.com, port: 32875, type: ss, cipher: ss, password: //Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTphOWQxYzdmNy1hMWJjLTQ3ZDgtYjMyMC05Yjc5Y2RmOGNkMDA} 75 | - {name: 🇯🇵JP-8.211.154.107-073, server: 8.211.154.107, port: 50951, type: vmess, uuid: a3d04548-625c-4658-9ff0-f9a7835d1f6d, alterId: 0, cipher: auto, skip-cert-verify: true, network: kcp, ws-path: /, tls: false, ws-headers: {Host: 8.211.154.107}} 76 | - {name: 🇨🇳CN-120.233.147.160-074, server: jg647hf446ghvw.gym0boy.com, port: 44054, type: ss, cipher: ss, password: //Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTphOWQxYzdmNy1hMWJjLTQ3ZDgtYjMyMC05Yjc5Y2RmOGNkMDA} 77 | - {name: 🇨🇳CN-183.240.227.29-075, server: sg1.qqingca.cc, port: 20347, type: ss, cipher: ss, password: //Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTo1YTBiMjYzOC04NDE2LTQyYzEtYjg3ZS05OTg2NGIzZDNlZjI} 78 | - {name: 🇰🇷KR-125.141.26.12-076, server: 125.141.26.12, port: 4857, type: ss, cipher: ss, password: //YWVzLTI1Ni1jZmI6cXdlclJFV1FAQA} 79 | - {name: 🇰🇷KR-27.255.82.135-077, server: p080.panda001.net, port: 36379, type: ss, cipher: ss, password: //YWVzLTI1Ni1jZmI6cXdlclJFV1FAQA} 80 | - {name: 🇨🇳CN-183.2.157.134-078, server: ti3hyra4.slashdevslashnetslashtun.net, port: 17005, type: ss, cipher: ss, password: //YWVzLTI1Ni1nY206MloxMUJYNjNINjRZU0VETQ} 81 | - {name: 🏁RELAY-188.164.159.241-079, server: 188.164.159.241, port: 2096, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, ws-path: "h=%2F%3Fed%3D2560", skip-cert-verify: true} 82 | - {name: 🇨🇳CN-157.148.96.89-080, server: f1e4e0ee-swin40-t12cnj-1ol97.cu.plebai.net, port: 15229, type: trojan, password: 93fb69fc-77cf-11ee-85ee-f23c91369f2d, sni: f1e4e0ee-swin40-t12cnj-1ol97.cu.plebai.net, skip-cert-verify: true} 83 | - {name: 🇨🇳CN-157.148.96.94-081, server: 6f772034-sx6ps0-taklwz-12bd.cu.plebai.net, port: 15229, type: trojan, password: ea76ae7e-ea95-11ef-8b73-f23c91cfbbc9, sni: 6f772034-sx6ps0-taklwz-12bd.cu.plebai.net, skip-cert-verify: true} 84 | - {name: 🇨🇳CN-157.148.96.92-082, server: 8e9c3ff5-sx4v40-t6oecc-1slpn.cu.plebai.net, port: 15229, type: trojan, password: 659b0268-92ca-11ef-b3af-f23c913c8d2b, sni: 8e9c3ff5-sx4v40-t6oecc-1slpn.cu.plebai.net, skip-cert-verify: true} 85 | - {name: 🇨🇳CN-157.148.96.94-083, server: 415a547f-sx8kg0-t1msbw-1nn0k.cu.plebai.net, port: 15229, type: trojan, password: f9c35596-f323-11ed-8ccd-f23c91cfbbc9, sni: 415a547f-sx8kg0-t1msbw-1nn0k.cu.plebai.net, skip-cert-verify: true} 86 | - {name: 🇨🇳CN-157.148.96.92-084, server: 2252b964-sx4v40-tee612-2r82.cu.plebai.net, port: 15229, type: trojan, password: 03573f46-e944-11eb-a8bf-f23c91cfbbc9, sni: 2252b964-sx4v40-tee612-2r82.cu.plebai.net, skip-cert-verify: true} 87 | - {name: 🇨🇳CN-157.148.96.92-085, server: 67636d50-sx6ps0-sxpbuh-1ndin.cu.plebai.net, port: 15229, type: trojan, password: 1a7f2766-e24d-11ed-98a7-f23c913c8d2b, sni: 67636d50-sx6ps0-sxpbuh-1ndin.cu.plebai.net, skip-cert-verify: true} 88 | - {name: 🇨🇳CN-157.148.96.89-086, server: a4b963da-sx6ps0-t0j7ql-1t7gn.cu.plebai.net, port: 15229, type: trojan, password: 4d78032e-d27c-11ef-bd97-f23c9164ca5d, sni: a4b963da-sx6ps0-t0j7ql-1t7gn.cu.plebai.net, skip-cert-verify: true} 89 | - {name: 🇨🇳CN-157.148.96.92-087, server: 3c80a135-swb8g0-t6ouc9-13xtu.cu.plebai.net, port: 15229, type: trojan, password: 4a7f880c-72f4-11ed-b0b5-f23c9164ca5d, sni: 3c80a135-swb8g0-t6ouc9-13xtu.cu.plebai.net, skip-cert-verify: true} 90 | - {name: 🇨🇳CN-157.148.96.94-088, server: 2e051986-sx4v40-t2ghw9-1pf7n.cu.plebai.net, port: 15229, type: trojan, password: e542ec26-b786-11ee-9a75-f23c91cfbbc9, sni: 2e051986-sx4v40-t2ghw9-1pf7n.cu.plebai.net, skip-cert-verify: true} 91 | - {name: 🇨🇳CN-157.148.96.92-089, server: c5d812aa-sx4v40-sx7hbg-1mmbp.cu.plebai.net, port: 15229, type: trojan, password: 607d365e-7ea1-11ee-95e9-f23c913c8d2b, sni: c5d812aa-sx4v40-sx7hbg-1mmbp.cu.plebai.net, skip-cert-verify: true} 92 | - {name: 🇨🇳CN-157.148.96.94-090, server: f8263ad9-sx8kg0-t7qex7-1supq.cu.plebai.net, port: 15229, type: trojan, password: 7af3db60-b2d9-11ef-88ab-f23c913c8d2b, sni: f8263ad9-sx8kg0-t7qex7-1supq.cu.plebai.net, skip-cert-verify: true} 93 | - {name: 🇨🇳CN-157.148.96.94-091, server: 493d7185-sx4v40-t30eih-jm0w.cu.plebai.net, port: 15229, type: trojan, password: e3004917-ad9d-b8a2-a2ee-65a54830e020, sni: 493d7185-sx4v40-t30eih-jm0w.cu.plebai.net, skip-cert-verify: true} 94 | - {name: 🇨🇳CN-157.148.96.92-092, server: eb4fe914-sx6ps0-t234dm-eso8.cu.plebai.net, port: 15229, type: trojan, password: 3c461e2c-9d13-11ef-8563-f23c913c8d2b, sni: eb4fe914-sx6ps0-t234dm-eso8.cu.plebai.net, skip-cert-verify: true} 95 | - {name: 🇨🇳CN-157.148.96.94-093, server: e3ca594f-sx8kg0-t9azkv-17xn0.cu.plebai.net, port: 15229, type: trojan, password: 4faf123a-572a-11eb-8684-f23c913c8d2b, sni: e3ca594f-sx8kg0-t9azkv-17xn0.cu.plebai.net, skip-cert-verify: true} 96 | - {name: 🇨🇳CN-157.148.96.94-094, server: 0a107103-sx8kg0-syxs94-1jbj0.cu.plebai.net, port: 15229, type: trojan, password: b2c6384c-f63d-11ec-b1b3-f23c91cfbbc9, sni: 0a107103-sx8kg0-syxs94-1jbj0.cu.plebai.net, skip-cert-verify: true} 97 | - {name: 🇨🇳CN-157.148.96.92-095, server: d6cafd53-sx4v40-tbcla6-194tt.cu.plebai.net, port: 15229, type: trojan, password: 602e99aa-718d-11eb-b77b-f23c913c8d2b, sni: d6cafd53-sx4v40-tbcla6-194tt.cu.plebai.net, skip-cert-verify: true} 98 | - {name: 🏁RELAY-103.116.7.103-096, server: 103.116.7.103, port: 2083, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, ws-path: "h=%2F%3Fed%3D2560", skip-cert-verify: true} 99 | - {name: 🇰🇷KR-112.184.209.63-097, server: 112.184.209.63, port: 12088, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, ws-path: "h=%2F%3Fed%3D2560", skip-cert-verify: true} 100 | - {name: 🇳🇴NO-95.164.38.151-098, server: 95.164.38.151, port: 443, type: trojan, password: 0fc9c5ff-9531-4178-966f-7d958e1df64b, sni: copy-wifi-twins.stark-industries.solutions, skip-cert-verify: true} 101 | - {name: 🏁RELAY-5.182.84.244-099, server: 5.182.84.244, port: 443, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, ws-path: "h=%2F%3Fed%3D2560", skip-cert-verify: true} 102 | - {name: 🏁RELAY-92.53.190.161-100, server: 92.53.190.161, port: 2087, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, ws-path: "h=%2F%3Fed%3D2560", skip-cert-verify: true} 103 | - {name: 🇨🇳CN-163.177.45.154-101, server: cn01.efan8867801.xyz, port: "8766/?plugin=obfs-local%3Bobfs%3Dhttp%3Bobfs-host%3D202505282364048-MMi78MWpgU.download.microsoft.com", type: ss, cipher: rc4-md5, password: efanccyun} 104 | - {name: 🇭🇰HK-43.226.17.17-102, server: 43.226.17.17, port: "25356/?plugin=v2ray-plugin%3Bmode%3Dwebsocket%3Bpath%3D%2Flornlqecrjwe%3Bhost%3Dkr7v1.pmxiaonan.xyz%3Btls", type: ss, cipher: chacha20-ietf-poly1305, password: 2e96aa2f3054} 105 | - {name: 🇭🇰HK-1.65.250.168-103, server: hkkh11v1.xpmc.cc, port: "27693/?plugin=v2ray-plugin%3Bmode%3Dwebsocket%3Bmux%3D8%3Bpath%3D%2Futvbnrzejpmt%3Bhost%3Dhkkh11v1.xpmc.cc%3Btls", type: ss, cipher: chacha20-ietf-poly1305, password: 91a41f4e02dc} 106 | - {name: 🇨🇳CN-163.177.45.154-104, server: cn01.efan8867801.xyz, port: "8774/?plugin=obfs-local%3Bobfs%3Dhttp%3Bobfs-host%3D202505160159024-hAiTvMCGlv.download.microsoft.com", type: ss, cipher: rc4-md5, password: efanccyun} 107 | - {name: 🏁RELAY-172.67.153.59-105, server: ssp1.100896.xyz, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp1.100896.xyz, skip-cert-verify: true} 108 | - {name: 🏁RELAY-198.41.220.125-106, server: 198.41.220.125, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp2.100896.xyz, skip-cert-verify: true} 109 | - {name: 🏁RELAY-172.67.153.59-107, server: ssloa1.100896.xyz, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssloa1.100896.xyz, skip-cert-verify: true} 110 | - {name: 🏁RELAY-172.67.153.59-108, server: ssloa1.100896.xyz, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssloa1.100896.xyz, skip-cert-verify: true} 111 | - {name: 🏁RELAY-104.21.3.60-109, server: ssanj01.100896.xyz, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssanj01.100896.xyz, skip-cert-verify: true} 112 | - {name: 🏁RELAY-104.21.3.60-110, server: ssanj01.100896.xyz, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssanj01.100896.xyz, skip-cert-verify: true} 113 | - {name: 🏁RELAY-104.21.3.60-111, server: ssp1.100896.xyz, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp1.100896.xyz, skip-cert-verify: true} 114 | - {name: 🏁RELAY-190.93.244.105-112, server: 190.93.244.105, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp1.100896.xyz, skip-cert-verify: true} 115 | - {name: 🏁RELAY-108.162.196.69-113, server: 108.162.196.69, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssanj01.100896.xyz, skip-cert-verify: true} 116 | - {name: 🏁RELAY-141.101.114.154-114, server: 141.101.114.154, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp1.100896.xyz, skip-cert-verify: true} 117 | - {name: 🏁RELAY-162.159.128.101-115, server: 162.159.128.101, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp1.100896.xyz, skip-cert-verify: true} 118 | - {name: 🏁RELAY-172.67.156.239-116, server: 172.67.156.239, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssloa2.100896.xyz, skip-cert-verify: true} 119 | - {name: 🏁RELAY-188.114.97.58-117, server: 188.114.97.58, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssloa2.100896.xyz, skip-cert-verify: true} 120 | - {name: 🏁RELAY-172.67.152.188-118, server: 172.67.152.188, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp1.100896.xyz, skip-cert-verify: true} 121 | - {name: 🏁RELAY-141.101.120.10-119, server: 141.101.120.10, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp2.100896.xyz, skip-cert-verify: true} 122 | - {name: 🏁RELAY-108.162.198.165-120, server: 108.162.198.165, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp1.100896.xyz, skip-cert-verify: true} 123 | - {name: 🏁RELAY-190.93.244.105-121, server: 190.93.244.105, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp1.100896.xyz, skip-cert-verify: true} 124 | - {name: 🏁RELAY-198.41.220.125-122, server: 198.41.220.125, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp2.100896.xyz, skip-cert-verify: true} 125 | - {name: 🏁RELAY-104.22.5.205-123, server: 104.22.5.205, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp2.100896.xyz, skip-cert-verify: true} 126 | - {name: 🏁RELAY-108.162.196.130-124, server: 108.162.196.130, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp2.100896.xyz, skip-cert-verify: true} 127 | - {name: 🏁RELAY-108.162.198.165-125, server: 108.162.198.165, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp1.100896.xyz, skip-cert-verify: true} 128 | - {name: 🏁RELAY-188.114.97.58-126, server: 188.114.97.58, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp1.100896.xyz, skip-cert-verify: true} 129 | - {name: 🏁RELAY-141.101.115.138-127, server: cdn3.100896.xyz, port: 443, type: trojan, password: 7743e1b5-d301-4a66-b765-17094890fae2, sni: ssp6.100896.xyz, skip-cert-verify: true} 130 | - {name: 🇨🇳CN-120.232.153.40-128, server: 120.232.153.40, port: 52182, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 131 | - {name: 🇨🇳CN-36.156.102.123-129, server: 36.156.102.123, port: 50723, type: trojan, password: RlzoEILU, sni: 36.156.102.123, skip-cert-verify: true} 132 | - {name: 🇨🇳CN-120.232.153.40-130, server: 120.232.153.40, port: 31209, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 133 | - {name: 🇭🇰HK-38.147.187.99-131, server: 38.147.187.99, port: 18181, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 134 | - {name: 🇨🇳CN-183.236.51.38-132, server: 183.236.51.38, port: 33919, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 135 | - {name: 🇨🇳CN-120.232.153.40-133, server: 120.232.153.40, port: 50152, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 136 | - {name: 🏁RELAY-162.159.152.11-134, server: 162.159.152.11, port: 443, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 137 | - {name: 🇸🇬SG-43.134.167.135-135, server: 43.134.167.135, port: 9950, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 138 | - {name: 🇨🇳CN-120.232.153.40-136, server: 120.232.153.40, port: 43292, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 139 | - {name: 🏁RELAY-162.159.153.212-137, server: 162.159.153.212, port: 443, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 140 | - {name: 🇨🇳CN-120.198.71.219-138, server: 120.198.71.219, port: 51095, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.198.71.219}} 141 | - {name: 🇨🇳CN-183.236.51.38-139, server: 183.236.51.38, port: 41024, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 142 | - {name: 🇨🇳CN-183.236.51.38-140, server: 183.236.51.38, port: 59652, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 143 | - {name: 🇨🇳CN-183.236.51.38-141, server: 183.236.51.38, port: 59652, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 144 | - {name: 🇨🇳CN-183.236.51.38-142, server: 183.236.51.38, port: 49302, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 145 | - {name: 🇨🇳CN-183.236.51.38-143, server: 183.236.51.38, port: 49554, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 146 | - {name: 🏁RELAY-31.43.179.60-144, server: 31.43.179.60, port: 2053, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 147 | - {name: 🇨🇳CN-125.88.196.143-145, server: dozo01.flztjc.top, port: 8313, type: trojan, password: 2c605663-b89a-5734-a9d6-97d4743d72cf, sni: dozo01.flztjc.top, skip-cert-verify: true} 148 | - {name: 🏁RELAY-108.165.152.59-146, server: 108.165.152.59, port: 2087, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 149 | - {name: 🏁RELAY-108.165.152.36-147, server: 108.165.152.36, port: 2096, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 150 | - {name: 🇨🇳CN-183.236.51.38-148, server: 183.236.51.38, port: 49302, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 151 | - {name: 🇨🇳CN-183.240.228.221-149, server: b2bb1a46-surog0-t2cl3c-14ubl.cm.plebai.net, port: 15229, type: vmess, uuid: d0f35ada-c39c-11ef-8a98-f23c91cfbbc9, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: b2bb1a46-surog0-t2cl3c-14ubl.cm.plebai.net}} 152 | - {name: 🇨🇳CN-183.240.228.221-150, server: 614ea2b0-sux8g0-td95qh-1isea.cm.plebai.net, port: 15229, type: vmess, uuid: d6abdbda-fe9d-11ec-bb74-f23c9164ca5d, alterId: 0, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 614ea2b0-sux8g0-td95qh-1isea.cm.plebai.net}} 153 | - {name: 🇨🇳CN-183.232.235.2-151, server: 183.232.235.2, port: 8313, type: trojan, password: 2c605663-b89a-5734-a9d6-97d4743d72cf, sni: hk-13-568.flztjc.net, skip-cert-verify: true} 154 | - {name: 🇺🇸US-198.12.121.169-152, server: 198.12.121.169, port: 24863, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 155 | - {name: 🇰🇷KR-220.120.172.116-153, server: 220.120.172.116, port: 33522, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 156 | - {name: 🇰🇷KR-125.133.178.233-154, server: 125.133.178.233, port: 10013, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 157 | - {name: 🏁RELAY-27.50.48.189-155, server: 27.50.48.189, port: 2083, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 158 | - {name: 🏁RELAY-104.129.166.131-156, server: 104.129.166.131, port: 8443, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 159 | - {name: 🏁RELAY-108.165.152.241-157, server: 108.165.152.241, port: 2053, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 160 | - {name: 🇰🇷KR-220.118.248.123-158, server: 220.118.248.123, port: 12302, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 161 | - {name: 🏁RELAY-27.50.48.154-159, server: 27.50.48.154, port: 8443, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 162 | - {name: 🇰🇷KR-14.42.89.42-160, server: 14.42.89.42, port: 50004, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 163 | - {name: 🏁RELAY-162.159.44.235-161, server: 162.159.44.235, port: 2053, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 164 | - {name: 🏁RELAY-45.67.214.41-162, server: 45.67.214.41, port: 2083, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 165 | - {name: 🏁RELAY-188.164.159.214-163, server: 188.164.159.214, port: 2083, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 166 | - {name: 🏁RELAY-172.64.33.144-164, server: theo.ns.cloudflare.com, port: 443, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 167 | - {name: 🇰🇷KR-121.145.126.10-165, server: 121.145.126.10, port: 12578, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 168 | - {name: 🇰🇷KR-210.100.138.35-166, server: 210.100.138.35, port: 17779, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 169 | - {name: 🇰🇷KR-121.133.117.221-167, server: 121.133.117.221, port: 50000, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 170 | - {name: 🏁RELAY-167.68.4.131-168, server: 167.68.4.131, port: 8443, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 171 | - {name: 🇰🇷KR-220.120.172.116-169, server: 220.120.172.116, port: 33522, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 172 | - {name: 🏁RELAY-103.116.7.248-170, server: 103.116.7.248, port: 443, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 173 | - {name: 🏁RELAY-141.11.203.191-171, server: 141.11.203.191, port: 8443, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 174 | - {name: 🏁RELAY-27.50.49.41-172, server: 27.50.49.41, port: 2096, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 175 | - {name: 🏁RELAY-188.164.159.171-173, server: 188.164.159.171, port: 443, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 176 | - {name: 🇰🇷KR-211.195.83.140-174, server: 211.195.83.140, port: 50003, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 177 | - {name: 🏁RELAY-46.254.93.52-175, server: 46.254.93.52, port: 8443, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 178 | - {name: 🏁RELAY-45.194.53.81-176, server: 45.194.53.81, port: 2087, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 179 | - {name: 🇺🇸US-198.62.62.61-177, server: 198.62.62.61, port: 2083, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 180 | - {name: 🏁RELAY-154.197.64.252-178, server: 154.197.64.252, port: 443, type: trojan, password: Aimer, sni: epmq.ambercc.filegear-sg.me, skip-cert-verify: true} 181 | - {name: 🇰🇷KR-121.133.117.221-179, server: 121.133.117.221, port: 50000, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, skip-cert-verify: true} 182 | - {name: 🇨🇳CN-157.148.96.94-180, server: 5b224751-swzb40-t2c3sq-1spnr.cu.plebai.net, port: 15229, type: trojan, password: 127e3f92-f714-11ef-bbb0-f23c91cfbbc9, sni: 5b224751-swzb40-t2c3sq-1spnr.cu.plebai.net, skip-cert-verify: true} 183 | - {name: 🇨🇳CN-120.233.44.201-181, server: 120.233.44.201, port: 21102, type: trojan, password: 2b1ed981-6547-4094-998b-06a3323d6f6c, sni: 120.233.44.201, skip-cert-verify: true} 184 | - {name: 🇨🇳CN-120.233.44.201-182, server: 120.233.44.201, port: 21102, type: trojan, password: 2b1ed981-6547-4094-998b-06a3323d6f6c, sni: 120.233.44.201, skip-cert-verify: true} 185 | - {name: 🇺🇸US-94.131.20.3-183, server: guy-trace-lyric.stark-industries.solutions, port: 443, type: trojan, password: 3482c71a-d01c-4ae5-b454-fa8cb3785f66, skip-cert-verify: true} 186 | - {name: 🇨🇳CN-36.151.251.62-184, server: 36.151.251.62, port: 13542, type: trojan, password: RlzoEILU, sni: cdn.egvra.cn, skip-cert-verify: true} 187 | - {name: 🇺🇸US-94.131.20.3-185, server: chop-wrist-bud.stark-industries.solutions, port: 443, type: trojan, password: 3482c71a-d01c-4ae5-b454-fa8cb3785f66, sni: chop-wrist-bud.stark-industries.solutions, skip-cert-verify: true} 188 | - {name: 🇫🇷FR-15.188.131.37-186, server: 15.188.131.37, port: 22222, type: trojan, password: telegram-id-privatevpns, sni: trojan.burgerip.co.uk, skip-cert-verify: true} 189 | - {name: 🇨🇳CN-36.151.251.62-187, server: 36.151.251.62, port: 13542, type: trojan, password: RlzoEILU, sni: cdn.egvra.cn, skip-cert-verify: true} 190 | - {name: 🇨🇳CN-36.151.251.61-188, server: 36.151.251.61, port: 33097, type: trojan, password: RlzoEILU, sni: 36.151.251.61, skip-cert-verify: true} 191 | - {name: 🇰🇷KR-3.35.54.68-189, server: 3.35.54.68, port: 443, type: ss, cipher: aes-256-cfb, password: yijian0503} 192 | - {name: 🇨🇳CN-183.2.157.135-190, server: 8tv68qhq.slashdevslashnetslashtun.net, port: 15010, type: ss, cipher: aes-256-gcm, password: ENYGONDU94UW1G6X} 193 | - {name: 🇭🇰HK-1.65.250.168-191, server: hkkh11v1.xpmc.cc, port: "27693/?plugin=v2ray-plugin%3Bmode%3Dwebsocket%3Bmux%3D8%3Bpath%3D%2Futvbnrzejpmt%3Bhost%3Dhkkh11v1.xpmc.cc%3Btls", type: ss, cipher: chacha20-ietf-poly1305, password: 91a41f4e02dc} 194 | - {name: 🇨🇳CN-183.236.51.38-192, server: 183.236.51.38, port: 49302, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 195 | - {name: 🇯🇵JP-48.218.11.10-193, server: usla.mjt000.com, port: 443, type: trojan, password: e4af2638-bb12-4e4a-84f1-a032e23ca63f, sni: usla.mjt000.com, skip-cert-verify: true} 196 | - {name: 🇨🇳CN-120.232.153.40-194, server: 120.232.153.40, port: 52182, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 197 | - {name: 🇨🇳CN-111.26.109.79-195, server: v9.heduian.link, port: 30809, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: baidu.com}} 198 | - {name: 🇨🇳CN-111.26.109.79-196, server: v9.heduian.link, port: 30809, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: baidu.com}} 199 | - {name: 🇨🇳CN-111.26.109.79-197, server: v9.heduian.link, port: 30809, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: baidu.com}} 200 | - {name: 🇨🇳CN-120.232.153.40-198, server: 120.232.153.40, port: 31209, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 201 | - {name: 🇨🇳CN-120.233.147.160-199, server: jg647hf446ghvw.gym0boy.com, port: 16100, type: ss, cipher: chacha20-ietf-poly1305, password: a9d1c7f7-a1bc-47d8-b320-9b79cdf8cd00} 202 | - {name: 🇨🇳CN-163.177.45.154-200, server: cn01.efan8867801.xyz, port: "8766/?plugin=obfs-local%3Bobfs%3Dhttp%3Bobfs-host%3D202505282364048-MMi78MWpgU.download.microsoft.com", type: ss, cipher: rc4-md5, password: efanccyun} 203 | - {name: 🇭🇰HK-43.226.17.17-201, server: 43.226.17.17, port: "25356/?plugin=v2ray-plugin%3Bmode%3Dwebsocket%3Bpath%3D%2Flornlqecrjwe%3Bhost%3Dkr7v1.pmxiaonan.xyz%3Btls", type: ss, cipher: chacha20-ietf-poly1305, password: 2e96aa2f3054} 204 | - {name: 🇨🇳CN-183.2.157.134-202, server: ti3hyra4.slashdevslashnetslashtun.net, port: 18008, type: ss, cipher: aes-256-gcm, password: 6EZ5QKFX60AVSUYT} 205 | - {name: 🇨🇳CN-120.233.147.160-203, server: jg647hf446ghvw.gym0boy.com, port: 32875, type: ss, cipher: chacha20-ietf-poly1305, password: a9d1c7f7-a1bc-47d8-b320-9b79cdf8cd00} 206 | - {name: 🇯🇵JP-8.211.154.107-204, server: 8.211.154.107, port: 50951, type: vmess, uuid: a3d04548-625c-4658-9ff0-f9a7835d1f6d, alterId: 0, cipher: auto, skip-cert-verify: true, network: kcp, ws-path: /, tls: false, ws-headers: {Host: 8.211.154.107}} 207 | - {name: 🇨🇳CN-36.150.94.35-205, server: v12.heduian.link, port: 30812, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: ocbc.com}} 208 | - {name: 🇨🇳CN-183.236.51.38-206, server: 183.236.51.38, port: 49302, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 209 | - {name: 🇨🇳CN-120.233.147.160-207, server: jg647hf446ghvw.gym0boy.com, port: 44054, type: ss, cipher: chacha20-ietf-poly1305, password: a9d1c7f7-a1bc-47d8-b320-9b79cdf8cd00} 210 | - {name: 🇨🇳CN-183.240.227.29-208, server: sg1.qqingca.cc, port: 20347, type: ss, cipher: chacha20-ietf-poly1305, password: 5a0b2638-8416-42c1-b87e-99864b3d3ef2} 211 | - {name: 🇰🇷KR-125.141.26.12-209, server: 125.141.26.12, port: 4857, type: ss, cipher: aes-256-cfb, password: "qwerREWQ@@"} 212 | - {name: 🇰🇷KR-27.255.82.135-210, server: p080.panda001.net, port: 36379, type: ss, cipher: aes-256-cfb, password: "qwerREWQ@@"} 213 | - {name: 🇨🇳CN-163.177.45.154-211, server: cn01.efan8867801.xyz, port: "8774/?plugin=obfs-local%3Bobfs%3Dhttp%3Bobfs-host%3D202505160159024-hAiTvMCGlv.download.microsoft.com", type: ss, cipher: rc4-md5, password: efanccyun} 214 | - {name: 🇨🇳CN-111.26.109.79-212, server: v32.heduian.link, port: 30832, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: baidu.com}} 215 | - {name: 🇨🇳CN-111.26.109.79-213, server: 111.26.109.79, port: 30828, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: ocbc.com}} 216 | - {name: 🇨🇳CN-183.2.157.134-214, server: ti3hyra4.slashdevslashnetslashtun.net, port: 17005, type: ss, cipher: aes-256-gcm, password: 2Z11BX63H64YSEDM} 217 | - {name: 🇨🇳CN-111.26.109.79-215, server: 111.26.109.79, port: 30828, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: ocbc.com}} 218 | - {name: 🇨🇳CN-58.246.138.244-216, server: sslvpn.51job.com, port: 1443, type: vmess, uuid: a6a0d901-67e9-460a-90b5-634c5c4f9782, alterId: 64, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /634c5c4f9782, tls: true, ws-headers: {Host: centos7}} 219 | - {name: 🇸🇰SK-156.146.40.194-217, server: 156.146.40.194, port: 989, type: ss, cipher: aes-256-cfb, password: f8f7aCzcPKbsF8p3} 220 | - {name: 🇨🇳CN-183.236.51.38-218, server: 183.236.51.38, port: 49291, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 221 | - {name: 🇨🇳CN-157.148.96.94-219, server: 391907cc-swgsg0-t1bnjq-1krtb.cu.plebai.net, port: 15229, type: trojan, password: 60f6b4c4-9d70-11ed-a4d2-f23c9164ca5d, skip-cert-verify: true} 222 | - {name: 🇯🇵JP-38.47.96.30-220, server: 38.47.96.30, port: 443, type: vmess, uuid: 164a6ad0-476a-4bae-b78f-a3d37cf0f414, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /lzjjj, tls: true, ws-headers: {Host: th.lzj520hxw.dpdns.org}} 223 | - {name: 🇰🇷KR-125.141.31.72-221, server: 125.141.31.72, port: 15098, type: ss, cipher: aes-256-cfb, password: "qwerREWQ@@"} 224 | - {name: 🇨🇳CN-111.26.109.79-222, server: v29.heduian.link, port: 30829, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: ocbc.com}} 225 | - {name: 🇩🇪DE-5.39.249.119-223, server: de.vmess.comnpmjs.com, port: 443, type: vmess, uuid: ceaaf653-9874-58c6-b100-092c01a1f73d, alterId: 0, cipher: auto, skip-cert-verify: true, network: grpc, ws-path: vmess-grpc, tls: true, ws-headers: {Host: de.vmess.comnpmjs.com}} 226 | - {name: 🇭🇰HK-1.65.209.65-224, server: bc842b49-swexs0-t1rt5e-1s09x.hgc1.tcpbbr.net, port: 8080, type: vmess, uuid: 62b7824e-47dc-11ef-9f2d-f23c9164ca5d, alterId: 0, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /, tls: false, ws-headers: {Host: broadcastlv.chat.bilibili.com}} 227 | - {name: 🇨🇳CN-157.148.96.89-225, server: 13c2c931-swin40-swy6li-tni2.cu.plebai.net, port: 15229, type: trojan, password: 5e2f888c-68ef-11ef-96ca-f23c9164ca5d, sni: 13c2c931-swin40-swy6li-tni2.cu.plebai.net, skip-cert-verify: true} 228 | - {name: 🇨🇳CN-157.148.96.89-226, server: 4560c642-swin40-tjuq6l-wf62.cu.plebai.net, port: 15229, type: trojan, password: def14a51-e0d9-11ec-8429-f23c91cfbbc9, sni: 4560c642-swin40-tjuq6l-wf62.cu.plebai.net, skip-cert-verify: true} 229 | - {name: 🇰🇷KR-3.35.54.68-227, server: 3.35.54.68, port: 443, type: ss, cipher: aes-256-cfb, password: yijian0503} 230 | - {name: 🇨🇳CN-183.2.157.135-228, server: 8tv68qhq.slashdevslashnetslashtun.net, port: 15010, type: ss, cipher: aes-256-gcm, password: ENYGONDU94UW1G6X} 231 | - {name: 🇭🇰HK-1.65.250.168-229, server: hkkh11v1.xpmc.cc, port: 27693, type: ss, cipher: chacha20-ietf-poly1305, password: 91a41f4e02dc} 232 | - {name: 🇨🇳CN-183.236.51.38-230, server: 183.236.51.38, port: 49302, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 233 | - {name: 🇯🇵JP-48.218.11.10-231, server: usla.mjt000.com, port: 443, type: trojan, password: e4af2638-bb12-4e4a-84f1-a032e23ca63f, sni: usla.mjt000.com, skip-cert-verify: true} 234 | - {name: 🇨🇳CN-120.232.153.40-232, server: 120.232.153.40, port: 52182, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 235 | - {name: 🇨🇳CN-111.26.109.79-233, server: v9.heduian.link, port: 30809, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: baidu.com}} 236 | - {name: 🇨🇳CN-120.232.153.40-234, server: 120.232.153.40, port: 31209, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 237 | - {name: 🇨🇳CN-120.233.147.160-235, server: jg647hf446ghvw.gym0boy.com, port: 16100, type: ss, cipher: chacha20-ietf-poly1305, password: a9d1c7f7-a1bc-47d8-b320-9b79cdf8cd00} 238 | - {name: 🇨🇳CN-163.177.45.154-236, server: cn01.efan8867801.xyz, port: 8766, type: ss, cipher: rc4-md5, password: efanccyun} 239 | - {name: 🇭🇰HK-43.226.17.17-237, server: 43.226.17.17, port: 25356, type: ss, cipher: chacha20-ietf-poly1305, password: 2e96aa2f3054} 240 | - {name: 🇨🇳CN-183.2.157.134-238, server: ti3hyra4.slashdevslashnetslashtun.net, port: 18008, type: ss, cipher: aes-256-gcm, password: 6EZ5QKFX60AVSUYT} 241 | - {name: 🇨🇳CN-120.233.147.160-239, server: jg647hf446ghvw.gym0boy.com, port: 32875, type: ss, cipher: chacha20-ietf-poly1305, password: a9d1c7f7-a1bc-47d8-b320-9b79cdf8cd00} 242 | - {name: 🇨🇳CN-36.150.94.35-240, server: v12.heduian.link, port: 30812, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: ocbc.com}} 243 | - {name: 🇨🇳CN-120.233.147.160-241, server: jg647hf446ghvw.gym0boy.com, port: 44054, type: ss, cipher: chacha20-ietf-poly1305, password: a9d1c7f7-a1bc-47d8-b320-9b79cdf8cd00} 244 | - {name: 🇨🇳CN-183.240.227.29-242, server: sg1.qqingca.cc, port: 20347, type: ss, cipher: chacha20-ietf-poly1305, password: 5a0b2638-8416-42c1-b87e-99864b3d3ef2} 245 | - {name: 🇰🇷KR-125.141.26.12-243, server: 125.141.26.12, port: 4857, type: ss, cipher: aes-256-cfb, password: "qwerREWQ@@"} 246 | - {name: 🇰🇷KR-27.255.82.135-244, server: p080.panda001.net, port: 36379, type: ss, cipher: aes-256-cfb, password: "qwerREWQ@@"} 247 | - {name: 🇨🇳CN-163.177.45.154-245, server: cn01.efan8867801.xyz, port: 8774, type: ss, cipher: rc4-md5, password: efanccyun} 248 | - {name: 🇨🇳CN-111.26.109.79-246, server: v32.heduian.link, port: 30832, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: baidu.com}} 249 | - {name: 🇨🇳CN-111.26.109.79-247, server: 111.26.109.79, port: 30828, type: vmess, uuid: cbb3f877-d1fb-344c-87a9-d153bffd5484, alterId: 2, cipher: auto, skip-cert-verify: true, network: ws, ws-path: /oooo, tls: false, ws-headers: {Host: ocbc.com}} 250 | - {name: 🇨🇳CN-183.2.157.134-248, server: ti3hyra4.slashdevslashnetslashtun.net, port: 17005, type: ss, cipher: aes-256-gcm, password: 2Z11BX63H64YSEDM} 251 | - {name: 🇰🇷KR-3.35.54.68-249, server: 3.35.54.68, port: 443, type: ss, cipher: ss, password: //YWVzLTI1Ni1jZmI6eWlqaWFuMDUwMw} 252 | - {name: 🇨🇳CN-183.2.157.135-250, server: 8tv68qhq.slashdevslashnetslashtun.net, port: 15010, type: ss, cipher: ss, password: //YWVzLTI1Ni1nY206RU5ZR09ORFU5NFVXMUc2WA} 253 | - {name: 🇨🇳CN-183.236.51.38-251, server: 183.236.51.38, port: 49302, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 183.236.51.38}} 254 | - {name: 🇨🇳CN-120.232.153.40-252, server: 120.232.153.40, port: 52182, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 255 | - {name: 🇨🇳CN-120.232.153.40-253, server: 120.232.153.40, port: 31209, type: vmess, uuid: 418048af-a293-4b99-9b0c-98ca3580dd24, alterId: 64, cipher: auto, skip-cert-verify: true, network: tcp, ws-path: /, tls: false, ws-headers: {Host: 120.232.153.40}} 256 | - {name: 🇨🇳CN-120.233.147.160-254, server: jg647hf446ghvw.gym0boy.com, port: 16100, type: ss, cipher: ss, password: //Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTphOWQxYzdmNy1hMWJjLTQ3ZDgtYjMyMC05Yjc5Y2RmOGNkMDA} 257 | - {name: 🇨🇳CN-183.2.157.134-255, server: ti3hyra4.slashdevslashnetslashtun.net, port: 18008, type: ss, cipher: ss, password: //YWVzLTI1Ni1nY206NkVaNVFLRlg2MEFWU1VZVA} 258 | - {name: 🇨🇳CN-120.233.147.160-256, server: jg647hf446ghvw.gym0boy.com, port: 32875, type: ss, cipher: ss, password: //Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTphOWQxYzdmNy1hMWJjLTQ3ZDgtYjMyMC05Yjc5Y2RmOGNkMDA} 259 | - {name: 🇯🇵JP-8.211.154.107-257, server: 8.211.154.107, port: 50951, type: vmess, uuid: a3d04548-625c-4658-9ff0-f9a7835d1f6d, alterId: 0, cipher: auto, skip-cert-verify: true, network: kcp, ws-path: /, tls: false, ws-headers: {Host: 8.211.154.107}} 260 | - {name: 🇨🇳CN-120.233.147.160-258, server: jg647hf446ghvw.gym0boy.com, port: 44054, type: ss, cipher: ss, password: //Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTphOWQxYzdmNy1hMWJjLTQ3ZDgtYjMyMC05Yjc5Y2RmOGNkMDA} 261 | - {name: 🇨🇳CN-183.240.227.29-259, server: sg1.qqingca.cc, port: 20347, type: ss, cipher: ss, password: //Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTo1YTBiMjYzOC04NDE2LTQyYzEtYjg3ZS05OTg2NGIzZDNlZjI} 262 | - {name: 🇰🇷KR-125.141.26.12-260, server: 125.141.26.12, port: 4857, type: ss, cipher: ss, password: //YWVzLTI1Ni1jZmI6cXdlclJFV1FAQA} 263 | - {name: 🇰🇷KR-27.255.82.135-261, server: p080.panda001.net, port: 36379, type: ss, cipher: ss, password: //YWVzLTI1Ni1jZmI6cXdlclJFV1FAQA} 264 | - {name: 🇨🇳CN-183.2.157.134-262, server: ti3hyra4.slashdevslashnetslashtun.net, port: 17005, type: ss, cipher: ss, password: //YWVzLTI1Ni1nY206MloxMUJYNjNINjRZU0VETQ} 265 | - {name: 🏁RELAY-188.164.159.241-263, server: 188.164.159.241, port: 2096, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, ws-path: "h=%2F%3Fed%3D2560", skip-cert-verify: true} 266 | - {name: 🇨🇳CN-157.148.96.92-264, server: f1e4e0ee-swin40-t12cnj-1ol97.cu.plebai.net, port: 15229, type: trojan, password: 93fb69fc-77cf-11ee-85ee-f23c91369f2d, sni: f1e4e0ee-swin40-t12cnj-1ol97.cu.plebai.net, skip-cert-verify: true} 267 | - {name: 🇨🇳CN-157.148.96.89-265, server: 6f772034-sx6ps0-taklwz-12bd.cu.plebai.net, port: 15229, type: trojan, password: ea76ae7e-ea95-11ef-8b73-f23c91cfbbc9, sni: 6f772034-sx6ps0-taklwz-12bd.cu.plebai.net, skip-cert-verify: true} 268 | - {name: 🇨🇳CN-157.148.96.92-266, server: 8e9c3ff5-sx4v40-t6oecc-1slpn.cu.plebai.net, port: 15229, type: trojan, password: 659b0268-92ca-11ef-b3af-f23c913c8d2b, sni: 8e9c3ff5-sx4v40-t6oecc-1slpn.cu.plebai.net, skip-cert-verify: true} 269 | - {name: 🇨🇳CN-157.148.96.92-267, server: 415a547f-sx8kg0-t1msbw-1nn0k.cu.plebai.net, port: 15229, type: trojan, password: f9c35596-f323-11ed-8ccd-f23c91cfbbc9, sni: 415a547f-sx8kg0-t1msbw-1nn0k.cu.plebai.net, skip-cert-verify: true} 270 | - {name: 🇨🇳CN-157.148.96.94-268, server: 2252b964-sx4v40-tee612-2r82.cu.plebai.net, port: 15229, type: trojan, password: 03573f46-e944-11eb-a8bf-f23c91cfbbc9, sni: 2252b964-sx4v40-tee612-2r82.cu.plebai.net, skip-cert-verify: true} 271 | - {name: 🇨🇳CN-157.148.96.94-269, server: 67636d50-sx6ps0-sxpbuh-1ndin.cu.plebai.net, port: 15229, type: trojan, password: 1a7f2766-e24d-11ed-98a7-f23c913c8d2b, sni: 67636d50-sx6ps0-sxpbuh-1ndin.cu.plebai.net, skip-cert-verify: true} 272 | - {name: 🇨🇳CN-157.148.96.92-270, server: a4b963da-sx6ps0-t0j7ql-1t7gn.cu.plebai.net, port: 15229, type: trojan, password: 4d78032e-d27c-11ef-bd97-f23c9164ca5d, sni: a4b963da-sx6ps0-t0j7ql-1t7gn.cu.plebai.net, skip-cert-verify: true} 273 | - {name: 🇨🇳CN-157.148.96.89-271, server: 3c80a135-swb8g0-t6ouc9-13xtu.cu.plebai.net, port: 15229, type: trojan, password: 4a7f880c-72f4-11ed-b0b5-f23c9164ca5d, sni: 3c80a135-swb8g0-t6ouc9-13xtu.cu.plebai.net, skip-cert-verify: true} 274 | - {name: 🇨🇳CN-157.148.96.92-272, server: 2e051986-sx4v40-t2ghw9-1pf7n.cu.plebai.net, port: 15229, type: trojan, password: e542ec26-b786-11ee-9a75-f23c91cfbbc9, sni: 2e051986-sx4v40-t2ghw9-1pf7n.cu.plebai.net, skip-cert-verify: true} 275 | - {name: 🇨🇳CN-157.148.96.92-273, server: c5d812aa-sx4v40-sx7hbg-1mmbp.cu.plebai.net, port: 15229, type: trojan, password: 607d365e-7ea1-11ee-95e9-f23c913c8d2b, sni: c5d812aa-sx4v40-sx7hbg-1mmbp.cu.plebai.net, skip-cert-verify: true} 276 | - {name: 🇨🇳CN-157.148.96.94-274, server: f8263ad9-sx8kg0-t7qex7-1supq.cu.plebai.net, port: 15229, type: trojan, password: 7af3db60-b2d9-11ef-88ab-f23c913c8d2b, sni: f8263ad9-sx8kg0-t7qex7-1supq.cu.plebai.net, skip-cert-verify: true} 277 | - {name: 🇨🇳CN-157.148.96.94-275, server: 493d7185-sx4v40-t30eih-jm0w.cu.plebai.net, port: 15229, type: trojan, password: e3004917-ad9d-b8a2-a2ee-65a54830e020, sni: 493d7185-sx4v40-t30eih-jm0w.cu.plebai.net, skip-cert-verify: true} 278 | - {name: 🇨🇳CN-157.148.96.92-276, server: eb4fe914-sx6ps0-t234dm-eso8.cu.plebai.net, port: 15229, type: trojan, password: 3c461e2c-9d13-11ef-8563-f23c913c8d2b, sni: eb4fe914-sx6ps0-t234dm-eso8.cu.plebai.net, skip-cert-verify: true} 279 | - {name: 🇨🇳CN-157.148.96.92-277, server: e3ca594f-sx8kg0-t9azkv-17xn0.cu.plebai.net, port: 15229, type: trojan, password: 4faf123a-572a-11eb-8684-f23c913c8d2b, sni: e3ca594f-sx8kg0-t9azkv-17xn0.cu.plebai.net, skip-cert-verify: true} 280 | - {name: 🇨🇳CN-157.148.96.94-278, server: 0a107103-sx8kg0-syxs94-1jbj0.cu.plebai.net, port: 15229, type: trojan, password: b2c6384c-f63d-11ec-b1b3-f23c91cfbbc9, sni: 0a107103-sx8kg0-syxs94-1jbj0.cu.plebai.net, skip-cert-verify: true} 281 | - {name: 🇨🇳CN-157.148.96.92-279, server: d6cafd53-sx4v40-tbcla6-194tt.cu.plebai.net, port: 15229, type: trojan, password: 602e99aa-718d-11eb-b77b-f23c913c8d2b, sni: d6cafd53-sx4v40-tbcla6-194tt.cu.plebai.net, skip-cert-verify: true} 282 | - {name: 🏁RELAY-103.116.7.103-280, server: 103.116.7.103, port: 2083, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, ws-path: "h=%2F%3Fed%3D2560", skip-cert-verify: true} 283 | - {name: 🇰🇷KR-112.184.209.63-281, server: 112.184.209.63, port: 12088, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, ws-path: "h=%2F%3Fed%3D2560", skip-cert-verify: true} 284 | - {name: 🇳🇴NO-95.164.38.151-282, server: 95.164.38.151, port: 443, type: trojan, password: 0fc9c5ff-9531-4178-966f-7d958e1df64b, sni: copy-wifi-twins.stark-industries.solutions, skip-cert-verify: true} 285 | - {name: 🏁RELAY-5.182.84.244-283, server: 5.182.84.244, port: 443, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, ws-path: "h=%2F%3Fed%3D2560", skip-cert-verify: true} 286 | - {name: 🏁RELAY-92.53.190.161-284, server: 92.53.190.161, port: 2087, type: trojan, password: Aimer, sni: epme.ambercc.filegear-sg.me, ws-path: "h=%2F%3Fed%3D2560", skip-cert-verify: true} 287 | - {name: 🇨🇳CN-163.177.45.154-285, server: cn01.efan8867801.xyz, port: "8766/?plugin=obfs-local%3Bobfs%3Dhttp%3Bobfs-host%3D202505282364048-MMi78MWpgU.download.microsoft.com", type: ss, cipher: rc4-md5, password: efanccyun} 288 | - {name: 🇭🇰HK-43.226.17.17-286, server: 43.226.17.17, port: "25356/?plugin=v2ray-plugin%3Bmode%3Dwebsocket%3Bpath%3D%2Flornlqecrjwe%3Bhost%3Dkr7v1.pmxiaonan.xyz%3Btls", type: ss, cipher: chacha20-ietf-poly1305, password: 2e96aa2f3054} 289 | - {name: 🇭🇰HK-1.65.250.168-287, server: hkkh11v1.xpmc.cc, port: "27693/?plugin=v2ray-plugin%3Bmode%3Dwebsocket%3Bmux%3D8%3Bpath%3D%2Futvbnrzejpmt%3Bhost%3Dhkkh11v1.xpmc.cc%3Btls", type: ss, cipher: chacha20-ietf-poly1305, password: 91a41f4e02dc} 290 | - {name: 🇨🇳CN-163.177.45.154-288, server: cn01.efan8867801.xyz, port: "8774/?plugin=obfs-local%3Bobfs%3Dhttp%3Bobfs-host%3D202505160159024-hAiTvMCGlv.download.microsoft.com", type: ss, cipher: rc4-md5, password: efanccyun} -------------------------------------------------------------------------------- /utils/requirements: -------------------------------------------------------------------------------- 1 | geoip2==4.4.0 2 | requests==2.26.0 3 | PyYAML==6.0 4 | -------------------------------------------------------------------------------- /utils/sub_convert.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | 3 | import re, yaml, json, base64 4 | import requests, socket, urllib.parse 5 | from requests.adapters import HTTPAdapter 6 | 7 | import geoip2.database 8 | 9 | class convert(): 10 | 11 | def main(raw_input, input_type='url', output_type='url', custom_set={'dup_rm_enabled': False, 'format_name_enabled': False}): # {'input_type': ['url', 'content'],'output_type': ['url', 'YAML', 'Base64']} 12 | """Convert subscribe content to YAML or Base64 or url. 13 | 首先获取到订阅内容,然后对其进行格式化处理。如果内容不是 “订阅内容解析错误”,在进行去重、改名操作后(可选)输出目标格式,否则输出 “订阅内容解析错误”。 14 | """ 15 | if input_type == 'url': # 获取 URL 订阅链接内容 16 | sub_content = '' 17 | if isinstance(raw_input, list): 18 | a_content = [] 19 | for url in raw_input: 20 | s = requests.Session() 21 | s.mount('http://', HTTPAdapter(max_retries=5)) 22 | s.mount('https://', HTTPAdapter(max_retries=5)) 23 | try: 24 | print('Downloading from:' + url) 25 | resp = s.get(url, timeout=5) 26 | s_content = convert.yaml_decode(convert.format(resp.content.decode('utf-8'))) 27 | a_content.append(s_content) 28 | except Exception as err: 29 | print(err) 30 | return 'Url 解析错误' 31 | sub_content = convert.format(''.join(a_content)) 32 | else: 33 | s = requests.Session() 34 | s.mount('http://', HTTPAdapter(max_retries=5)) 35 | s.mount('https://', HTTPAdapter(max_retries=5)) 36 | try: 37 | print('Downloading from:' + raw_input) 38 | resp = s.get(raw_input, timeout=5) 39 | sub_content = convert.format(resp.content.decode('utf-8')) 40 | except Exception as err: 41 | print(err) 42 | return 'Url 解析错误' 43 | elif input_type == 'content': # 解析订阅内容 44 | sub_content = convert.format(raw_input) 45 | 46 | if sub_content != '订阅内容解析错误': 47 | dup_rm_enabled = custom_set['dup_rm_enabled'] 48 | format_name_enabled = custom_set['format_name_enabled'] 49 | final_content = convert.makeup(sub_content,dup_rm_enabled,format_name_enabled) 50 | if output_type == 'YAML': 51 | return final_content 52 | elif output_type == 'Base64': 53 | return convert.base64_encode(convert.yaml_decode(final_content)) 54 | elif output_type == 'url': 55 | return convert.yaml_decode(final_content) 56 | else: 57 | print('Please define right output type.') 58 | return '订阅内容解析错误' 59 | else: 60 | return '订阅内容解析错误' 61 | 62 | def format(sub_content,output=False): # 对链接文本(Base64, url, YAML)进行格式化处理, 输出节点的配置字典(Clash 配置), output 为真是输出 YAML 文本 63 | if '' not in sub_content: 64 | if 'proxies:' not in sub_content: # 对 URL 内容进行格式化处理 65 | url_list = [] 66 | try: 67 | if '://' not in sub_content: 68 | sub_content = convert.base64_decode(sub_content) 69 | 70 | raw_url_list = re.split(r'\n+', sub_content) 71 | 72 | for url in raw_url_list: 73 | while len(re.split('ss://|ssr://|vmess://|trojan://|vless://', url)) > 2: 74 | url_to_split = url[8:] 75 | if 'ss://' in url_to_split and 'vmess://' not in url_to_split and 'vless://' not in url_to_split: 76 | url_splited = url_to_split.replace('ss://', '\nss://', 1) # https://www.runoob.com/python/att-string-replace.html 77 | elif 'ssr://' in url_to_split: 78 | url_splited = url_to_split.replace('ssr://', '\nssr://', 1) 79 | elif 'vmess://' in url_to_split: 80 | url_splited = url_to_split.replace('vmess://', '\nvmess://', 1) 81 | elif 'trojan://' in url_to_split: 82 | url_splited = url_to_split.replace('trojan://', '\ntrojan://', 1) 83 | elif 'vless://' in url_to_split: 84 | url_splited = url_to_split.replace('vless://', '\nvless://', 1) 85 | url_split = url_splited.split('\n') 86 | 87 | front_url = url[:8] + url_split[0] 88 | url_list.append(front_url) 89 | url = url_split[1] 90 | 91 | url_list.append(url) 92 | 93 | url_content = '\n'.join(url_list) 94 | return convert.yaml_encode(url_content,output=False) 95 | except: 96 | print('Sub_content 格式错误') 97 | return '订阅内容解析错误' 98 | 99 | elif 'proxies:' in sub_content: # 对 Clash 内容进行格式化处理 100 | try: 101 | try_load = yaml.safe_load(sub_content) 102 | if output: 103 | raise ValueError 104 | else: 105 | content_yaml_dic = try_load 106 | for item in content_yaml_dic['proxies']:# 对转换过程中出现的不标准配置格式转换 107 | try: 108 | if item['type'] == 'vmess' and 'HOST' in item['ws-headers'].keys(): 109 | item['ws-headers']['Host'] = item['ws-headers'].pop("HOST") 110 | except KeyError: 111 | if '.' not in item['server']: 112 | content_yaml_dic['proxies'].remove(item) 113 | pass 114 | return content_yaml_dic # 返回字典, output 值为 True 时返回修饰过的 YAML 文本 115 | except Exception: 116 | try: 117 | sub_content = sub_content.replace('\'', '').replace('"', '') 118 | url_list = [] 119 | il_chars = ['|', '?', '[', ']', '@', '!', '%', ':'] 120 | lines = re.split(r'\n+', sub_content) 121 | line_fix_list = [] 122 | for line in lines: 123 | value_list = re.split(r': |, ', line) 124 | if len(value_list) > 6: 125 | value_list_fix = [] 126 | for value in value_list: 127 | for char in il_chars: 128 | value_il = False 129 | if char in value: 130 | value_il = True 131 | break 132 | if value_il == True and ('{' not in value and '}' not in value): 133 | value = '"' + value + '"' 134 | value_list_fix.append(value) 135 | elif value_il == True and '}' in value: 136 | if '}}' in value: 137 | host_part = value.replace('}}','') 138 | host_value = '"'+host_part+'"}}' 139 | value_list_fix.append(host_value) 140 | elif '}}' not in value: 141 | host_part = value.replace('}','') 142 | host_value = '"'+host_part+'"}' 143 | value_list_fix.append(host_value) 144 | else: 145 | value_list_fix.append(value) 146 | line_fix = line 147 | for index in range(len(value_list_fix)): 148 | line_fix = line_fix.replace(value_list[index], value_list_fix[index]) 149 | line_fix_list.append(line_fix) 150 | elif len(value_list) == 2: 151 | value_list_fix = [] 152 | for value in value_list: 153 | for char in il_chars: 154 | value_il = False 155 | if char in value: 156 | value_il = True 157 | break 158 | if value_il == True: 159 | value = '"' + value + '"' 160 | value_list_fix.append(value) 161 | line_fix = line 162 | for index in range(len(value_list_fix)): 163 | line_fix = line_fix.replace(value_list[index], value_list_fix[index]) 164 | line_fix_list.append(line_fix) 165 | elif len(value_list) == 1: 166 | if ':' in line: 167 | line_fix_list.append(line) 168 | else: 169 | line_fix_list.append(line) 170 | 171 | sub_content = '\n'.join(line_fix_list).replace('False', 'false').replace('True', 'true') 172 | if output: 173 | return sub_content 174 | else: 175 | content_yaml_dic = yaml.safe_load(sub_content) 176 | for item in content_yaml_dic['proxies']:# 对转换过程中出现的不标准配置格式转换 177 | try: 178 | if item['type'] == 'vmess' and 'HOST' in item['ws-headers'].keys(): 179 | item['ws-headers']['Host'] = item['ws-headers'].pop("HOST") 180 | except KeyError: 181 | if '.' not in item['server']: 182 | content_yaml_dic['proxies'].remove(item) 183 | pass 184 | 185 | return content_yaml_dic # 返回字典, output 值为 True 时返回修饰过的 YAML 文本 186 | except: 187 | print('Sub_content 格式错误') 188 | return '订阅内容解析错误' 189 | else: 190 | print('订阅内容解析错误') 191 | return '订阅内容解析错误' 192 | 193 | def makeup(input, dup_rm_enabled=False, format_name_enabled=False): # 输入节点配置字典, 对节点进行区域的筛选和重命名,输出 YAML 文本 194 | # 区域判断(Clash YAML): https://blog.csdn.net/CSDN_duomaomao/article/details/89712826 (ip-api) 195 | if isinstance(input, dict): 196 | sub_content = input 197 | else: 198 | sub_content = convert.format(input) 199 | proxies_list = sub_content['proxies'] 200 | 201 | if dup_rm_enabled: # 去重 202 | begin = 0 203 | raw_length = len(proxies_list) 204 | length = len(proxies_list) 205 | while begin < length: 206 | if (begin + 1) == 1: 207 | print(f'\n-----去重开始-----\n起始数量{length}') 208 | elif (begin + 1) % 100 == 0: 209 | print(f'当前基准{begin + 1}-----当前数量{length}') 210 | elif (begin + 1) == length and (begin + 1) % 100 != 0: 211 | repetition = raw_length - length 212 | print(f'当前基准{begin + 1}-----当前数量{length}\n重复数量{repetition}\n-----去重完成-----\n') 213 | proxy_compared = proxies_list[begin] 214 | 215 | begin_2 = begin + 1 216 | while begin_2 <= (length - 1): 217 | 218 | if proxy_compared['server'] == proxies_list[begin_2]['server'] and proxy_compared['port'] == proxies_list[begin_2]['port']: 219 | proxies_list.pop(begin_2) 220 | length -= 1 221 | begin_2 += 1 222 | begin += 1 223 | 224 | url_list = [] 225 | 226 | for proxy in proxies_list: # 改名 227 | if format_name_enabled: 228 | emoji = { 229 | 'AD': '🇦🇩', 'AE': '🇦🇪', 'AF': '🇦🇫', 'AG': '🇦🇬', 230 | 'AI': '🇦🇮', 'AL': '🇦🇱', 'AM': '🇦🇲', 'AO': '🇦🇴', 231 | 'AQ': '🇦🇶', 'AR': '🇦🇷', 'AS': '🇦🇸', 'AT': '🇦🇹', 232 | 'AU': '🇦🇺', 'AW': '🇦🇼', 'AX': '🇦🇽', 'AZ': '🇦🇿', 233 | 'BA': '🇧🇦', 'BB': '🇧🇧', 'BD': '🇧🇩', 'BE': '🇧🇪', 234 | 'BF': '🇧🇫', 'BG': '🇧🇬', 'BH': '🇧🇭', 'BI': '🇧🇮', 235 | 'BJ': '🇧🇯', 'BL': '🇧🇱', 'BM': '🇧🇲', 'BN': '🇧🇳', 236 | 'BO': '🇧🇴', 'BQ': '🇧🇶', 'BR': '🇧🇷', 'BS': '🇧🇸', 237 | 'BT': '🇧🇹', 'BV': '🇧🇻', 'BW': '🇧🇼', 'BY': '🇧🇾', 238 | 'BZ': '🇧🇿', 'CA': '🇨🇦', 'CC': '🇨🇨', 'CD': '🇨🇩', 239 | 'CF': '🇨🇫', 'CG': '🇨🇬', 'CH': '🇨🇭', 'CI': '🇨🇮', 240 | 'CK': '🇨🇰', 'CL': '🇨🇱', 'CM': '🇨🇲', 'CN': '🇨🇳', 241 | 'CO': '🇨🇴', 'CR': '🇨🇷', 'CU': '🇨🇺', 'CV': '🇨🇻', 242 | 'CW': '🇨🇼', 'CX': '🇨🇽', 'CY': '🇨🇾', 'CZ': '🇨🇿', 243 | 'DE': '🇩🇪', 'DJ': '🇩🇯', 'DK': '🇩🇰', 'DM': '🇩🇲', 244 | 'DO': '🇩🇴', 'DZ': '🇩🇿', 'EC': '🇪🇨', 'EE': '🇪🇪', 245 | 'EG': '🇪🇬', 'EH': '🇪🇭', 'ER': '🇪🇷', 'ES': '🇪🇸', 246 | 'ET': '🇪🇹', 'EU': '🇪🇺', 'FI': '🇫🇮', 'FJ': '🇫🇯', 247 | 'FK': '🇫🇰', 'FM': '🇫🇲', 'FO': '🇫🇴', 'FR': '🇫🇷', 248 | 'GA': '🇬🇦', 'GB': '🇬🇧', 'GD': '🇬🇩', 'GE': '🇬🇪', 249 | 'GF': '🇬🇫', 'GG': '🇬🇬', 'GH': '🇬🇭', 'GI': '🇬🇮', 250 | 'GL': '🇬🇱', 'GM': '🇬🇲', 'GN': '🇬🇳', 'GP': '🇬🇵', 251 | 'GQ': '🇬🇶', 'GR': '🇬🇷', 'GS': '🇬🇸', 'GT': '🇬🇹', 252 | 'GU': '🇬🇺', 'GW': '🇬🇼', 'GY': '🇬🇾', 'HK': '🇭🇰', 253 | 'HM': '🇭🇲', 'HN': '🇭🇳', 'HR': '🇭🇷', 'HT': '🇭🇹', 254 | 'HU': '🇭🇺', 'ID': '🇮🇩', 'IE': '🇮🇪', 'IL': '🇮🇱', 255 | 'IM': '🇮🇲', 'IN': '🇮🇳', 'IO': '🇮🇴', 'IQ': '🇮🇶', 256 | 'IR': '🇮🇷', 'IS': '🇮🇸', 'IT': '🇮🇹', 'JE': '🇯🇪', 257 | 'JM': '🇯🇲', 'JO': '🇯🇴', 'JP': '🇯🇵', 'KE': '🇰🇪', 258 | 'KG': '🇰🇬', 'KH': '🇰🇭', 'KI': '🇰🇮', 'KM': '🇰🇲', 259 | 'KN': '🇰🇳', 'KP': '🇰🇵', 'KR': '🇰🇷', 'KW': '🇰🇼', 260 | 'KY': '🇰🇾', 'KZ': '🇰🇿', 'LA': '🇱🇦', 'LB': '🇱🇧', 261 | 'LC': '🇱🇨', 'LI': '🇱🇮', 'LK': '🇱🇰', 'LR': '🇱🇷', 262 | 'LS': '🇱🇸', 'LT': '🇱🇹', 'LU': '🇱🇺', 'LV': '🇱🇻', 263 | 'LY': '🇱🇾', 'MA': '🇲🇦', 'MC': '🇲🇨', 'MD': '🇲🇩', 264 | 'ME': '🇲🇪', 'MF': '🇲🇫', 'MG': '🇲🇬', 'MH': '🇲🇭', 265 | 'MK': '🇲🇰', 'ML': '🇲🇱', 'MM': '🇲🇲', 'MN': '🇲🇳', 266 | 'MO': '🇲🇴', 'MP': '🇲🇵', 'MQ': '🇲🇶', 'MR': '🇲🇷', 267 | 'MS': '🇲🇸', 'MT': '🇲🇹', 'MU': '🇲🇺', 'MV': '🇲🇻', 268 | 'MW': '🇲🇼', 'MX': '🇲🇽', 'MY': '🇲🇾', 'MZ': '🇲🇿', 269 | 'NA': '🇳🇦', 'NC': '🇳🇨', 'NE': '🇳🇪', 'NF': '🇳🇫', 270 | 'NG': '🇳🇬', 'NI': '🇳🇮', 'NL': '🇳🇱', 'NO': '🇳🇴', 271 | 'NP': '🇳🇵', 'NR': '🇳🇷', 'NU': '🇳🇺', 'NZ': '🇳🇿', 272 | 'OM': '🇴🇲', 'PA': '🇵🇦', 'PE': '🇵🇪', 'PF': '🇵🇫', 273 | 'PG': '🇵🇬', 'PH': '🇵🇭', 'PK': '🇵🇰', 'PL': '🇵🇱', 274 | 'PM': '🇵🇲', 'PN': '🇵🇳', 'PR': '🇵🇷', 'PS': '🇵🇸', 275 | 'PT': '🇵🇹', 'PW': '🇵🇼', 'PY': '🇵🇾', 'QA': '🇶🇦', 276 | 'RE': '🇷🇪', 'RO': '🇷🇴', 'RS': '🇷🇸', 'RU': '🇷🇺', 277 | 'RW': '🇷🇼', 'SA': '🇸🇦', 'SB': '🇸🇧', 'SC': '🇸🇨', 278 | 'SD': '🇸🇩', 'SE': '🇸🇪', 'SG': '🇸🇬', 'SH': '🇸🇭', 279 | 'SI': '🇸🇮', 'SJ': '🇸🇯', 'SK': '🇸🇰', 'SL': '🇸🇱', 280 | 'SM': '🇸🇲', 'SN': '🇸🇳', 'SO': '🇸🇴', 'SR': '🇸🇷', 281 | 'SS': '🇸🇸', 'ST': '🇸🇹', 'SV': '🇸🇻', 'SX': '🇸🇽', 282 | 'SY': '🇸🇾', 'SZ': '🇸🇿', 'TC': '🇹🇨', 'TD': '🇹🇩', 283 | 'TF': '🇹🇫', 'TG': '🇹🇬', 'TH': '🇹🇭', 'TJ': '🇹🇯', 284 | 'TK': '🇹🇰', 'TL': '🇹🇱', 'TM': '🇹🇲', 'TN': '🇹🇳', 285 | 'TO': '🇹🇴', 'TR': '🇹🇷', 'TT': '🇹🇹', 'TV': '🇹🇻', 286 | 'TW': '🇹🇼', 'TZ': '🇹🇿', 'UA': '🇺🇦', 'UG': '🇺🇬', 287 | 'UM': '🇺🇲', 'US': '🇺🇸', 'UY': '🇺🇾', 'UZ': '🇺🇿', 288 | 'VA': '🇻🇦', 'VC': '🇻🇨', 'VE': '🇻🇪', 'VG': '🇻🇬', 289 | 'VI': '🇻🇮', 'VN': '🇻🇳', 'VU': '🇻🇺', 'WF': '🇼🇫', 290 | 'WS': '🇼🇸', 'XK': '🇽🇰', 'YE': '🇾🇪', 'YT': '🇾🇹', 291 | 'ZA': '🇿🇦', 'ZM': '🇿🇲', 'ZW': '🇿🇼', 292 | 'RELAY': '🏁', 293 | 'NOWHERE': '🇦🇶', 294 | } 295 | 296 | server = proxy['server'] 297 | if server.replace('.','').isdigit(): 298 | ip = server 299 | else: 300 | try: 301 | ip = socket.gethostbyname(server) # https://cloud.tencent.com/developer/article/1569841 302 | except Exception: 303 | ip = server 304 | 305 | with geoip2.database.Reader('./utils/Country.mmdb') as ip_reader: 306 | try: 307 | response = ip_reader.country(ip) 308 | country_code = response.country.iso_code 309 | except Exception: 310 | ip = '0.0.0.0' 311 | country_code = 'NOWHERE' 312 | 313 | if country_code == 'CLOUDFLARE': 314 | country_code = 'RELAY' 315 | elif country_code == 'PRIVATE': 316 | country_code = 'RELAY' 317 | 318 | if country_code in emoji: 319 | name_emoji = emoji[country_code] 320 | else: 321 | name_emoji = emoji['NOWHERE'] 322 | 323 | proxy_index = proxies_list.index(proxy) 324 | if len(proxies_list) >= 999: 325 | proxy['name'] = f'{name_emoji}{country_code}-{ip}-{proxy_index:0>4d}' 326 | elif len(proxies_list) <= 999 and len(proxies_list) > 99: 327 | proxy['name'] = f'{name_emoji}{country_code}-{ip}-{proxy_index:0>3d}' 328 | elif len(proxies_list) <= 99: 329 | proxy['name'] = f'{name_emoji}{country_code}-{ip}-{proxy_index:0>2d}' 330 | 331 | if proxy['server'] != '127.0.0.1': 332 | proxy_str = str(proxy) 333 | url_list.append(proxy_str) 334 | elif format_name_enabled == False: 335 | if proxy['server'] != '127.0.0.1': # 防止加入无用节点 336 | proxy_str = str(proxy) 337 | url_list.append(proxy_str) 338 | 339 | yaml_content_dic = {'proxies': url_list} 340 | yaml_content_raw = yaml.dump(yaml_content_dic, default_flow_style=False, sort_keys=False, allow_unicode=True, width=750, indent=2) # yaml.dump 显示中文方法 https://blog.csdn.net/weixin_41548578/article/details/90651464 yaml.dump 各种参数 https://blog.csdn.net/swinfans/article/details/88770119 341 | yaml_content = convert.format(yaml_content_raw,output=True) 342 | 343 | return yaml_content # 输出 YAML 格式文本 344 | 345 | def yaml_encode(url_content,output=True): # 将 URL 内容转换为 YAML 文本, output 为 False 时输出节点配置字典 346 | url_list = [] 347 | 348 | lines = re.split(r'\n+', url_content) 349 | 350 | for line in lines: 351 | yaml_url = {} 352 | if 'vmess://' in line: 353 | try: 354 | vmess_json_config = json.loads(convert.base64_decode(line.replace('vmess://', ''))) 355 | vmess_default_config = { 356 | 'v': 'Vmess Node', 'ps': 'Vmess Node', 'add': '0.0.0.0', 'port': 0, 'id': '', 357 | 'aid': 0, 'scy': 'auto', 'net': '', 'type': '', 'host': vmess_json_config['add'], 'path': '/', 'tls': '' 358 | } 359 | vmess_default_config.update(vmess_json_config) 360 | vmess_config = vmess_default_config 361 | 362 | yaml_url = {} 363 | #yaml_config_str = ['name', 'server', 'port', 'type', 'uuid', 'alterId', 'cipher', 'tls', 'skip-cert-verify', 'network', 'ws-path', 'ws-headers'] 364 | #vmess_config_str = ['ps', 'add', 'port', 'id', 'aid', 'scy', 'tls', 'net', 'host', 'path'] 365 | # 生成 yaml 节点字典 366 | if vmess_config['id'] == '' or vmess_config['id'] is None: 367 | print('节点格式错误') 368 | else: 369 | yaml_url.setdefault('name', urllib.parse.unquote(str(vmess_config['ps']))) 370 | yaml_url.setdefault('server', vmess_config['add']) 371 | yaml_url.setdefault('port', int(vmess_config['port'])) 372 | yaml_url.setdefault('type', 'vmess') 373 | yaml_url.setdefault('uuid', vmess_config['id']) 374 | yaml_url.setdefault('alterId', int(vmess_config['aid'])) 375 | yaml_url.setdefault('cipher', vmess_config['scy']) 376 | yaml_url.setdefault('skip-cert-verify', True) 377 | if vmess_config['net'] == '' or vmess_config['net'] is False or vmess_config['net'] is None: 378 | yaml_url.setdefault('network', 'tcp') 379 | else: 380 | yaml_url.setdefault('network', vmess_config['net']) 381 | if vmess_config['path'] == '' or vmess_config['path'] is False or vmess_config['path'] is None: 382 | yaml_url.setdefault('ws-path', '/') 383 | else: 384 | yaml_url.setdefault('ws-path', vmess_config['path']) 385 | if vmess_config['net'] == 'h2' or vmess_config['net'] == 'grpc': 386 | yaml_url.setdefault('tls', True) 387 | elif vmess_config['tls'] == '' or vmess_config['tls'] is False or vmess_config['tls'] is None: 388 | yaml_url.setdefault('tls', False) 389 | else: 390 | yaml_url.setdefault('tls', True) 391 | if vmess_config['host'] == '': 392 | yaml_url.setdefault('ws-headers', {'Host': vmess_config['add']}) 393 | else: 394 | yaml_url.setdefault('ws-headers', {'Host': vmess_config['host']}) 395 | 396 | url_list.append(yaml_url) 397 | except Exception as err: 398 | print(f'yaml_encode 解析 vmess 节点发生错误: {err}') 399 | pass 400 | 401 | if 'ss://' in line and 'vless://' not in line and 'vmess://' not in line: 402 | if '#' not in line: 403 | line = line + '#SS%20Node' 404 | try: 405 | ss_content = line.replace('ss://', '') 406 | part_list = ss_content.split('#', 1) # https://www.runoob.com/python/att-string-split.html 407 | yaml_url.setdefault('name', urllib.parse.unquote(part_list[1])) 408 | if '@' in part_list[0]: 409 | mix_part = part_list[0].split('@', 1) 410 | method_part = convert.base64_decode(mix_part[0]) 411 | server_part = f'{method_part}@{mix_part[1]}' 412 | else: 413 | server_part = convert.base64_decode(part_list[0]) 414 | 415 | server_part_list = server_part.split(':', 1) # 使用多个分隔符 https://blog.csdn.net/shidamowang/article/details/80254476 https://zhuanlan.zhihu.com/p/92287240 416 | method_part = server_part_list[0] 417 | server_part_list = server_part_list[1].rsplit('@', 1) 418 | password_part = server_part_list[0] 419 | server_part_list = server_part_list[1].split(':', 1) 420 | 421 | yaml_url.setdefault('server', server_part_list[0]) 422 | yaml_url.setdefault('port', server_part_list[1]) 423 | yaml_url.setdefault('type', 'ss') 424 | yaml_url.setdefault('cipher', method_part) 425 | yaml_url.setdefault('password', password_part) 426 | 427 | url_list.append(yaml_url) 428 | except Exception as err: 429 | print(f'yaml_encode 解析 ss 节点发生错误: {err}') 430 | pass 431 | 432 | if 'ssr://' in line: 433 | try: 434 | ssr_content = convert.base64_decode(line.replace('ssr://', '')) 435 | 436 | parts = re.split(':', ssr_content) 437 | if len(parts) != 6: 438 | print('SSR 格式错误: %s' % ssr_content) 439 | password_and_params = parts[5] 440 | password_and_params = re.split('/\?', password_and_params) 441 | password_encode_str = password_and_params[0] 442 | params = password_and_params[1] 443 | 444 | param_parts = re.split('\&', params) 445 | param_dic = {} 446 | for part in param_parts: 447 | key_and_value = re.split('\=', part) 448 | param_dic[key_and_value[0]] = key_and_value[1] 449 | yaml_url.setdefault('name', convert.base64_decode(param_dic['remarks'])) 450 | yaml_url.setdefault('server', parts[0]) 451 | yaml_url.setdefault('port', parts[1]) 452 | yaml_url.setdefault('type', 'ssr') 453 | yaml_url.setdefault('cipher', parts[3]) 454 | yaml_url.setdefault('password', convert.base64_decode(password_encode_str)) 455 | yaml_url.setdefault('obfs', parts[4]) 456 | yaml_url.setdefault('protocol', parts[2]) 457 | yaml_url.setdefault('obfsparam', convert.base64_decode(param_dic['obfsparam'])) 458 | yaml_url.setdefault('protoparam', convert.base64_decode(param_dic['protoparam'])) 459 | yaml_url.setdefault('group', convert.base64_decode(param_dic['group'])) 460 | 461 | url_list.append(yaml_url) 462 | except Exception as err: 463 | print(f'yaml_encode 解析 ssr 节点发生错误: {err}') 464 | pass 465 | 466 | if 'trojan://' in line: 467 | try: 468 | url_content = line.replace('trojan://', '') 469 | part_list = re.split('#', url_content, maxsplit=1) # https://www.runoob.com/python/att-string-split.html 470 | yaml_url.setdefault('name', urllib.parse.unquote(part_list[1])) 471 | 472 | server_part = part_list[0].replace('trojan://', '') 473 | server_part_list = re.split(':|@|\?|&', server_part) # 使用多个分隔符 https://blog.csdn.net/shidamowang/article/details/80254476 https://zhuanlan.zhihu.com/p/92287240 474 | yaml_url.setdefault('server', server_part_list[1]) 475 | yaml_url.setdefault('port', server_part_list[2]) 476 | yaml_url.setdefault('type', 'trojan') 477 | yaml_url.setdefault('password', server_part_list[0]) 478 | server_part_list = server_part_list[3:] 479 | 480 | for config in server_part_list: 481 | if 'sni=' in config: 482 | yaml_url.setdefault('sni', config[4:]) 483 | elif 'allowInsecure=' in config or 'tls=' in config: 484 | if config[-1] == 0: 485 | yaml_url.setdefault('tls', False) 486 | elif 'type=' in config: 487 | if config[5:] != 'tcp': 488 | yaml_url.setdefault('network', config[5:]) 489 | elif 'path=' in config: 490 | yaml_url.setdefault('ws-path', config[5:]) 491 | elif 'security=' in config: 492 | if config[9:] != 'tls': 493 | yaml_url.setdefault('tls', False) 494 | 495 | yaml_url.setdefault('skip-cert-verify', True) 496 | 497 | url_list.append(yaml_url) 498 | except Exception as err: 499 | print(f'yaml_encode 解析 trojan 节点发生错误: {err}') 500 | pass 501 | 502 | yaml_content_dic = {'proxies': url_list} 503 | if output: 504 | yaml_content = yaml.dump(yaml_content_dic, default_flow_style=False, sort_keys=False, allow_unicode=True, width=750, indent=2) 505 | else: 506 | yaml_content = yaml_content_dic 507 | return yaml_content 508 | def base64_encode(url_content): # 将 URL 内容转换为 Base64 509 | base64_content = base64.b64encode(url_content.encode('utf-8')).decode('ascii') 510 | return base64_content 511 | 512 | def yaml_decode(url_content): # YAML 文本转换为 URL 链接内容 513 | try: 514 | if isinstance(url_content, dict): 515 | sub_content = url_content 516 | else: 517 | sub_content = convert.format(url_content) 518 | proxies_list = sub_content['proxies'] 519 | 520 | protocol_url = [] 521 | for index in range(len(proxies_list)): # 不同节点订阅链接内容 https://github.com/hoochanlon/fq-book/blob/master/docs/append/srvurl.md 522 | proxy = proxies_list[index] 523 | 524 | if proxy['type'] == 'vmess': # Vmess 节点提取, 由 Vmess 所有参数 dump JSON 后 base64 encode 得来。 525 | 526 | yaml_default_config = { 527 | 'name': 'Vmess Node', 'server': '0.0.0.0', 'port': 0, 'uuid': '', 'alterId': 0, 528 | 'cipher': 'auto', 'network': 'ws', 'ws-headers': {'Host': proxy['server']}, 529 | 'ws-path': '/', 'tls': '', 'sni': '' 530 | } 531 | 532 | yaml_default_config.update(proxy) 533 | proxy_config = yaml_default_config 534 | 535 | vmess_value = { 536 | 'v': 2, 'ps': proxy_config['name'], 'add': proxy_config['server'], 537 | 'port': proxy_config['port'], 'id': proxy_config['uuid'], 'aid': proxy_config['alterId'], 538 | 'scy': proxy_config['cipher'], 'net': proxy_config['network'], 'type': None, 'host': proxy_config['ws-headers']['Host'], 539 | 'path': proxy_config['ws-path'], 'tls': proxy_config['tls'], 'sni': proxy_config['sni'] 540 | } 541 | 542 | vmess_raw_proxy = json.dumps(vmess_value, sort_keys=False, indent=2, ensure_ascii=False) 543 | vmess_proxy = str('vmess://' + convert.base64_encode(vmess_raw_proxy) + '\n') 544 | protocol_url.append(vmess_proxy) 545 | 546 | elif proxy['type'] == 'ss': # SS 节点提取, 由 ss_base64_decoded 部分(参数: 'cipher', 'password', 'server', 'port') Base64 编码后 加 # 加注释(URL_encode) 547 | ss_base64_decoded = str(proxy['cipher']) + ':' + str(proxy['password']) + '@' + str(proxy['server']) + ':' + str(proxy['port']) 548 | ss_base64 = convert.base64_encode(ss_base64_decoded) 549 | ss_proxy = str('ss://' + ss_base64 + '#' + str(urllib.parse.quote(proxy['name'])) + '\n') 550 | protocol_url.append(ss_proxy) 551 | 552 | elif proxy['type'] == 'trojan': # Trojan 节点提取, 由 trojan_proxy 中参数再加上 # 加注释(URL_encode) # trojan Go https://p4gefau1t.github.io/trojan-go/developer/url/ 553 | if 'tls' in proxy.keys() and 'network' in proxy.keys(): 554 | if proxy['tls'] == True and proxy['network'] != 'tcp': 555 | network_type = proxy['network'] 556 | trojan_go = f'?security=tls&type={network_type}&headerType=none' 557 | elif proxy['tls'] == False and proxy['network'] != 'tcp': 558 | trojan_go = f'??allowInsecure=0&type={network_type}&headerType=none' 559 | else: 560 | trojan_go = '?allowInsecure=1' 561 | if 'sni' in proxy.keys(): 562 | trojan_go = trojan_go+'&sni='+proxy['sni'] 563 | trojan_proxy = str('trojan://' + str(proxy['password']) + '@' + str(proxy['server']) + ':' + str(proxy['port']) + trojan_go + '#' + str(urllib.parse.quote(proxy['name'])) + '\n') 564 | protocol_url.append(trojan_proxy) 565 | 566 | elif proxy['type'] == 'ssr': # ssr 节点提取, 由 ssr_base64_decoded 中所有参数总体 base64 encode 567 | remarks = convert.base64_encode(proxy['name']).replace('+', '-') 568 | server = proxy['server'] 569 | port = str(proxy['port']) 570 | password = convert.base64_encode(proxy['password']) 571 | cipher = proxy['cipher'] 572 | protocol = proxy['protocol'] 573 | obfs = proxy['obfs'] 574 | for key in {'group', 'obfsparam', 'protoparam'}: 575 | if key in proxy: 576 | if key == 'group': 577 | group = convert.base64_encode(proxy[key]) 578 | elif key == 'obfsparam': 579 | obfsparam = convert.base64_encode(proxy[key]) 580 | elif key == 'protoparam': 581 | protoparam = convert.base64_encode(proxy[key]) 582 | else: 583 | if key == 'group': 584 | group = 'U1NSUHJvdmlkZXI' 585 | elif key == 'obfsparam': 586 | obfsparam = '' 587 | elif key == 'protoparam': 588 | protoparam = '' 589 | 590 | ssr_proxy = 'ssr://'+convert.base64_encode(server+':'+port+':'+protocol+':'+cipher+':'+obfs+':'+password+'/?group='+group+'&remarks='+remarks+'&obfsparam='+obfsparam+'&protoparam='+protoparam+'\n') 591 | protocol_url.append(ssr_proxy) 592 | 593 | yaml_content = ''.join(protocol_url) 594 | return yaml_content 595 | except Exception as err: 596 | print(f'yaml decode 发生 {err} 错误') 597 | return '订阅内容解析错误' 598 | 599 | def base64_decode(url_content): # Base64 转换为 URL 链接内容 600 | if '-' in url_content: 601 | url_content = url_content.replace('-', '+') 602 | if '_' in url_content: 603 | url_content = url_content.replace('_', '/') 604 | #print(len(url_content)) 605 | missing_padding = len(url_content) % 4 606 | if missing_padding != 0: 607 | url_content += '='*(4 - missing_padding) # 不是4的倍数后加= https://www.cnblogs.com/wswang/p/7717997.html 608 | try: 609 | base64_content = base64.b64decode(url_content.encode('utf-8')).decode('utf-8','ignore') # https://www.codenong.com/42339876/ 610 | base64_content_format = base64_content 611 | return base64_content_format 612 | except UnicodeDecodeError: 613 | base64_content = base64.b64decode(url_content) 614 | base64_content_format = base64_content 615 | return str(base64_content) 616 | 617 | def convert_remote(url='', output_type='clash', host='http://127.0.0.1:25500'): #{url='订阅链接', output_type={'clash': 输出 Clash 配置, 'base64': 输出 Base64 配置, 'url': 输出 url 配置}, host='远程订阅转化服务地址'} 618 | # 使用远程订阅转换服务,输出相应配置。 619 | sever_host = host 620 | url = urllib.parse.quote(url, safe='') # https://docs.python.org/zh-cn/3/library/urllib.parse.html 621 | if output_type == 'clash': 622 | converted_url = sever_host+'/sub?target=clash&url='+url+'&insert=false&emoji=true&list=true' 623 | try: 624 | resp = requests.get(converted_url) 625 | except Exception as err: 626 | print(err) 627 | return 'Url 解析错误' 628 | if resp.text == 'No nodes were found!': 629 | sub_content = 'Url 解析错误' 630 | else: 631 | sub_content = convert.makeup(convert.format(resp.text), dup_rm_enabled=False, format_name_enabled=True) 632 | elif output_type == 'base64': 633 | converted_url = sever_host+'/sub?target=mixed&url='+url+'&insert=false&emoji=true&list=true' 634 | try: 635 | resp = requests.get(converted_url) 636 | except Exception as err: 637 | print(err) 638 | return 'Url 解析错误' 639 | if resp.text == 'No nodes were found!': 640 | sub_content = 'Url 解析错误' 641 | else: 642 | sub_content = convert.base64_encode(resp.text) 643 | elif output_type == 'url': 644 | converted_url = sever_host+'/sub?target=mixed&url='+url+'&insert=false&emoji=true&list=true' 645 | try: 646 | resp = requests.get(converted_url) 647 | except Exception as err: 648 | print(err) 649 | return 'Url 解析错误' 650 | if resp.text == 'No nodes were found!': 651 | sub_content = 'Url 解析错误' 652 | else: 653 | sub_content = resp.text 654 | 655 | return sub_content 656 | -------------------------------------------------------------------------------- /utils/sub_merge.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | 3 | from sub_convert import convert 4 | from sub_update import update 5 | 6 | import re, json, os 7 | from io import BytesIO 8 | from urllib import request 9 | 10 | list_path = './list.json' 11 | merge_path = './merge' 12 | export_path = './merge/list' 13 | 14 | 15 | class merge(): 16 | 17 | def geoip_update(url): 18 | print('Downloading Country.mmdb...') 19 | try: 20 | request.urlretrieve(url, './utils/Country.mmdb') 21 | print('Success!\n') 22 | except Exception: 23 | print('Failed!\n') 24 | pass 25 | 26 | # 将转换后的所有 Url 链接内容合并转换 YAML or Base64, ,并输出文件,输入订阅列表。 27 | def main(url_list): 28 | content_list = [] 29 | 30 | for index in range(len(url_list)): 31 | content = convert.convert_remote(url_list[index]['url'], 'url', 'http://127.0.0.1:25500') 32 | ids = url_list[index]['id'] 33 | remark = url_list[index]['remark'] 34 | if content == 'Url 解析错误': 35 | content = convert.main(merge.read_as_list(list_path)[index]['url'],'url','url') 36 | if content != 'Url 解析错误': 37 | content_list.append(content) 38 | print(f'Writing content of {remark} to {ids:0>2d}.txt\n') 39 | else: 40 | print(f'Writing error of {remark} to {ids:0>2d}.txt because of Url 解析错误\n') 41 | elif content == 'Url 订阅内容无法解析': 42 | print(f'Writing error of {remark} to {ids:0>2d}.txt because of Url 订阅内容无法解析\n') 43 | elif content != None: 44 | content_list.append(content) 45 | print(f'Writing content of {remark} to {ids:0>2d}.txt\n') 46 | else: 47 | print(f'Writing error of {remark} to {ids:0>2d}.txt because of Url 订阅内容无法解析\n') 48 | print('Merging nodes...\n') 49 | content_raw = ''.join(content_list) # https://python3-cookbook.readthedocs.io/zh_CN/latest/c02/p14_combine_and_concatenate_strings.html 50 | content_clash = convert.main(content_raw,'content','YAML',{'dup_rm_enabled': False, 'format_name_enabled': True}) 51 | content_base64 = convert.base64_encode(content_raw) 52 | content = content_raw 53 | 54 | def content_write(file, output_type): 55 | file = open(file, 'w+', encoding = 'utf-8') 56 | file.write(output_type) 57 | file.close 58 | 59 | write_list = [f'{merge_path}/merge.txt', f'{merge_path}/merge_base64.txt', f'{merge_path}/merge_clash.yaml'] 60 | content_type = (content, content_base64, content_clash) 61 | for index in range(len(write_list)): 62 | content_write(write_list[index], content_type[index]) 63 | 64 | content_write(f'./v2ray', content_base64) # 根目录订阅文件写入 65 | content_write(f'./clash.yaml', content_clash) 66 | print('Done!\n') 67 | 68 | # 将 list.json Url 内容读取为列表 69 | def read_as_list(file_path, remote = False): 70 | with open(file_path, 'r', encoding='utf-8') as f: 71 | raw_list = json.load(f) 72 | input_list = [] 73 | for index in range(len(raw_list)): 74 | if raw_list[index]['enabled']: 75 | if remote == False: 76 | urls = re.split('\|', raw_list[index]['url']) 77 | else: 78 | urls = raw_list[index]['url'] 79 | raw_list[index]['url'] = urls 80 | input_list.append(raw_list[index]) 81 | return input_list 82 | 83 | 84 | if __name__ == '__main__': 85 | update.main() 86 | merge.geoip_update('https://raw.githubusercontent.com/Loyalsoldier/geoip/release/Country.mmdb') 87 | 88 | list = merge.read_as_list(list_path) 89 | list_remote = merge.read_as_list(list_path, True) 90 | merge.main(list_remote) -------------------------------------------------------------------------------- /utils/sub_update.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | 3 | from datetime import timedelta, datetime 4 | import json, re 5 | import requests 6 | from requests.adapters import HTTPAdapter 7 | 8 | # 文件路径定义 9 | list_path = './list.json' 10 | 11 | with open(list_path, 'r', encoding='utf-8') as f: # 载入订阅链接 12 | raw_list = json.load(f) 13 | f.close() 14 | 15 | def url_updated(url): # 判断远程远程链接是否已经更新 16 | s = requests.Session() 17 | s.mount('http://', HTTPAdapter(max_retries=2)) 18 | s.mount('https://', HTTPAdapter(max_retries=2)) 19 | try: 20 | resp = s.get(url, timeout=2) 21 | status = resp.status_code 22 | except Exception: 23 | status = 404 24 | if status == 200: 25 | url_updated = True 26 | else: 27 | url_updated = False 28 | return url_updated 29 | 30 | class update(): 31 | 32 | def main(): 33 | for item in raw_list: 34 | id = item['id'] 35 | current_url = item['url'] 36 | try: 37 | if item['update']: 38 | print(f'Finding available update for ID{id}') 39 | new_url = update.change_date(id,current_url,item['update']) 40 | if new_url != current_url: 41 | item['url'] = new_url 42 | except KeyError: 43 | print(f'{current_url} not changed! Please define update method.') 44 | 45 | updated_list = json.dumps(raw_list, sort_keys=False, indent=2, ensure_ascii=False) 46 | file = open(list_path, 'w', encoding='utf-8') 47 | file.write(updated_list) 48 | file.close() 49 | 50 | # 更新 url '/' 后的日期,比如 https://xxxx.com/master/YYYY/mm/YYYYmmdd.txt 中的 YYYY/mm/YYYYmmdd 51 | def change_date(id,current_url,format): 52 | 53 | date_list = [] # [YYYY, mm, YYYYmmdd] 54 | length = len(format.split('/')) 55 | for fmat in format.split('/'): 56 | date_list.append(datetime.today().strftime('%'+fmat.replace('-','%'))) 57 | format_date = '/'.join(date_list) # YYYY/mm/YYYYmmdd 58 | # url_front = current_url[0:current_url.rfind('/', 1) + 1] 59 | url_end = current_url.split('/')[-1].split('.')[-1] 60 | url_list = current_url.split('/') 61 | for i in range(0, length): 62 | url_list.pop() 63 | 64 | new_url = '/'.join(url_list) + '/' + format_date + '.' + url_end 65 | print(f'check url update: {new_url}\n') 66 | if url_updated(new_url): 67 | print(f'{current_url} updated to {new_url}\n') 68 | return new_url 69 | else: 70 | print(f'No available update for {current_url}\n') 71 | return current_url --------------------------------------------------------------------------------