gost - Go語言實現的安全隧道

最近特別喜欢Go语言编写的网络程序,甚至把服务器程序从nginx换成了Caddy

之前我用Go语言写过一个DNS转发的工具,现在就想找一个通用的、支持各种协议的网络代理程序,于是我就找到了gost

简介

gost是一个由Go语言实现的安全隧道,可实现各种协议的监听和转发,支持TCP、UDP端口转发,支持HTTP、HTTPS、HTTP2、SOCKS5甚至Quic、Kcptun等协议的多级转发。

项目地址:https://github.com/ginuerzh/gost

用法示例

我想让gost监听本地TCP的8080端口,通过kcptun协议发送到1.2.3.4的2333端口,再转发到5.6.7.8的8080端口:

本机运行:
./gost -L=tcp://:8080/5.6.7.8:8081 -F=kcp://1.2.3.4:2333

转发服务器运行:
./gost -L=kcp://:2333

还有另一种常见用法,就是把socks5代理转换成http代理:
gost.exe -L=:8118 -F=socks5://127.0.0.1:1080

更多的高级用法请参阅官方文档。