Skip to content

rtwo2/FastNodes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

838 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation


Update Status Protocol Update Sources License Built With


Collects ยท Filters ยท Scores ยท Categorizes ยท Publishes
Fully automated. No ads. No login. No BS.


๐Ÿš€ Quick Start ยท ๐Ÿ“ All Subscriptions ยท โš™๏ธ How It Works ยท ๐Ÿ“ฑ Clients ยท ๐ŸŒ Countries


โœจ What Is FastNodes?

FastNodes is a fully automated V2Ray/Xray proxy aggregator. Every 6 hours it wakes up, fetches configs from 150+ public GitHub repositories, tears through them with parallel processing, filters out every dead or fake server, scores the survivors by config quality, and publishes clean organized subscriptions โ€” split by protocol, country, and continent.

You get fresh, working proxies in your client without hunting through Telegram channels or sketchy websites. Just copy a link and paste it.


๐Ÿš€ Quick Start

The fastest way to get going:

What Link
Everything (raw URI list) https://raw.githubusercontent.com/rtwo2/FastNodes/main/sub/everything.txt
Europe (Clash YAML) https://raw.githubusercontent.com/rtwo2/FastNodes/main/sub/continents/Europe.yaml
Iran nodes https://raw.githubusercontent.com/rtwo2/FastNodes/main/sub/countries/IR.txt

Iran users: Start with sub/countries/IR.txt for domestic servers, then try sub/continents/Europe.yaml or sub/continents/Asia.yaml for exit nodes. Use a client with built-in latency testing (Hiddify, v2rayNG) to find what works from your ISP.


๐Ÿ“ Subscription Links

๐ŸŒ Everything

The full collection โ€” all alive proxies, sorted best-first by quality score.

Format URL
Raw URI (.txt) โ€” works in all clients https://raw.githubusercontent.com/rtwo2/FastNodes/main/sub/everything.txt

๐Ÿ”ง By Protocol

Each protocol has both a plain .txt (raw URIs, works everywhere) and a .yaml (Clash/Mihomo/FLClash, top 1000 quality-sorted nodes).

Base path: https://raw.githubusercontent.com/rtwo2/FastNodes/main/sub/protocols/

Protocol .txt .yaml
๐Ÿ”ต VLESS vless.txt vless.yaml
๐ŸŸฃ Trojan trojan.txt trojan.yaml
๐ŸŸ  VMess vmess.txt vmess.yaml
โšซ Shadowsocks ss.txt ss.yaml
โšก Hysteria2 hysteria2.txt hysteria2.yaml

๐ŸŒ By Continent

Base path: https://raw.githubusercontent.com/rtwo2/FastNodes/main/sub/continents/

Continent .txt .yaml
๐ŸŒ Europe Europe.txt Europe.yaml
๐ŸŒ Asia Asia.txt Asia.yaml
๐ŸŒŽ North America NorthAmerica.txt NorthAmerica.yaml
๐ŸŒŽ South America SouthAmerica.txt SouthAmerica.yaml
๐ŸŒ Africa Africa.txt Africa.yaml
๐ŸŒ Oceania Oceania.txt Oceania.yaml

๐Ÿณ๏ธ By Country

Base path: https://raw.githubusercontent.com/rtwo2/FastNodes/main/sub/countries/
Pattern: sub/countries/XX.txt and sub/countries/XX.yaml where XX is the ISO 3166-1 alpha-2 code.

Popular countries:

