gfwproxyshadowsocksdocker-imagegogolanggvisornatnetworksocks4socks5tcpip-stacktortun-devicetun2sockstunneludpwireguard
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
xjasonlyu
c28690bfc9
|
4 years ago | |
---|---|---|
.github/workflows | 4 years ago | |
common | 4 years ago | |
component | 4 years ago | |
constant | 4 years ago | |
core | 4 years ago | |
docker | 4 years ago | |
docs | 4 years ago | |
engine | 4 years ago | |
log | 4 years ago | |
proxy | 4 years ago | |
stats | 4 years ago | |
tunnel | 4 years ago | |
.dockerignore | 4 years ago | |
.gitignore | 4 years ago | |
Dockerfile | 4 years ago | |
LICENSE | 4 years ago | |
Makefile | 4 years ago | |
README.md | 4 years ago | |
README_ZH.md | 4 years ago | |
go.mod | 4 years ago | |
go.sum | 4 years ago | |
main.go | 4 years ago |
README.md
English | 简体中文
What is tun2socks?
tun2socks
is an application used to "socksify" TCP/UDP (IPv4 and IPv6) traffic at the network layer. It implements a TUN virtual network interface which accepts all incoming TCP/UDP packets and forwards them through a SOCKS server.
Features
- ICMP echoing / IPv6 support / Socks5 & SS proxy
SO_BINDTODEVICE
&SO_MARK
option support- 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 or 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 the limitation of gVisor, tun2socks only supports x86_64 and ARM64 for now. Other architectures may become available in the future.
Environments
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