proxybench
Proxy checker and health monitor CLI — validate and benchmark HTTP, SOCKS5, and Shadowsocks proxies.

Features
- Protocol support: HTTP, HTTPS, SOCKS5, Shadowsocks (ss://)
- Auto-detection: bare
host:port is probed automatically
- Speed benchmarks: latency min/avg/p50/p95/max + loss rate
- Throughput measurement: optional large-file download speed test
- Geo-location: IP → country via embedded local database (no API)
- Output formats: human table, JSON, CSV
- No external runtime dependencies — single static binary
Installation
Download a pre-built binary (recommended)
Download the latest release for your platform from the
Releases page.
| Platform |
File |
| Linux x86-64 |
proxybench_linux_amd64.tar.gz |
| Linux ARM64 |
proxybench_linux_arm64.tar.gz |
| macOS Intel |
proxybench_darwin_amd64.tar.gz |
| macOS Apple Silicon |
proxybench_darwin_arm64.tar.gz |
| Windows x86-64 |
proxybench_windows_amd64.zip |
Linux / macOS one-liner:
curl -sSL https://github.com/drsoft-oss/proxybench/releases/latest/download/proxybench_$(uname -s | tr '[:upper:]' '[:lower:]')_$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/').tar.gz \
| tar -xz proxybench && sudo mv proxybench /usr/local/bin/
Build from source
Requires Go 1.21+:
git clone https://github.com/drsoft-oss/proxybench
cd proxybench
go build -o proxybench .
Usage
Check proxies
# Single proxy
proxybench check http://1.2.3.4:8080
# Multiple proxies
proxybench check socks5://10.0.0.1:1080 http://10.0.0.2:3128
# From a file (one proxy per line)
cat proxies.txt | proxybench check
# JSON output
proxybench check socks5://host:1080 --format json
# CSV output (for spreadsheets / pipelines)
proxybench check socks5://host:1080 --format csv
# Custom test URL and timeout
proxybench check http://host:8080 --test-url http://ifconfig.me --timeout 5
Flags:
| Flag |
Default |
Description |
--format, -f |
table |
Output format: table, json, csv |
--timeout, -t |
10 |
Per-proxy timeout (seconds) |
--test-url |
http://www.google.com |
URL for forward-check requests |
--concurrency, -c |
10 |
Max parallel checks |
--geo |
true |
Show country info |
--db |
auto |
Path to ip2country.csv |
Benchmark proxies
proxybench bench http://1.2.3.4:8080
proxybench bench socks5://10.0.0.1:1080 --samples 10 --format json
# With throughput measurement
proxybench bench http://host:8080 --payload-url http://ipv4.download.thinkbroadband.com/10MB.zip
Flags:
| Flag |
Default |
Description |
--format, -f |
table |
Output format: table, json, csv |
--timeout, -t |
15 |
Per-request timeout (seconds) |
--samples, -n |
5 |
Requests per proxy |
--test-url |
http://www.google.com |
Latency measurement URL |
--payload-url |
(none) |
Large file URL for speed test |
--concurrency, -c |
5 |
Max parallel proxies |
Geo database management
The check command uses a local IP-to-country CSV database for geo lookups.
A minimal seed file is bundled; download the full database with:
proxybench db update
Subcommands:
| Command |
Description |
proxybench db update |
Download latest database from db-ip.com |
proxybench db info |
Show current database path, size, and entry count |
Update flags:
| Flag |
Default |
Description |
--dest, -d |
auto |
Destination path for the database file |
--timeout, -t |
120 |
Download timeout (seconds) |
The database is sourced from db-ip.com (CC BY 4.0, free tier) and updated monthly. No API key required.
Output examples
Table (default)
ADDRESS PROTO ALIVE LAT(ms) COUNTRY ERROR
──────────────────────────────────────────────────────────────────────────────────────────────
http://1.2.3.4:8080 http ✓ 243 US United States
socks5://5.6.7.8:1080 socks5 ✗ 0 dial tcp: connection refused
JSON
[
{
"address": "http://1.2.3.4:8080",
"protocol": "http",
"alive": true,
"latency_ms": 243,
"country": "US United States"
}
]
CSV
address,protocol,alive,latency_ms,country,error
http://1.2.3.4:8080,http,true,243,US United States,
socks5://5.6.7.8:1080,socks5,false,0,,dial tcp: connection refused
Architecture
proxybench/
├── cmd/ # Cobra CLI commands (check, bench, db)
├── internal/
│ ├── checker/ # Liveness checks (HTTP, SOCKS5, Shadowsocks)
│ ├── bench/ # Latency + throughput benchmarks
│ ├── geo/ # IP→country lookup + DB update
│ └── output/ # JSON / CSV / table formatters
├── data/
│ └── ip2country.csv # Bundled seed database
└── main.go
License
MIT
proxybench is brought to you by Anonymous-Proxies.net —
a trusted proxy provider since 2008, delivering premium HTTP, SOCKS5, and residential proxies
to thousands of clients worldwide.
Need reliable proxies? Browse our plans →