Country .txt .yaml
๐Ÿ‡ฎ๐Ÿ‡ท Iran IR.txt IR.yaml
๐Ÿ‡ฉ๐Ÿ‡ช Germany DE.txt DE.yaml
๐Ÿ‡บ๐Ÿ‡ธ United States US.txt US.yaml
๐Ÿ‡ณ๐Ÿ‡ฑ Netherlands NL.txt NL.yaml
๐Ÿ‡ท๐Ÿ‡บ Russia RU.txt RU.yaml
๐Ÿ‡ซ๐Ÿ‡ท France FR.txt FR.yaml
๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom GB.txt GB.yaml
๐Ÿ‡ธ๐Ÿ‡ฌ Singapore SG.txt SG.yaml
๐Ÿ‡ฏ๐Ÿ‡ต Japan JP.txt JP.yaml
๐Ÿ‡ญ๐Ÿ‡ฐ Hong Kong HK.txt HK.yaml
๐Ÿ‡ฐ๐Ÿ‡ท South Korea KR.txt KR.yaml
๐Ÿ‡ซ๐Ÿ‡ฎ Finland FI.txt FI.yaml
๐Ÿ‡จ๐Ÿ‡ญ Switzerland CH.txt CH.yaml
๐Ÿ‡ฆ๐Ÿ‡น Austria AT.txt AT.yaml
๐Ÿ‡จ๐Ÿ‡ฆ Canada CA.txt CA.yaml

About 80 countries are available. Just swap the country code in the URL pattern.


๐Ÿ“ฑ Compatible Clients

.txt files (raw URI list)

Works in virtually every V2Ray/Xray client:

Client Platform How to import
Hiddify Android / iOS / Desktop / Windows Add Profile โ†’ URL โ†’ paste .txt link
v2rayNG Android Subscription โ†’ Add โ†’ paste .txt link
Exclave Android Add Subscription โ†’ paste link
NekoBox Android Profile โ†’ New โ†’ paste .txt link
Shadowrocket iOS Add โ†’ Type: Subscribe โ†’ paste link
Streisand iOS Add Config โ†’ paste link
v2rayN Windows Subscription Group โ†’ Add โ†’ paste .txt link
Nekoray Windows / Linux Preferences โ†’ Subscription โ†’ paste link

.yaml files (Clash/Mihomo format)

Contains top 1000 quality-scored nodes with AUTO url-test and MANUAL select groups pre-built. Ideal for:

Client Platform
FLClash Android / Desktop
FlClashX macOS
Mihomo Party Windows / macOS / Linux
Clash Verge Rev Windows / macOS / Linux
OpenClash OpenWrt

YAML cap: Each .yaml file contains at most 1000 nodes โ€” the best 1000 by quality score. This keeps file sizes manageable and avoids crashing mobile clients.


โš™๏ธ How It Works

                    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
                    โ”‚         150+ GitHub Sources          โ”‚
                    โ”‚  (fetched in parallel, 30 workers)   โ”‚
                    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                                       โ”‚
                                       โ–ผ
                    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
                    โ”‚     Decode & Extract URI Lines       โ”‚
                    โ”‚  base64 ยท YAML ยท HTML ยท plain text   โ”‚
                    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                                       โ”‚
                                       โ–ผ
                    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
                    โ”‚         Smart Deduplication          โ”‚
                    โ”‚  key = proto+host+port+uuid+         โ”‚
                    โ”‚        transport+security            โ”‚
                    โ”‚  (keeps different UUIDs on same IP)  โ”‚
                    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                                       โ”‚
                                       โ–ผ
                    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
                    โ”‚        CDN & Blacklist Filter        โ”‚
                    โ”‚  โ€ข All 14 Cloudflare CIDR ranges     โ”‚
                    โ”‚  โ€ข FireHOL Level 1 blacklist         โ”‚
                    โ”‚  โ€ข ngrok / workers.dev / etc.        โ”‚
                    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                                       โ”‚
                                       โ–ผ
                    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
                    โ”‚         Quality Scoring              โ”‚
                    โ”‚  location-agnostic ranking by        โ”‚
                    โ”‚  protocol ยท security ยท transport     โ”‚
                    โ”‚  ยท UUID validity ยท port preference   โ”‚
                    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                                       โ”‚
                                       โ–ผ
                    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
                    โ”‚       TCP Alive Check                โ”‚
                    โ”‚  200 parallel workers ยท 3.5s timeout โ”‚
                    โ”‚  filters truly dead servers          โ”‚
                    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                                       โ”‚
                                       โ–ผ
                    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
                    โ”‚  GeoIP Lookup ยท City / Country DB    โ”‚
                    โ”‚  parallel cache warm โ†’ frozen labels โ”‚
                    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                                       โ”‚
                          โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
                          โ–ผ            โ–ผ            โ–ผ
                     protocols/   countries/   continents/
                    vless, ss...  IR, DE, US   Europe, Asia
                         +            +            +
                     .txt + .yaml  .txt + .yaml  .txt + .yaml

