eternal-flame-ad/brook — explained in plain English
Analysis updated 2026-07-18 · repo last pushed 2018-12-12
Set up the server on a cloud machine and connect from your phone to access websites as if from home while traveling.
Route your app's traffic through the client to test how it behaves from a different country's IP address.
Configure tproxy mode on a home router to send all household traffic through the proxy without installing software on each device.
Use Brook as a SOCKS5 or HTTP proxy to relay traffic between two points.
| eternal-flame-ad/brook | aasheeshlikepanner/vase | alexzielenski/controller-runtime | |
|---|---|---|---|
| Stars | — | 0 | — |
| Language | Go | Go | Go |
| Last pushed | 2018-12-12 | — | 2022-04-20 |
| Maintenance | Dormant | — | Dormant |
| Setup difficulty | moderate | moderate | hard |
| Complexity | 3/5 | 4/5 | 4/5 |
| Audience | ops devops | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Requires a server in a remote location such as a cloud VM, plus installing the client on your device and configuring the connection with a password.
Brook is a tool that lets you route your internet traffic through a server elsewhere, so your connection appears to come from a different location and is harder for anyone on your network to monitor or block. It runs on practically every major platform, Linux, macOS, Windows, Android, and iOS, and comes in both a command-line version and a graphical app for desktop and mobile. The project's stated goal is to stay simple and to be difficult to detect. At its core, it follows a client-and-server model. You run the server component on a machine in whatever location you want your traffic to originate from, and you run the client on your own device. The client connects to the server with a password, and your internet traffic flows through that encrypted connection. Beyond this basic setup, it can also act as a VPN that proxies all TCP and UDP traffic, create a tunnel that forwards a local port to a remote one through the server, relay traffic between two points, and function as a SOCKS5 or HTTP proxy. It is also compatible with Shadowsocks, another popular proxy protocol. The people who would use this are anyone who needs to control where their traffic exits the internet. A traveler in a region that restricts certain websites could set up the server on a cloud machine back home and connect through it from their phone. A developer who needs to test how an app behaves from a different country's IP address could use the client to route just that traffic. On the more technical side, it supports a "tproxy" mode that runs as a transparent proxy, which is useful for someone configuring a home router to send all household traffic through the proxy without installing anything on individual devices. One notable thing about the project is its design philosophy of being "not detectable." Where a standard VPN might be easy for a network operator to identify and block, this tool aims to make its traffic look like ordinary internet activity. The Shadowsocks compatibility uses a fixed encryption method (aes-256-cfb), which keeps the configuration straightforward but means you can't customize that aspect. The README doesn't go into detail on the specific detection-evasion techniques, pointing instead to a separate wiki for deeper tutorials.
Brook routes your internet traffic through a server in another location so your connection is harder to monitor or block. It runs on all major platforms as a command-line tool or graphical app and aims to be simple and difficult to detect.
Mainly Go. The stack also includes Go, Shadowsocks, aes-256-cfb.
Dormant — no commits in 2+ years (last push 2018-12-12).
The README does not include license information, so the usage rights are unknown.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly ops devops.
This repo across BitVibe Labs
Verify against the repo before relying on details.