---
name: "kcptun-server"
section: "1"
platform: "linux"
package: "kcptun"
version: "20210922+ds-1+b18"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/kcptun-server"
---

# kcptun-server(1)

Simple UDP Tunnel Based On KCP

## NAME

kcptun-server - Simple UDP Tunnel Based On KCP

## DESCRIPTION

### NAME:

-

  kcptun - server(with SMUX)

### USAGE:

-

  kcptun-server \[global options\] command \[command options\] \[arguments...\]

### VERSION:

-

  SELFBUILD

### COMMANDS:

- help, h

  Shows a list of commands or help for one command

### GLOBAL OPTIONS:

- **--listen** value, **-l** value

  kcp server listen address (default: ":29900")

- **--target** value, **-t** value

  target server address, or path/to/unix\_socket (default: "127.0.0.1:12948")

- **--key** value

  pre-shared secret between client and server (default: "it's a secrect") \[$KCPTUN\_KEY\]

- **--crypt** value

  aes, aes-128, aes-192, salsa20, blowfish, twofish, cast5, 3des, tea, xtea, xor, sm4, none (default: "aes")

- **--mode** value

  profiles: fast3, fast2, fast, normal, manual (default: "fast")

- **--mtu** value

  set maximum transmission unit for UDP packets (default: 1350)

- **--sndwnd** value

  set send window size(num of packets) (default: 1024)

- **--rcvwnd** value

  set receive window size(num of packets) (default: 1024)

- **--datashard** value, **--ds** value

  set reed-solomon erasure coding - datashard (default: 10)

- **--parityshard** value, **--ps** value

  set reed-solomon erasure coding - parityshard (default: 3)

- **--dscp** value

  set DSCP(6bit) (default: 0)

- **--nocomp**

  disable compression

- **--sockbuf** value

  per-socket buffer in bytes (default: 4194304)

- **--smuxver** value

  specify smux version, available 1,2 (default: 1)

- **--smuxbuf** value

  the overall de-mux buffer in bytes (default: 4194304)

- **--streambuf** value

  per stream receive buffer in bytes, smux v2+ (default: 2097152)

- **--keepalive** value

  seconds between heartbeats (default: 10)

- **--snmplog** value

  collect snmp to file, aware of timeformat in golang, like: ./snmp-20060102.log

- **--snmpperiod** value

  snmp collect period, in seconds (default: 60)

- **--pprof**

  start profiling server on :6060

- **--log** value

  specify a log file to output, default goes to stderr

- **--quiet**

  to suppress the 'stream open/close' messages

- **--tcp**

  to emulate a TCP connection(linux)

- **-c** value

  config from json file, which will override the command from shell

- **--help**, **-h**

  show help

- **--version**, **-v**

  print the version