๐Ÿ† Quality Scoring

Proxies are ranked by a location-agnostic quality score before sorting. This means the best-configured nodes are always at the top of every file regardless of which GitHub data center runs the check.

Signal Score
Hysteria2 protocol +100
TUIC protocol +90
VLESS protocol +80
Trojan protocol +70
VMess protocol +50
Shadowsocks protocol +40
REALITY security +30
TLS security +20
No security โˆ’10
TLS/REALITY on port 80 โˆ’20
xHTTP transport +12
HTTPUpgrade transport +10
gRPC transport +10
WebSocket / H2 transport +8
SNI configured +10
Valid UUID format +15
TLS port (443, 8443, 2053โ€ฆ) +15
Common HTTP port (80, 8080โ€ฆ) +8

Result: VLESS + REALITY + gRPC configs always appear first. Plain VMess with no TLS appears near the bottom.


๐Ÿ›ก๏ธ What Gets Filtered

Every proxy passes through multiple filter stages before making it into any output file:

CDN / Fake endpoints:

  • All 14 published Cloudflare IPv4 CIDR ranges (ASN 13335) โ€” 104.16.0.0/13, 172.64.0.0/13, 162.158.0.0/15, and 11 more
  • Cloudflare WARP ranges
  • Known DNS resolvers (1.1.1.1, 8.8.8.8, etc.) which always accept TCP but are not proxies
  • Tunneling services: workers.dev, pages.dev, trycloudflare.com, ngrok.io, serveo.net, etc.

Malicious IPs:

  • FireHOL Level 1 blacklist โ€” refreshed every run from iplists.firehol.org

Bogus addresses:

  • 0.0.0.0, 127.0.0.1, localhost

Protocol validation:

  • VMess base64 must be valid JSON with a resolvable add field
  • All other protocols must parse as valid URIs with real hostnames/IPs
  • Port must be 1โ€“65535

TCP liveness:

  • Port must accept a TCP connection within 3.5 seconds from GitHub's runner

๐Ÿง  Smart Deduplication

Most collectors dedup on host:port only, which silently drops configs with different UUIDs on the same server. FastNodes deduplicates on the full config identity:

protocol + host + port + credential(UUID/password) + transport + security

This means if a server hosts multiple VLESS configurations (common with Xray setups), all of them are kept โ€” exactly matching what you'd get subscribing to the source directly.


๐Ÿ“Š Stats (typical run)

Metric Value
Sources fetched 158 repositories
Raw lines processed ~726,000
CDN / blacklist filtered ~123,000
Unique proxies after dedup ~100,000
Alive after TCP check ~52,000
Countries covered ~80
Protocols VLESS, Trojan, VMess, SS, Hysteria2, TUIC
Runtime ~25 minutes
Update frequency Every 6 hours

๐Ÿ”„ Update Schedule

UTC Tehran (IRST)
00:00 03:30
06:00 09:30
12:00 15:30
18:00 21:30

You can also trigger a manual run from the Actions tab.


๐Ÿ“‚ Repository Structure

