
| 类型 | 隧道 / 代理工具 |
| 语言 | Go |
| 特色 | 多协议 / 多级转发 |
| 开源 | GitHub: go-gost/gost |
GOST(GO Simple Tunnel)是一款用 Go 编写的多功能网络隧道与代理工具,因其极广的协议覆盖与灵活的组合能力,常被称为代理领域的瑞士军刀。它把众多代理与隧道协议、转发模式、加密与混淆能力集成在单个程序中,支持多级级联(代理链)、本地/远程端口转发、内网穿透、负载均衡与故障转移等,既能当作普通的代理服务器,也能搭建复杂的多跳加密隧道。GOST 以协议覆盖广、组合灵活、命令行与配置双驱动著称,深受需要灵活编排网络转发的进阶用户与运维人员欢迎。
真实网络环境中,人们常需要把多种代理/隧道协议拼接起来使用:比如在本地起一个 SOCKS5 入口,经一条加密隧道转发到一台中转机,再由中转机级联到最终的出口节点;或者把某个内网端口通过反向隧道暴露出来。若为每一段都部署不同的专用工具,既繁琐又难以统一维护与排错。GOST 的目标正是用一个工具统一这些需求:通过简洁的服务(-L,定义监听)与转发(-F,定义上游/转发链)语法,把不同协议像积木一样组合成几乎任意的网络拓扑,从而把零散的转发需求收敛到单一程序中。
GOST 的核心抽象是服务(由 listener 监听 + handler 处理组成)与转发链(chain):
例如,可让本地 SOCKS5 入站,经一条 TLS 加密隧道转发到中转服务器上的 GOST,再由其经另一条隧道转发到最终出口,形成端到端的多级加密链路;中间任意一跳都可换用不同传输以适配该段网络。GOST 支持在节点间使用 TLS、mTLS、WebSocket(ws/wss)、KCP、QUIC、HTTP/2、gRPC、SSH 隧道 等多种传输来承载,并可叠加加密与认证,使中间链路兼具机密性与一定的伪装性(如把隧道伪装为 wss 流量)。它也支持转发器(forward)、反向代理与穿透:通过反向隧道把内网服务暴露给远端,实现类似内网穿透的效果。
GOST 的第 3 版进行了较大重构,采用更结构化的配置(YAML/JSON)、引入插件化、热加载与管理 API,并增强了可观测性(指标、日志)与动态配置能力,使其更适合作为可编程的转发基础设施长期运行,而不只是命令行小工具。
GOST 为开源 Go 项目,提供各平台预编译二进制,既有适合脚本化、一行命令即用的命令行用法,也有 v3 的配置文件与管理 API 以支撑复杂、可维护的部署。它常被用于多级中转、级联链路、端口转发、内网穿透、加密中继等场景,社区积累了大量实战教程与配置示例。因其灵活,GOST 常作为连接其他协议(Shadowsocks、Trojan、各类 TLS 隧道)的中间编排与中转层存在。
一个能凸显 GOST 价值的典型用例是中转加速:当直连出口节点的跨境链路质量差时,可在一台线路优质的中转机上运行 GOST,把本地流量先经一条加密隧道送到中转机,再由其转发至出口,从而借中转机更好的国际带宽改善整体体验;同样的思路也可用于把多个出口做成负载均衡或故障转移池。另一类用例是协议适配:用 GOST 在 SOCKS5、HTTP、Shadowsocks 等之间转换,或把不支持某传输的客户端流量包装进 wss/gRPC 隧道,以适配特定网络限制。这些场景共同体现了 GOST 作为胶水与中转层的定位。
GOST 适合需要灵活组合多种协议、搭建多跳隧道或中转链路、做端口转发与内网穿透的进阶用户与运维。其局限在于:功能强大带来较高的学习曲线,命令行/配置的协议与链路组合容易写错且不易排查;它本身是通用隧道工具而非专攻抗审查,深度伪装能力不及 Reality、NaiveProxy 这类专门方案,在严苛封锁下通常需借助其支持的 wss/TLS 传输并配合外部技巧,且单纯 TLS 隧道仍可能被指纹识别。总体而言,GOST 是一把覆盖面极广、以灵活编排见长的网络隧道瑞士军刀,在中转与组合场景中价值突出。对于既要做代理、又要做端口转发与内网穿透,且希望用一个工具统一管理多段链路的运维者来说,GOST 提供了其他单一用途工具难以替代的整合能力;而对只需一个简单代理的普通用户,它的丰富功能反而可能显得过剩。如何在其强大与复杂之间取舍,取决于使用者的实际拓扑需求与运维能力。也正因为它是底层而通用的隧道编排工具,GOST 在安全合规上同样需要使用者自行把关:加密、认证与最小化暴露都应显式配置,默认的简单转发并不自带防护。把它理解为可拼装一切转发拓扑的零件库,而非开箱即用的成品方案,才能真正发挥其价值。

| 类型 | 隧道 / 代理工具 |
| 语言 | Go |
| 特色 | 多协议 / 多级转发 |
| 开源 | GitHub: go-gost/gost |
登录 后参与讨论
暂无讨论,来发表第一条评论吧