R-VPN Documentation¶
A Stealth Transport Protocol with Double Ratchet Encryption
R-VPN is a next-generation VPN architecture designed for maximum stealth and security, built entirely in Rust.
Features¶
- π Strong Security: X3DH key exchange + Double Ratchet Algorithm for post-compromise security
- π΅οΈ True Stealth: Indistinguishable from normal HTTPS traffic over WebSocket + TLS 1.3
- β‘ High Performance: Serialized ratchet operations eliminate decryption failures under load
- π Split Tunneling: Built-in China domain bypass + ad blocking + force tunnel rules
- π§ Easy Deployment: Systemd service installers for both client and server
- π± Dual Mode: SOCKS5 proxy mode for routers + TUN mode for full VPN
- π Stable Connection: Connection cleanup and heartbeat detection for stable reconnection
- π DNS Caching: DNS caching with IPv6 filtering options
- π‘οΈ Scanner Protection: Rate limiting and scanner protection
Quick Links¶
- Quick Start - Get up and running in minutes
- Installation - Download and install binaries
- Server Setup - Run as system services on Linux
- Client Configuration - Configure the client
- Server Setup - Set up your own server
- Split Tunneling - Configure routing rules
- Cryptography - Learn about the crypto
Overview¶
R-VPN operates over a single WebSocket connection multiplexed through port 443 with TLS 1.3, featuring a built-in reverse proxy that masks the VPN server behind a legitimate website. The protocol employs a hybrid cryptographic approach combining:
- X3DH (Extended Triple Diffie-Hellman) for initial key agreement
- Double Ratchet Algorithm for post-compromise security
- ChaCha20-Poly1305 for data encryption
Use Cases¶
Router Gateway Deployment (Recommended)¶
Deploy R-VPN client on your router to provide VPN access to your entire network without installing software on individual devices:
Internet ββ R-VPN Server
β
Router/Gateway (R-VPN Client in SOCKS5 mode)
β
[Device1] [Device2] [Device3]
Individual Device Deployment¶
Run R-VPN in TUN mode on individual devices for full VPN tunneling:
Security Features¶
| Feature | Status |
|---|---|
| Forward Secrecy | β X3DH per-session keys |
| Post-Compromise Security | β Double Ratchet ratcheting |
| Traffic Obfuscation | β TLS 1.3 + WebSocket |
| Active Probing Resistance | β Decoy website |
| Traffic Padding | β 1KB boundary padding |
| Connection Stability | β Heartbeat detection & cleanup |
| Scanner Protection | β Rate limiting |
Architecture¶
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β CLIENT MODES β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β SOCKS5 MODE β β
β β ββββββββββββββββ βββββββββββββββ βββββββββββββ β β
β β β :1080 SOCKS5 βββββΊβ Router/ βββββΊβ WebSocket β β β
β β β Listener β β Gateway β β + Double β β β
β β ββββββββββββββββ βββββββββββββββ β Ratchet β β β
β β β² βββββββ¬ββββββ β β
β β β β β β
β β iptables/nftables β TLS 1.3β β
β βββββββββββββββββββββββββββββββββββββββββββββββββΌβββββββββ β
β β β
β βββββββββββββββββββββββββββββββββββββββββββββββββΌβββββββββ β
β β TUN MODE β β β
β β βββββββββββ βββββββββββββββ β β β
β β β TUN βββββΊβ VPN Engine ββββββββββββββββ β β
β β β Device β β (Packet I/O)β β β
β β βββββββββββ βββββββββββββββ β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
Port 443 (WebSocket over TLS 1.3)
β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β SERVER β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β Reverse Proxy / Website β β
β β βββββββββββββββββββββββββββββββββββββββββββββββββββ β β
β β β Normal HTTPS Traffic β Static Website Content β β β
β β β WebSocket Path β VPN Handler β β β
β β βββββββββββββββββββββββββββββββββββββββββββββββββββ β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β β
β βββββββββββββββββββββββββββββΌββββββββββββββββββββββββββββββ β
β β βΌ β β
β β βββββββββββββββ βββββββββββββββ βββββββββββββββ β β
β β β WebSocket βββββΊβ Double βββββΊβ TUN to β β β
β β β Server β β Ratchet β β Internet β β β
β β βββββββββββββββ βββββββββββββββ βββββββββββββββ β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
License¶
R-VPN is licensed under the AGPL-3.0 license.