Beta · open client

TCP-Native VPN.
Works where > UDP doesn't.

WireGuard is excellent — until your ISP throttles or blocks UDP. Konduit is designed for TCP from the ground up: fully userspace, no root, no kernel modules. It gets out of your way.

X25519Key exchange
ChaCha20-Poly1305Data channel
RustMemory safe
konduit-cli — connect
$ ./konduit-cli connect \
--server vpn.example.com:443 \
--peer-id mydevice --psk ••••••••
 
resolving vpn.example.com ok
tcp handshake X25519 ok
tun device konduit0 up
routes applied by server policy ok
 
connected · no udp, no root, port 443
Cross-platform
Linux Windows Android macOS soon iOS soon
The Problem

Most VPNs treat TCP as a fallback.
Konduit was built for it.

Tunneling UDP into TCP creates head-of-line blocking — the failure mode that makes "TCP mode" miserable on every other VPN. Konduit has no UDP to wrap, so it simply doesn't have that problem.

01

No head-of-line blocking

Nothing is being tunneled through a second transport. One reliable stream, behaving the way TCP is meant to.

02

Reliable on restrictive networks

Corporate firewalls, hotel Wi-Fi, mobile carriers — environments that throttle or drop UDP leave Konduit untouched.

03

WireGuard-level simplicity

The clean mental model you expect from a modern VPN, without the UDP dependency or OpenVPN's configuration sprawl.

 
Konduit
WireGuard
OpenVPN
Works when UDP is blocked
Native
No
TCP wrap
Head-of-line blocking
None
N/A
Yes, in TCP mode
Runs without root
Userspace
Kernel
Elevated
Chains with SOCKS5 proxies
Built in
No
Add-on
Capabilities

Engineered, not retrofitted.

Every layer was chosen for the same goal: a VPN that behaves on hostile networks without asking for privileges it doesn't need.

01

TCP-native protocol

Designed for TCP, not retrofitted. No UDP at any layer of the stack — by design, not by fallback.

02

Server-controlled routing

Administrators enforce routing policy server-side. Clients receive routes — they cannot bypass them.

03

Userspace implementation

No kernel modules, no root. The TUN device runs entirely in userspace on every platform.

04

Hot config reload

Update server configuration without dropping a single connection. Policy changes apply live.

05

QR code provisioning

Scan once, connect instantly. Device onboarding without copying keys by hand.

06

Modern cryptography

X25519 key exchange and a ChaCha20-Poly1305 data channel. Standard, audited primitives — no homegrown crypto.

07

SOCKS5 chaining

Reach your server through your own SOCKS5 proxy, or expose a local SOCKS5 listener after connecting — bring your own tunneling tool if you need one.

08

Memory safe

The entire engine is written in Rust. Whole classes of memory-safety vulnerabilities are gone by construction.

09

Cross-platform core

One Rust engine, bridged to a Flutter UI. Linux ships today; macOS, Android and iOS share the same core.

How it works

A single Rust engine,
bridged to a native UI.

Flutter UI Dart
flutter_rust_bridge FFI
Konduit engine Rust · Tokio
TUN device userspace
TCP tunnel protocol
Key exchange X25519
Route manager
Layer Technology
UI Flutter / Dart
Core engine Rust (Tokio async)
FFI bridge flutter_rust_bridge
Cryptography ring / rustls
TUN device tun crate (userspace)

Keys never touch disk in plaintext. Private keys live in the OS secure enclave on every platform — iOS Keychain, macOS Keychain, Android Keystore.

SOCKS5 Chaining

Bring your own tunnel.

Konduit is a VPN for reaching your own resources — it doesn't try to disguise its traffic or fight active censorship. If you need to get through a hostile network, chain konduit with a tool built for that (SSH SOCKS, Xray, sing-box) over standard SOCKS5, in either direction.

Egress-dial (use_proxy)Reach your konduit server through a SOCKS5 proxy you already trust, instead of dialing it directly.
Listener (listen_socks)Once connected, expose a local SOCKS5 proxy so other apps can route through the tunnel too.
No reinvented wheelsTraffic obfuscation is a moving target best left to tools that specialize in it — konduit stays focused on being a solid TCP-native VPN.
chaining konduit with a SOCKS5 proxy
you ssh -D 1080 jumphost SOCKS5 :1080
konduit use_proxy = socks5://127.0.0.1:1080 dials server via proxy
konduit listen_socks = 127.0.0.1:1080 local SOCKS5, post-tunnel
either direction works standalone, or combine both
Quickstart

Connect in three commands.

1

Download the CLI

Grab konduit-cli from the Releases page — a single static binary.

2

Make it executable

One chmod and you're ready. No installer, no daemon to register.

3

Connect

Point it at your server with a peer ID and pre-shared key. Routes arrive from the server.

bash
# Download konduit-cli from the Releases page, then:
 
$ chmod +x konduit-cli
 
$ ./konduit-cli connect \
--server vpn.example.com:443 \
--peer-id mydevice \
--psk YOUR_PSK
 
✓ connected — konduit0 up
Openness Model

Auditable where it counts.
Private where it must be.

The client library is published for transparency and security review. The server and management UI stay closed.

// published

konduit-platform

The konduit-platform crate is published here for transparency and security audit. It contains the cryptographic primitives, connection statistics, and platform networking layer (TUN device, DNS, routes) — everything an auditor needs to verify what runs on your machine.

Browse konduit-platform

License · PolyForm Noncommercial 1.0.0
// proprietary

Server & GUI

The VPN server, GUI client app, and management UI are proprietary. Source review under NDA is available for enterprise partners.

Access · Enterprise NDA
Get Konduit

Ship it on the networks
that block everything else.

Available now for Linux, Windows, and Android. macOS and iOS are coming soon.

Beta · Linux & Windows binaries on the Releases page · Android on Google Play