Stop Wasting Money on Dead Proxies! Use mubeng Instead
Your proxy pool is bleeding money. Every hour you spend manually testing proxies, every failed request that blows your scraping operation, every IP ban that kills your automation—it's all preventable. Yet most developers keep throwing cash at proxy providers while running blind, never knowing which IPs are actually alive.
Here's the dirty secret the proxy industry doesn't want you to know: up to 40% of residential proxy IPs are dead on arrival. You pay for 1,000 proxies, you get 600 that work. Maybe. If you're lucky.
What if you could verify every single proxy in seconds? What if IP rotation happened automatically, effortlessly, without writing a single line of custom code? Enter mubeng—the open-source proxy checker and IP rotator that's making expensive proxy management tools obsolete.
Built in Go for insane performance, mubeng handles proxy verification and rotation with a simplicity that feels almost unfair. No complex configurations. No bloated dashboards. Just pure, blazing-fast proxy intelligence. Ready to stop burning money and start automating smart? Let's dive deep.
What is mubeng?
mubeng (pronounced /mo͞oˌbēNG/) is an incredibly fast proxy checker and IP rotator written in Go by Dwi Siswanto. Born from the frustration of managing unreliable proxy pools, mubeng solves two critical problems that plague developers, security researchers, and data engineers: verifying proxy availability and rotating IP addresses seamlessly.
The name itself carries playful Indonesian origins—"mubeng-mubeng nganti mumet" roughly translates to spinning around until dizzy, perfectly capturing what this tool does with your proxy IPs.
What makes mubeng genuinely special isn't just speed (though it's fast). It's the architectural philosophy: zero-configuration productivity. While competitors demand complex setups, API keys, or monthly subscriptions, mubeng operates on a simple principle—point it at your proxy file and tell it what to do.
The project has gained serious traction in the cybersecurity and web scraping communities, with contributors worldwide enhancing its capabilities. Its cross-platform nature (Windows, Linux, macOS, even Raspberry Pi) and Docker support make it deployable anywhere. The Apache 2.0 license means commercial use is completely free.
Why is mubeng trending now? Three forces converged: proxy costs exploded as anti-bot protection intensified, Go's concurrency model proved perfect for high-throughput proxy operations, and the open-source security community demanded transparent, auditable tools over black-box commercial solutions.
Key Features That Destroy the Competition
Let's dissect what makes mubeng a technical powerhouse:
Dual-Core Architecture
mubeng isn't a jack-of-all-trades—it's a master of two. The proxy checker validates your entire proxy pool's health, while the IP rotator acts as an intelligent proxy server that cycles addresses automatically. Most tools do one or the other poorly. mubeng does both exceptionally.
Universal Protocol Support
HTTP, HTTPS, SOCKS4, SOCKS4A, SOCKS5, and critically—Amazon API Gateway. This auto-switch transport means you can mix protocols in a single proxy file without configuration hell. The AWS integration is particularly clever, enabling geographic distribution across multiple regions for enterprise-grade redundancy.
Goroutine-Powered Concurrency
Built on Go's lightweight thread model, mubeng defaults to 50 concurrent goroutines for checks, with customizable limits. This isn't threading—it's true parallelism that scales without the memory bloat of traditional thread pools. Check thousands of proxies in seconds, not minutes.
Intelligent Error Handling
The --rotate-on-error and --remove-on-error flags create self-healing proxy pools. Failed requests automatically trigger rotation or proxy removal. Combine with --max-errors (set to -1 for infinite retries) and you have bulletproof resilience.
Template Engine for Dynamic Proxies
Environment variable substitution ({{USERNAME}}, {{PASSWORD}}) plus pseudo-random helper functions (uint32, uint32n) enable dynamic credential generation. This is essential for Tor stream isolation—each connection gets unique credentials, guaranteeing different exit nodes.
Production-Ready Daemon Mode
Install as a system service on Linux/macOS (journalctl control) or callback-based Windows service. Live-reload with --watch means proxy file changes apply without restart.
Security-Conscious Verbosity
Verbose mode dumps HTTP traffic for debugging, but automatically redacts cookies. Request/response bodies are never displayed, and output files exclude headers when logging—protecting sensitive data by design.
Real-World Use Cases Where mubeng Dominates
1. Large-Scale Web Scraping at Fractional Cost
Scraping operations live and die by proxy reliability. With mubeng, run a pre-flight check on your proxy pool, filter by country code (--only-cc US,GB,DE), and feed only live proxies into your rotation server. One user reported reducing proxy costs by 60% by identifying and removing dead IPs before deployment.
2. Penetration Testing & Red Team Operations
Security professionals use mubeng as an upstream proxy for Burp Suite and OWASP ZAP, rotating source IPs for every request. This evades rate-limiting and IP-based WAF blocks during brute-force testing or reconnaissance. The SSL certificate export (http://mubeng/cert) enables seamless HTTPS interception.
3. Tor-Enhanced Anonymity Research
The uint32 helper function generates unique SOCKS5 credentials for each Tor connection, forcing stream isolation. Researchers studying network anonymity use this to ensure every request exits through a different node—critical for accurate measurements.
4. Multi-Region AWS API Gateway Routing
Enterprise teams route traffic through API Gateway across us-east-1, eu-west-2, ap-southeast-1 simultaneously. mubeng's templating substitutes AWS credentials dynamically, creating geographic redundancy without code changes. Perfect for compliance requirements mandating data residency.
5. Continuous Proxy Health Monitoring
With --watch and --check combined, mubeng becomes a living monitoring system. As proxies die, they're flagged; as new ones are added to the file, they're verified. Integrate with alerting for fully automated proxy pool management.
Step-by-Step Installation & Setup Guide
Method 1: Pre-built Binary (Fastest)
Grab the latest release for your platform:
# Download from releases page, then:
chmod +x mubeng-linux-amd64
sudo mv mubeng-linux-amd64 /usr/local/bin/mubeng
Method 2: Docker (Most Portable)
# Pull official image
docker pull ghcr.io/mubeng/mubeng:latest
# Run with mounted proxy file
docker run -v $(pwd)/proxies.txt:/proxies.txt ghcr.io/mubeng/mubeng:latest -f /proxies.txt --check
Method 3: Go Install (For Go Developers)
# Requires Go 1.18+
go install -v github.com/mubeng/mubeng@latest
Method 4: Build from Source (Contributors)
# Clone repository
git clone https://github.com/mubeng/mubeng
cd mubeng
# Build binary
make build
# Install system-wide
sudo install ./bin/mubeng /usr/local/bin
Environment Setup
Create your proxy file with mixed protocols:
cat > proxies.txt << 'EOF'
http://user:pass@192.168.1.1:8080
https://proxy.example.com:443
socks4://127.0.0.1:4145
socks5://tor:9050
aws://{{AWS_ACCESS_KEY_ID}}:{{AWS_SECRET_ACCESS_KEY}}@us-east-1
EOF
Verify installation:
mubeng --version
mubeng -h # View all options
REAL Code Examples from the Repository
Example 1: Proxy Health Check with Country Filtering
This is the most common starting point—validate your proxy pool and save only working proxies:
# Check proxies, filter for Australia, US, and UK only
# Save results to live.txt with 5-second timeout per proxy
mubeng -f proxies.txt --check --only-cc AU,US,UK --output live.txt -t 5s
What's happening here:
-f proxies.txt— Your proxy pool file--check— Run verification mode (not rotation server)--only-cc AU,US,UK— ISO-3166 alpha-2 country filter; only keep proxies from these regions--output live.txt— Persist working proxies to file-t 5s— Aggressive 5-second timeout; dead proxies fail fast
The output shows [LIVE] [US] [203.0.113.1] http://proxy:8080 format, letting you instantly see geographic distribution and response quality.
Example 2: Custom Output Formatting with Templates
Need structured data for downstream processing? mubeng's fasttemplate integration delivers:
# JSON-like output for each live proxy
mubeng -f proxies.txt --check \
--output-format '{"proxy":"{{proxy}}","country":"{{country}}","duration":"{{duration}}"}'
# CSV format for spreadsheet analysis
mubeng -f proxies.txt --check \
--output-format "{{proxy}},{{country}},{{city}},{{duration}}"
# Human-readable detailed format
mubeng -f proxies.txt --check \
--output-format "[{{country}}] {{proxy}} ({{org}}) - {{duration}}"
Available template variables breakdown:
| Variable | Purpose | When Critical |
|---|---|---|
{{proxy}} |
Full connection string | Direct reuse in other tools |
{{ip}} |
External IP seen by target | Verify IP isn't blacklisted |
{{country}} |
GeoIP country code | Compliance/regional testing |
{{org}} |
ISP/Organization | Detect data center vs residential |
{{duration}} |
Response time | Performance-based proxy ranking |
This templating transforms mubeng from a simple checker into a proxy intelligence pipeline—feed output directly to monitoring systems, databases, or orchestration tools.
Example 3: Production IP Rotation Server
The core mubeng superpower—run as a local proxy server with intelligent rotation:
# Rotate proxy every 10 requests, randomly selected from live pool
mubeng -a localhost:8089 -f live.txt -r 10 -m random
Critical flags explained:
-a localhost:8089— Bind proxy server to local port 8089-f live.txt— Use verified proxy pool (never raw proxies!)-r 10— Rotate IP every 10 requests-m random— Random selection (alternative:sequentfor round-robin)
Advanced resilient configuration:
# Rotate on error, remove dead proxies, retry 3 times, infinite error tolerance
mubeng -a localhost:8089 -f live.txt -r 5 -m random \
--rotate-on-error --remove-on-error --max-retries 3 --max-errors -1
This configuration self-heals: failed requests trigger rotation, exhausted retries remove the proxy permanently, and -1 on max-errors means the server never gives up. Perfect for long-running scraping operations.
Example 4: Tor Stream Isolation with Dynamic Credentials
This advanced pattern guarantees unique Tor exit nodes per connection:
# Set environment variables for template substitution
export USERNAME="FOO"
export PASSWORD="BAR"
# Create proxy file with dynamic random credentials
echo "socks5://{{uint32}}:{{uint32}}@127.0.0.1:9050" > tor-list.txt
# Run continuous check showing unique exit IPs
while :; do mubeng -f tor-list.txt -c 2>/dev/null; done
# Expected output shows different external IPs despite same Tor instance:
# [LIVE] [XX] [23.**.177.2] socks5://2123347975:3094119616@127.0.0.1:9050
# [LIVE] [XX] [199.**.253.156] socks5://1646373938:2740927425@127.0.0.1:9050
The magic: uint32 generates thread-safe pseudo-random 32-bit integers. Tor interprets each unique USER:PASS as a distinct stream isolation request, assigning different circuits. One Tor instance, infinite exit node diversity.
Example 5: AWS API Gateway Multi-Region Deployment
Enterprise-grade geographic distribution:
# Export AWS credentials
export AWS_ACCESS_KEY_ID="AKIAIOSFODNN7EXAMPLE"
export AWS_SECRET_ACCESS_KEY="wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
# Generate multi-region proxy list using brace expansion
echo "aws://{{AWS_ACCESS_KEY_ID}}:{{AWS_SECRET_ACCESS_KEY}}@"{us,eu}"-"{east,west}"-"{1,2} | tr ' ' '\n' > aws-proxies.txt
# Resulting file contains:
# aws://{{AWS_ACCESS_KEY_ID}}:{{AWS_SECRET_ACCESS_KEY}}@us-east-1
# aws://{{AWS_ACCESS_KEY_ID}}:{{AWS_SECRET_ACCESS_KEY}}@us-east-2
# aws://{{AWS_ACCESS_KEY_ID}}:{{AWS_SECRET_ACCESS_KEY}}@us-west-1
# ... etc
# Start rotating proxy server through AWS regions
mubeng -f aws-proxies.txt -a :8080
Note the quoting capability for complex AWS secrets: aws://KEY:"complex/secret+with=special@chars"@region—the custom parser handles this cleanly.
Advanced Usage & Best Practices
Performance Tuning
- Goroutine scaling: Increase
-gbeyond 50 for massive proxy pools, but monitor memory. Go routines are cheap, not free. - Timeout strategy: Use
-t 10sfor reliable proxies,-t 3sfor aggressive filtering. The duration syntax supports300ms,2h45m, even negative values.
Security Hardening
- Always use
--auth USER:PASSon production rotation servers to prevent open proxy abuse - Export SSL cert from
http://mubeng/certand install as trusted CA for HTTPS interception - Never commit proxy files with credentials—use environment templating
Operational Patterns
- Pre-flight check:
mubeng -f raw.txt --check -o live.txtbefore any rotation deployment - Daemon mode:
mubeng -a :8080 -f live.txt -dfor system service integration - Watch mode:
mubeng -a :8080 -f live.txt --watchfor dynamic pool updates without restart
Debugging Techniques
-vverbose mode shows HTTP traffic (cookies redacted, bodies hidden)--syncflag ensures sequential request completion—slower but predictable rotation- Combine
--rotate-on-errorwith--max-errors -1for maximum resilience
Comparison with Alternatives
| Feature | mubeng | ProxyMesh | Bright Data | ScrapingBee |
|---|---|---|---|---|
| Cost | Free (Apache 2.0) | $50-500/month | $500+/month | $49-599/month |
| Self-hosted | ✅ Yes | ❌ No | ❌ No | ❌ No |
| Proxy checking | ✅ Built-in | ❌ Separate | ❌ Separate | ❌ N/A |
| IP rotation | ✅ Unlimited | Limited pool | ✅ Unlimited | ✅ Unlimited |
| Protocol support | HTTP/SOCKS4/5/AWS | HTTP only | HTTP/HTTPS | HTTP only |
| Speed | Native Go | Moderate | Fast | API latency |
| Custom logic | ✅ Full control | ❌ No | Limited | Limited |
| Tor integration | ✅ Stream isolation | ❌ No | ❌ No | ❌ No |
| Burp/ZAP chaining | ✅ Native | ❌ Complex | ❌ No | ❌ No |
The verdict: Commercial services offer convenience but lock you into pricing tiers and limited flexibility. mubeng demands more initial setup but delivers unlimited scale, zero marginal cost, and complete control. For teams already managing proxy infrastructure, mubeng eliminates the middleman entirely.
FAQ
Is mubeng legal to use?
Absolutely. mubeng is a network utility for legitimate proxy management. Like any tool, usage determines legality—always comply with target sites' Terms of Service and applicable laws.
Can mubeng rotate SOCKS proxies?
The rotation server speaks HTTP only, but it can route through SOCKS4/5 proxies using auto-switch transport. Your backend proxies can be SOCKS; your client connects to mubeng via HTTP.
How does mubeng compare to Python proxy rotators?
Go's goroutines demolish Python's GIL-limited threading for I/O-bound proxy operations. Benchmarks show 10-50x throughput improvement on equivalent hardware.
Does mubeng work with Burp Suite Professional?
Yes—configure mubeng as upstream proxy in Project Options > Connections. No extensions needed. Works with Community and Professional editions.
Can I use mubeng in production Docker environments?
The official ghcr.io/mubeng/mubeng:latest image is production-ready. Mount proxy files as volumes, expose port mappings, and use Docker Compose for orchestration.
What happens when all proxies fail?
With --max-errors -1, mubeng retries indefinitely. Without it, the server continues running but requests may fail. Monitor logs and maintain healthy proxy pools.
How do I contribute or report bugs?
The project welcomes contributions—see CONTRIBUTING.md. Report issues via GitHub with verbose output (-v) and reproduction steps.
Conclusion
mubeng is the proxy management tool you wish you'd discovered years ago. It transforms proxy operations from a costly, error-prone headache into a streamlined, automated pipeline. The combination of blazing Go performance, zero-configuration simplicity, and deep protocol flexibility makes it indispensable for serious developers.
Whether you're scraping at scale, penetration testing, or building resilient distributed systems, mubeng delivers enterprise-grade proxy intelligence without the enterprise-grade price tag. The open-source model means it improves constantly, with features driven by real community needs rather than quarterly roadmap meetings.
Stop tolerating dead proxies. Stop paying for tools that should be free. Stop writing custom rotation code that breaks.
Grab mubeng today from https://github.com/mubeng/mubeng, run your first proxy check, and experience what effortless proxy management feels like. Your future self—and your infrastructure budget—will thank you.
Star the repo, join the contributors, and never look back. The proxy game just changed forever.
Found this guide valuable? Share it with your team and star mubeng on GitHub to support open-source proxy tooling.