What a proxy does
A proxy is an intermediary between your device and a destination site. Your app sends traffic to the proxy, and the proxy forwards it to the destination. The destination sees the proxy’s IP (and sometimes proxy headers), not your direct IP.
Common reasons to use a proxy:
- Testing how a site behaves from another IP or region
- Routing traffic through a controlled gateway
- Privacy (partial) - a proxy can hide your IP, but it does not automatically make you anonymous
Warning: Free/open proxies are untrusted. Assume traffic can be logged or modified.
Proxy types (HTTP vs SOCKS)
HTTP / HTTPS proxies
- Designed for HTTP(S) traffic
- Many tools support
http://orhttps://proxy URLs - May add headers like
ViaorX-Forwarded-For
SOCKS4 / SOCKS5 proxies
- Lower-level “tunnel” proxy (can carry many TCP protocols)
- SOCKS5 can support authentication
- With
socks5h, the proxy does DNS resolution (reduces DNS leaks)
Quick start
Quick start: confirm your IP changes through the proxy
Test a SOCKS5 proxy (no auth)
curl --socks5-hostname proxy.example.com:1080 https://ifconfig.me
Test a SOCKS5 proxy (with auth)
curl --socks5-hostname user:[email protected]:1080 https://ifconfig.me
Test an HTTP proxy
curl -x http://proxy.example.com:8080 https://ifconfig.me
Tip: Prefer
--socks5-hostname (or socks5h) so the proxy does DNS resolution and you avoid DNS leaks.
Troubleshooting
- Timeouts: proxy is dead, overloaded, or blocked from reaching the destination
- Auth failed: username/password is wrong (SOCKS5)
- Works for IP check but fails on sites: target site blocks that proxy IP or rate-limits it