English | 简体中文
通过在主机上运行tun2socks
,可以轻松地接管所有的TCP/UDP
流量,同时提供诸多专业的功能特性,这包括:
- 强制使不支持代理的程序走代理
- 配合Clash、V2Ray等工具实现全局代理上网
- 配合Burp、Charles等工具进行应用层数据的调试
- 配合DHCP、CoreDNS等工具部署路由模式代理局域网流量
- 全面支持: IPv4/IPv6/ICMP/TCP/UDP
- 代理协议: HTTP/Socks4/Socks5/Shadowsocks
- 游戏加速: 针对UDP传输的优化
- 纯Go实现: 无需CGO,稳定性提升
- 路由模式: 转发代理局域网内所有流量
- TCP/IP栈: 由 gVisor 强力驱动
- 高性能: >2.5Gbps 的带宽吞吐量
目标 | 最小 | 建议 |
---|---|---|
系统 | Linux MacOS Freebsd OpenBSD Windows | Linux or MacOS |
内存 | >20MB | >128MB |
架构 | ANY | AMD64 or ARM64 |
文档以及使用方式,请看 Github Wiki。
欢迎来讨论区交流提问,Github Discussions。
- 由于采用了纯Go实现,所以这一版本的
tun2socks
在有大量连接时内存消耗通常较多。如果您的需求对内存消耗极为敏感,请继续使用 go-tun2socks 版本。 tun2socks
只应该专注于将网络层的TCP/UDP流量转发给SOCKS服务器,其他的如DNS(DoH)、DHCP等模块功能应该交由第三方应用实现,所以弃用了DNS模块。- 因为是通过用户空间的网络栈接管所有流量并处理转发,在高吞吐时CPU的使用量会剧增,所以CPU的性能直接与可以达到的最大带宽挂钩。
- Dreamacro/clash - A rule-based tunnel in Go
- google/gvisor - Application Kernel for Containers
- wireguard-go - Go Implementation of WireGuard