Collects ยท Filters ยท Deduplicates ยท Deep-Checks ยท Ranks ยท Publishes Fully automated. No ads. No login. No BS.
๐ Quick Start ยท ๐ Live Snapshot ยท ๐ Quality Tiers ยท ๐ All Subscriptions ยท โ๏ธ How It Works ยท ๐ฐ๏ธ Vantage Philosophy ยท ๐ฑ Clients
FastNodes is a fully automated, multi-vantage V2Ray/Xray proxy aggregator. Every hour, it fetches configs from 627 sources โ public GitHub repositories, Telegram channels, and standalone websites. It doesn't just list them; it runs them through a gauntlet of filters, deduplicates them by full config identity, and performs deep liveness checks using Xray-core, Cloudflare Workers, and Azure TLS probes.
The result? Fresh, ranked, working proxies delivered to your client without hunting through Telegram channels or sketchy websites.
Numbers from the latest full run (updated hourly โ typical values, not guarantees):
627 sources โโโบ 1,880,000 raw lines โโโบ 245,000 unique configs
โ
โโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโ
โ Dead-node & alias filters โ
โ (NXDOMAIN ยท TCP-RST ยท bogon) โ
โโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโ
โผ
196,500 alive nodes
โ
โโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโ
โผ โผ โผ
54,500 TLS-verified 550 Xray-verified 65 Edge-verified
(Azure handshake) (full roundtrip) (CF 2nd vantage)
โ โ
โโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโ
โผ
1,000 top.txt finalists
(composite score 104โ158)
vless โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ 148,000 (75.4%)
trojan โโโโโ 19,000 ( 9.7%)
vmess โโโโ 13,800 ( 7.0%)
ss โโโ 10,600 ( 5.4%)
hysteria2 โ 3,800 ( 1.9%)
wireguard โ 40 ( 0.0%)
ssr/tuic/socks/anytls/hysteria/socks5 460 ( 0.2%)
Europe โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ 77,500 (39.5%)
North America โโโโโโโโโโโโโโโโโ 32,000 (16.3%)
Asia โโโโโโโโโโโโ 25,800 (13.1%)
Africa โโ 2,960 ( 1.5%)
Oceania โ 908 ( 0.5%)
South America โ 686 ( 0.3%)
Antarctica โ 1 ( 0.0%)
| Metric | Value |
|---|---|
| Total runtime | ~21 minutes (of a 50-minute budget) |
| Raw lines parsed per run | ~1.88 million |
| Nodes dropped as provably dead | ~47,000 (NXDOMAIN + TCP-RST + bogons) |
| Sources healthy / dead | ~621 / 6 |
| History tracked (cross-run) | ~198,000 nodes |
| Nodes marked stable (3+ runs) | ~194,000 |
The fastest way to get working proxies. Just copy a link and paste it into your client (Hiddify, v2rayNG, NekoBox, etc.):
| What | Link |
|---|---|
| ๐ Top 1000 Ranked | https://raw.githubusercontent.com/rtwo2/FastNodes/main/sub/top.txt |
| ๐ฐ๏ธ Xray Verified | https://raw.githubusercontent.com/rtwo2/FastNodes/main/sub/verified.txt |
| ๐ Everything | https://raw.githubusercontent.com/rtwo2/FastNodes/main/sub/everything.txt |
| ๐ฎ๐ท Iran nodes | https://raw.githubusercontent.com/rtwo2/FastNodes/main/sub/countries/IR.txt |
| ๐ WireGuard (NekoBox) | https://raw.githubusercontent.com/rtwo2/FastNodes/main/sub/protocols/wireguard.txt |
Iran users: Start with
sub/top.txtfor the absolute best ranked nodes, orsub/countries/IR.txtfor domestic servers. FastNodes drops only provably dead nodes โ a timeout from GitHub's datacenter is kept, because it says nothing about whether the node works from your ISP.
FastNodes doesn't just dump ~196,000 nodes on you. It ranks them based on a composite score of multi-vantage signals:
| File | Typical size | What it is |
|---|---|---|
sub/top.txt |
1,000 | The precision file. Top nodes by composite score (see scoring). Gate: at least one affirmative current signal. |
sub/verified.txt |
~550 | The strongest life signal. Nodes that proxied a real HTTP generate_204 request end-to-end through xray-core this run. |
sub/verified_tls.txt |
~54,000 | Nodes that completed a TLS handshake with their real SNI from a clean vantage point. |
sub/curated.txt |
~60,000 | Nodes from explicitly Iran-tested sources, PLUS nodes that are both stable and TLS-verified. |
sub/stable.txt |
~194,000 | Nodes that have survived 3+ consecutive hourly runs without being dropped. |
sub/everything.txt |
~196,000 | The full, uncapped list of all surviving nodes. Never split. |
sub/protocols/wireguard.txt |
~40 | WireGuard nodes as Clash YAML โ strictly validated, NekoBox imports this directly. |
sub/wireguard/*.conf |
~40 files | Individual sanitized .conf files โ WireGuard app imports these directly. |
All output is plain raw URI lists (.txt) โ one config per line, works in every V2Ray/Xray client.
everything.txt and the quality tiers are never split. Every other category (protocols, countries, continents) caps at 1000 lines per file. The first 1000 always stay in xx.txt โ that link never changes โ and everything beyond that spills into xx_part2.txt, xx_part3.txt, etc.
sub/protocols/vless.txt โ first 1000
sub/protocols/vless_part2.txt โ next 1000
Nodes are classified by their resolved IP family (hostname nodes are included based on their DNS lookup).
| URL |
|---|
https://raw.githubusercontent.com/rtwo2/FastNodes/main/sub/ipv4_only.txt |
https://raw.githubusercontent.com/rtwo2/FastNodes/main/sub/ipv6_only.txt |
Base path: https://raw.githubusercontent.com/rtwo2/FastNodes/main/sub/protocols/
Recognized protocols: vmess, vless, trojan, ss, ssr, hysteria, hysteria2 (+ hy2 alias), tuic, wireguard, socks, socks5. Each gets its own file if at least one alive node uses it:
| Protocol | Nodes | File |
|---|---|---|
| ๐ต VLESS | ~148K | vless.txt |
| ๐ฃ Trojan | ~19K | trojan.txt |
| ๐ VMess | ~14K | vmess.txt |
| โซ Shadowsocks | ~11K | ss.txt |
| โก Hysteria2 | ~4K | hysteria2.txt |
| ๐ WireGuard | ~40 | wireguard.txt โ Clash YAML for NekoBox |
WireGuard users: The
wireguard.txtfile is a Clash YAML config (NekoBox imports it directly). Individual.conffiles for the official WireGuard app are in thesub/wireguard/directory.
Base paths:
https://raw.githubusercontent.com/rtwo2/FastNodes/main/sub/continents/https://raw.githubusercontent.com/rtwo2/FastNodes/main/sub/countries/
Popular countries:
| Country | Nodes | File | |
|---|---|---|---|
| ๐ฎ๐ท | Iran | ~6.8K | IR.txt |
| ๐ฉ๐ช | Germany | ~18K | DE.txt |
| ๐บ๐ธ | United States | ~30K | US.txt |
| ๐ณ๐ฑ | Netherlands | ~6.5K | NL.txt |
| ๐ซ๐ท | France | ~6.8K | FR.txt |
| ๐ธ๐ฌ | Singapore | ~3.4K | SG.txt |
Around 80 countries are typically available. Just swap the country code in the URL pattern.
Every output file is a plain 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 |
| NekoBox / NB4A+ | Android | Profile โ New โ paste .txt link |
| NekoBox (WireGuard) | Android | Profile โ New โ paste wireguard.txt link โ imports Clash YAML |
| 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 |
| WireGuard app | Android / iOS / Windows | Import .conf files from sub/wireguard/ directory |
Raw URI lists work everywhere and load faster. For WireGuard, a Clash YAML config is provided specifically for NekoBox compatibility.
FastNodes runs a 5-stage pipeline every hour, with multiple fail-soft verification layers. Every stage is designed to never kill the pipeline if a third-party service crashes.
627 Sources (GitHub ยท Telegram ยท web, fetched in parallel)
โ ~1.88M raw lines โ 245K unique configs
๐งน Step 1: Decode & Smart Dedup (full config identity + alias collapse)
โ
๐ Step 2: GeoIP Lookup (107K unique hosts โ City ยท Org ยท Country, DNS cached)
โ
๐ Step 3: Dead-Node Filters (~47K dropped: NXDOMAIN ยท TCP-RST ยท bad IPs)
(Timeouts NEVER drop a node; circuit breakers protect against mass-drops)
โ
๐ Step 4: Multi-Vantage Promotion (Fail-Soft)
โโ TLS Verification โ 54.5K promoted (Azure clean-vantage handshake)
โโ ๐ฐ๏ธ Xray Deep Check โ 550 promoted (real HTTP roundtrip via xray-core,
โ 3000 candidates, ~4min of an 8min budget)
โโ ๐ Edge Verification โ 65 promoted (Cloudflare Worker 2nd vantage;
โ CF-fronted hosts skipped โ unprovable by platform design)
โโ ๐ Stability Tracking (198K nodes in state/history.json)
โ
๐พ Step 5: Composite Scoring & Publish (196K nodes across ~590 files)
A proxy that is "dead" from a US Azure datacenter might be perfectly alive from an Iranian ISP. This is the vantage problem. FastNodes solves it by converting vantage bias into a ranking score, rather than using it as a drop filter.
The Composite Score (used for top.txt, max 173):
| Signal | Points | What it proves |
|---|---|---|
| Iran-tested source | +30 | Delegated validation: a maintainer tested this node from inside Iran |
| Xray roundtrip | +25 | A real HTTP request was proxied through this node, end-to-end |
| Xray streak | up to +15 | Roundtrip-verified N runs in a row (decays, never resets hard) |
| TLS verified | +20 | Completed a TLS handshake with the node's real SNI |
| TLS streak | up to +10 | TLS-verified N runs in a row |
| CF Edge verified | +10 | Alive from a second vantage class (Cloudflare edge) |
| Presence streak | up to +20 | Survived N consecutive hourly runs of all drop filters |
| Proximity | up to +18 | Iran-first ordering: IR โ neighbors โ Europe โ Asia โ rest |
| Multi-source | up to +10 | Published by 2+ independent sources (ecosystem consensus) |
No single signal can carry a node to the top. Convergence across vantage classes is what the score rewards.
| Azure TLS probe | ๐ฐ๏ธ Xray deep check | ๐ CF Edge Worker | |
|---|---|---|---|
| Depth | TLS handshake only | Full proxy roundtrip (real traffic) | TCP + TLS handshake |
| Vantage | Azure datacenter | Azure datacenter | Cloudflare edge (~300 cities) |
| Node limit | ~82K endpoints | top 3000 candidates | 2000 endpoints |
| Pass rate | ~40% | ~20% | ~3% (strict by design) |
| Drops on fail? | Never | Never | Never |
Why is the Edge pass rate so low? Workers on Cloudflare's free tier cannot connect to Cloudflare IPs โ so the ~45% of free nodes that are CF-fronted are unprovable by construction from this vantage. FastNodes skips them entirely and spends the Edge budget only on nodes it can actually judge. A pass therefore means: alive from Azure and alive from Cloudflare โ a genuinely elite signal.
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 + transport + security + SNI
+ path + REALITY pbk/sid + flow + obfs-password
If a server hosts multiple VLESS configurations (common with Xray setups), all of them are kept. On top of the identity key, an alias-collapse pass re-keys every node on its resolved IP and merges spelling-variants โ vless://uuid@1.2.3.4:443 and vless://uuid@server.com:443 ship as one node, keeping the hostname form (which survives IP rotation).
Each remark is geo info + server address. When multiple nodes share the same server, each gets a port suffix so you can tell the inbounds apart:
๐ฉ๐ช Frankfurt, DE ยท Hetzner | example.com โ only node on this server
๐ฉ๐ช Frankfurt, DE ยท Hetzner | example.com :8443 โ 2nd node, port 8443
๐ฉ๐ช Frankfurt, DE ยท Hetzner | example.com :8443ยทvless โ same port, different protocol
The suffix is stable across runs โ the input list is sorted (host โ port โ protocol) before naming, so the same server:port always gets the same suffix.
FastNodes/
โโโ .github/workflows/collect.yml # Hourly run, Xray setup, drives everything
โโโ ProxyCollector/
โ โโโ Collector/ProxyCollector.cs # Core engine โ fetchโparseโverifyโrank
โ โโโ Configuration/CollectorConfig.cs# Source list loading & normalization
โ โโโ Services/IPToCountryResolver.cs# GeoIP + bounded DNS, shared cache
โ โโโ Models/ # CityInfo, CountryInfo
โโโ state/
โ โโโ history.json # Hashed cross-run streak tracking (~198K nodes)
โโโ sub/
โโโ everything.txt # All surviving nodes โ never split
โโโ top.txt # Top 1000 by composite score (104โ158)
โโโ verified.txt # Full Xray roundtrip successes (this run)
โโโ verified_tls.txt # Azure clean-vantage TLS successes
โโโ curated.txt # Iran-tested or stable+TLS-verified
โโโ stable.txt # 3+ consecutive hourly runs
โโโ ipv4_only.txt / ipv6_only.txt # By resolved IP family
โโโ protocols/ # Per-protocol .txt, chunked at 1000
โ โโโ vless.txt # โ first 1000 vless nodes
โ โโโ vless_part2.txt # โ overflow
โ โโโ wireguard.txt # โ Clash YAML config (NekoBox-importable!)
โ โโโ ...
โโโ wireguard/ # Individual .conf files (WireGuard app)
โ โโโ 001 ๐ฉ๐ช Frankfurt Hetzner example.com 8443.conf
โ โโโ ...
โโโ countries/ # Per-country .txt, same chunking
โโโ continents/ # Per-continent .txt, same chunking
Filtered on affirmative death only: NXDOMAIN, TCP-refused, bad resolved-IPs, alias duplicates. A node that merely times out from GitHub is kept โ it may work fine from your location.
This project does not:
- Host or operate any proxy servers
- Guarantee any node is online or reachable
- Guarantee any node works in your specific location or ISP
- Collect any user data whatsoever
All configs are sourced from publicly available GitHub repositories, Telegram channels, and public subscription sites. Credit goes to all the original collectors and server operators.
FastNodes aggregates from 627 public sources (GitHub repositories, Telegram channels, and standalone sites). Major contributors include: AvenCores, morpheusadam, MatinGhanbari, barry-far, Epodonios, Surfboardv2ray, 10ium, NiREvil, F0rc3Run, mahdibland, 4n0nymou3, sakha1370, wuqb2i4f, V2RayRoot, sevcator, igareck, youfoundamin, HosseinKoofi, Argh94, Mahdi0024, liketolivefree, AzadNetCH, Leon406, roosterkid, ebrasha, Danialsamadi, LalatinaHub, Farid-Karimi, 0xRadikal, Diversan313, Au1rxx, MustafaBaqer, MahanKenway, SoliSpirit, Delta-Kronecker, and many others.