ginuerzh 43724a5c40 test: add http2 handler e2e suite and tighten host-mapper + idle-timeout tests
Add tests/e2e/http2_test.go covering the http2 handler/listener/connector/dialer
end-to-end through the canonical gost-as-client pattern (8 subtests: forward,
auth, bypass, probeResist/metadata, h2 stream multiplexing). Include
testdata/http2/{server,server_auth,server_bypass,server_proberesist,client,
client_auth}.yaml. Note that h2/h2c listeners pair with the tunnel handler
and only http2 listener pairs with handler http2 (reads r/w from metadata).

Tighten TestDNSHostMapper by pointing the handler at an unreachable upstream
so unmapped names fail at the exchanger, confirming the host-mapper path was
the sole reason mapped names resolved. Fix http_idle_timeout.py to speak HTTP
through the CONNECT tunnel rather than a raw ping, matching the echo backend.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-27 20:15:31 +08:00
2026-06-26 20:21:42 +08:00
2026-06-26 20:21:42 +08:00
2022-09-22 18:59:56 +08:00
2026-04-26 22:16:06 +08:00
2021-07-06 09:52:51 +08:00
2025-08-04 19:34:54 +08:00
2025-08-03 15:38:57 +08:00

GO Simple Tunnel

A simple security tunnel written in golang

en zh

Features

Overview

Overview

There are three main ways to use GOST as a tunnel.

Proxy

As a proxy service to access the network, multiple protocols can be used in combination to form a forwarding chain for traffic forwarding.

Proxy

Port Forwarding

Mapping the port of one service to the port of another service, you can also use a combination of multiple protocols to form a forwarding chain for traffic forwarding.

Forward

Reverse Proxy

Use tunnel and intranet penetration to expose local services behind NAT or firewall to public network for access.

Reverse Proxy

Installation

Binary files

https://github.com/go-gost/gost/releases

install script

# install latest from [https://github.com/go-gost/gost/releases](https://github.com/go-gost/gost/releases)
bash <(curl -fsSL https://github.com/go-gost/gost/raw/master/install.sh) --install
# select version for install 
bash <(curl -fsSL https://github.com/go-gost/gost/raw/master/install.sh)

From source

git clone https://github.com/go-gost/gost.git
cd gost/cmd/gost
go build

Docker

docker run --rm gogost/gost -V

Tools

GUI

go-gost/gostctl

WebUI

go-gost/gost-ui

Shadowsocks Android

hamid-nazari/ShadowsocksGostPlugin

Support

Wiki: https://gost.run

YouTube: https://www.youtube.com/@gost-tunnel

Telegram: https://t.me/gogost

Google group: https://groups.google.com/d/forum/go-gost

Legacy version: v2.gost.run

S
Description
No description provided
Readme 2.3 MiB
Languages
Go 82.9%
Makefile 9.1%
Shell 6.7%
Dockerfile 1.3%