FastNodes/
โ”œโ”€โ”€ .github/
โ”‚   โ””โ”€โ”€ workflows/
โ”‚       โ””โ”€โ”€ collect.yml              # Runs every 6h, drives everything
โ”œโ”€โ”€ ProxyCollector/
โ”‚   โ”œโ”€โ”€ Collector/
โ”‚   โ”‚   โ””โ”€โ”€ ProxyCollector.cs        # Core engine โ€” fetch, parse, score, output
โ”‚   โ”œโ”€โ”€ Configuration/
โ”‚   โ”‚   โ””โ”€โ”€ CollectorConfig.cs       # Reads source URLs from env vars
โ”‚   โ”œโ”€โ”€ Services/
โ”‚   โ”‚   โ””โ”€โ”€ IPToCountryResolver.cs   # GeoIP lookup (city โ†’ country โ†’ DNS fallback)
โ”‚   โ”œโ”€โ”€ Models/
โ”‚   โ”‚   โ”œโ”€โ”€ CityInfo.cs
โ”‚   โ”‚   โ””โ”€โ”€ CountryInfo.cs
โ”‚   โ”œโ”€โ”€ GeoLite2-City.mmdb           # Auto-downloaded each run (P3TERX mirror)
โ”‚   โ”œโ”€โ”€ GeoLite2-Country.mmdb        # Auto-downloaded each run
โ”‚   โ””โ”€โ”€ blacklist.netset             # FireHOL Level 1 (auto-downloaded each run)
โ””โ”€โ”€ sub/
    โ”œโ”€โ”€ everything.txt               # All alive proxies, quality-sorted (no size cap)
    โ”œโ”€โ”€ protocols/                   # Per-protocol: .txt (all) + .yaml (top 1000)
    โ”‚   โ”œโ”€โ”€ vless.txt / vless.yaml
    โ”‚   โ”œโ”€โ”€ trojan.txt / trojan.yaml
    โ”‚   โ”œโ”€โ”€ vmess.txt / vmess.yaml
    โ”‚   โ”œโ”€โ”€ ss.txt / ss.yaml
    โ”‚   โ””โ”€โ”€ hysteria2.txt / hysteria2.yaml
    โ”œโ”€โ”€ countries/                   # Per-country: .txt (all) + .yaml (top 1000)
    โ”‚   โ”œโ”€โ”€ IR.txt / IR.yaml         # Iran
    โ”‚   โ”œโ”€โ”€ DE.txt / DE.yaml         # Germany
    โ”‚   โ””โ”€โ”€ ... (~80 countries)
    โ””โ”€โ”€ continents/                  # Per-continent: .txt (all) + .yaml (top 1000)
        โ”œโ”€โ”€ Europe.txt / Europe.yaml
        โ”œโ”€โ”€ Asia.txt / Asia.yaml
        โ”œโ”€โ”€ NorthAmerica.txt / NorthAmerica.yaml
        โ”œโ”€โ”€ SouthAmerica.txt / SouthAmerica.yaml
        โ”œโ”€โ”€ Africa.txt / Africa.yaml
        โ””โ”€โ”€ Oceania.txt / Oceania.yaml

โš ๏ธ Honest Notes

About testing from GitHub servers:
The TCP alive check runs from GitHub Actions (Azure, US/EU regions). A node that passes TCP from there might still be blocked inside Iran, and some Iran-friendly nodes may appear dead to the checker. This is a fundamental limitation of any cloud-based collector. The quality score mitigates this by ranking well-configured nodes first โ€” a VLESS+REALITY node with a valid UUID and proper SNI is very likely to actually work, regardless of where it was checked.

This project does not:

  • Host or operate any proxy servers
  • Guarantee any node works in your specific location or ISP
  • Collect any user data whatsoever

All configs are sourced from publicly available GitHub repositories. Credit goes to all the original collectors and server operators.


๐Ÿ™ Sources

FastNodes aggregates from 150+ public repositories. Major contributors include: AvenCores, MatinGhanbari, barry-far, Epodonios, Surfboardv2ray, 10ium, NiREvil, F0rc3Run, soroushmirzaei, wuqb2i4f, V2RayRoot, sevcator, igareck, youfoundamin, HosseinKoofi, Argh94, Mahdi0024, liketolivefree, lagzian, MahsaNetConfigTopic, hamedcode, AzadNetCH, Leon406, roosterkid, ebrasha, Danialsamadi, LalatinaHub, Farid-Karimi, and many others.


If FastNodes helps you, a โญ means a lot

Auto-updated every 6 hours ยท Built with C# .NET 9 ยท Powered by GitHub Actions

About

๐ŸŒธ A magical proxy fairy that collects, cleans, hugs & ranks thousands of free VLESS/Trojan/Hysteria2 nodes every 6 hours~ โœจ No more ugly names, battery-killing VMess, or duplicate chaos โ™ก made for Exclave & friends โ™ก

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages