tcptun

CLI

Run, check, generate, import.

Most power lives in JSON; the CLI loads, validates, and generates configs. Start the server first, then the client.

run01

Run a config

Load and validate JSON, then start every inbound.

tcptun --config config.json
check02

Validate only

Validate and compile without listening on ports.

tcptun config check --config config.json
generate03

Generate a pair

Generate matching server / client configs with credentials and REALITY keys.

tcptun config native --server proxy.example.com --port 9443 --server-name example.com --dest example.com:443
uri04

Import URI

Build a client config from native / VLESS / VMess / Trojan URIs.

tcptun uri import --input client.uri --client --output client.json
quic05

Forced QUIC pair

Generate native reality-quic + mux.mode=quic without TCP fallback.

tcptun config native --quic --server proxy.example.com --port 9443
resume06

Resumable Reality auto

After generating a native Reality pair, set mux.resume=true on both ends (v0.2.4+).

# on both server inbound and client outbound mux blocks
"mux": {
  "mode": "group",
  "resume": true,
  "resume_timeout": "15s",
  "resume_buffer_size": 4194304
}

tcptun v0.2.4

Download and run.

Download Linux x64