whatisgithub

What is gost?

go-gost/gost — explained in plain English

Analysis updated 2026-06-24

6,791GoAudience · ops devopsComplexity · 3/5Setup · moderate

In one sentence

A Go-based network tunneling tool that works as a forward proxy, port forwarder, or reverse proxy, supporting chained servers and many protocols to route traffic through firewalls or expose private services to the internet.

Mindmap

mindmap
  root((GOST Tunnel))
    Modes
      Forward proxy
      Port forwarding
      Reverse proxy
    Features
      Server chaining
      TCP and UDP
      DNS proxying
      Load balancing
    Config
      Runtime web API
      Plugin system
      Prometheus metrics
    Install
      Binary download
      Docker
      Build from source
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Expose a home server or local development service to the public internet without opening router ports

USE CASE 2

Chain multiple proxy servers together so traffic hops through several machines before reaching its destination

USE CASE 3

Set up transparent proxying that redirects network traffic without the connecting app knowing

USE CASE 4

Monitor proxy traffic and performance using built-in Prometheus metrics

What is it built with?

GoDockerPrometheus

How does it compare?

go-gost/gostdominikh/go-toolslibp2p/go-libp2p
Stars6,7916,7876,802
LanguageGoGoGo
Setup difficultymoderateeasymoderate
Complexity3/51/54/5
Audienceops devopsdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min
No license information found in the explanation.

So what is it?

GOST, which stands for GO Simple Tunnel, is a network tunneling tool written in the Go programming language. A tunnel in this context is software that takes network traffic from one place and routes it through one or more intermediate servers, often to bypass network restrictions or to expose a private service to the public internet. The README is written in Chinese, but the feature list and project structure are clear enough to describe. The tool supports three main modes of operation. In forward proxy mode, it acts as a proxy server that other programs can route traffic through, and multiple proxy servers can be chained together in sequence. In port forwarding mode, it maps a port on one machine to a port on another, also with optional chaining through multiple hops. In reverse proxy mode, it creates a tunnel that lets a server running on a private network (like a home computer behind a router) be reachable from the public internet without opening router ports manually. Beyond these three core patterns, GOST supports a long list of additional capabilities: handling both TCP and UDP traffic, transparent proxying (routing traffic without the connecting program knowing), DNS resolution and DNS proxying, virtual network interfaces (TUN and TAP devices for VPN-style setups), load balancing across multiple upstream servers, rate limiting, routing rules that decide which traffic to bypass or forward, and an admission control system for filtering connections. Configuration can be changed at runtime through a web API, so you do not need to restart the process to update settings. A plugin system allows extending the tool's behavior. Prometheus monitoring metrics are supported for tracking performance. A desktop GUI application and a web-based UI are available as separate companion projects. Installation options include downloading a prebuilt binary, running an install script, building from source with the Go toolchain, or running via Docker. Documentation and tutorials are on the project website at gost.run.

Copy-paste prompts

Prompt 1
Using gost, show me how to expose a local web server on port 3000 to the internet through a remote VPS.
Prompt 2
How do I chain two GOST proxy servers together so my traffic passes through both before reaching the destination?
Prompt 3
Walk me through setting up GOST as a SOCKS5 proxy server with username and password authentication on Linux.
Prompt 4
How do I use GOST's web API to update routing rules at runtime without restarting the process?
Prompt 5
Show me a Docker Compose setup that runs GOST as a reverse proxy in front of a local service.

Frequently asked questions

What is gost?

A Go-based network tunneling tool that works as a forward proxy, port forwarder, or reverse proxy, supporting chained servers and many protocols to route traffic through firewalls or expose private services to the internet.

What language is gost written in?

Mainly Go. The stack also includes Go, Docker, Prometheus.

What license does gost use?

No license information found in the explanation.

How hard is gost to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is gost for?

Mainly ops devops.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.