2021-02-05 20:02:29 +08:00
2021-02-05 20:02:29 +08:00
2021-02-07 18:49:55 +08:00
2021-02-07 14:44:56 +08:00
2021-02-08 14:55:09 +08:00
2021-02-07 18:49:55 +08:00
2021-02-06 11:46:35 +08:00
2021-02-07 10:54:29 +08:00
2021-02-07 20:43:55 +08:00
2021-02-06 14:03:55 +08:00
2021-02-05 20:02:29 +08:00
2021-02-05 20:16:54 +08:00
2021-02-08 14:55:09 +08:00
2021-02-08 14:55:09 +08:00

tun2socks

GitHub Workflow Go Version Go Report GitHub License Releases

简体中文

Features

  • ICMP echoing / IPv6 support / Socks5 & SS proxy
  • Optimized UDP transmission for game acceleration
  • Pure Go implementation, no more CGO required
  • Router mode, routing all the traffic in LAN
  • TCP/IP stack powered by gVisor
  • More than 2.5Gbps throughput (10x faster than v1)

Requirements

Target Minimum Recommended
System Linux MacOS Freebsd OpenBSD Windows Linux MacOS
Memory >20MB >128MB
CPU AMD64(x86_64) ARM64 AMD64 with AES-NI & AVX2

Documentation

Documentations and quick start guides can be found at Github Wiki.

Building from source

Due to tun2socks based on gVisor, so only x86_64 and ARM64 was supported for now. Other architectures may become available in the future.

Dependencies

Make sure the following dependencies are installed:

  • Go 1.15+

Building

Build and install the tun2socks binary:

make tun2socks
sudo cp ./bin/tun2socks /usr/local/bin

Build for all architectures:

make all-arch

Credits

Known Issues

Due to the implementation of pure Go, the memory consumption is higher than the previous version. If you are sensitive to it, please go back to v1.

TODO

  • Windows support
  • FreeBSD support
  • OpenBSD support
  • Auto route mode
Languages
Go 95.4%
Makefile 3%
Shell 1.2%
Dockerfile 0.4%