Residential proxies
from $0.27/GB
One [ProxyList] line with a rotating port gives each request a new residential IP.
ProxyChains works on
Free ProxyChains list
ProxyChains comes with no proxies. You add each as a line under [ProxyList] in proxychains.conf, and the Free proxy list tab converts the Geonode free proxy list into those lines with one command.
When the chain fails
The program gets 'connection refused' and never falls back to a direct connection.
[ProxyList] comes last, 512 entries max
Every line after [ProxyList] is read as a proxy, so an option placed below it stops proxychains, usually with 'invalid item in proxylist section'. Entries past the 512th are ignored.
Each line starts with socks5, socks4, http or raw (plain forwarding, no handshake). There is no https keyword.
| Name | Works In | Auth | Blocking Resistance | Best For | Where To Get |
|---|---|---|---|---|---|
| socks5 | Any hop, IPv4 or IPv6 targets | USER and PASS fields, or none | Decided by the exit IP | Paid proxies with a login, free SOCKS5 entries | Geonode residential and datacenter SOCKS5 ports, Geonode free list |
| socks4 | Any hop, IPv4 targets only. With proxy_dns, hostnames go as SOCKS4a | None. USER goes out as the user ID, PASS is ignored | Same as socks5 | Free SOCKS4 entries and Tor | Geonode free list, or a local tor service |
| http | Any hop, via CONNECT host:port, which the proxy must allow | Basic, from USER and PASS, or none | Same as socks5 | HTTPS free entries, paid HTTP ports | Geonode residential and datacenter HTTP ports, Geonode free list |
Sites only see the last proxy in the chain. Its IP type decides whether requests get through.
from $0.27/GB
One [ProxyList] line with a rotating port gives each request a new residential IP.
from $1.25/IP
Use it when a server accepts SSH or API sessions only from an allowlisted address.
from $0.14/GB
Billed per GB. Suits hosts you control and targets that don't filter datacenter ranges.
Free
No uptime guarantee, and the operator can read anything you send unencrypted.
Each proxy is one [ProxyList] line: type, IP, port and, for paid proxies, username and password.
Install it with sudo apt install proxychains4.
Copy the sample config to your home folder: mkdir -p ~/.proxychains, then cp /etc/proxychains4.conf ~/.proxychains/proxychains.conf. proxychains4 reads this copy before /etc, and you can edit it without sudo.
Pick a chain mode: strict_chain, the sample default, uses every proxy in order and fails if one is down; dynamic_chain skips dead ones.
round_robin_chain and random_chain use chain_len proxies per connection, in turn or at random.
Leave exactly one mode uncommented. If two are active, the one lower in the file wins, and strict_chain sits below dynamic_chain.
Keep the proxy_dns line uncommented.
Under [ProxyList], replace the stock Tor entry socks4 127.0.0.1 9050 with one proxy per line: socks5 203.0.113.10 1080 or http 203.0.113.20 8080 USER PASS. socks5://USER:PASS@203.0.113.10:1080 also works.
Prefix the command: proxychains4 wget https://example.com/file.tar.gz. -q hides the status lines.
Check detailed instructions on our blog:
Read the blog postRun curl ifconfig.me, then proxychains4 curl ifconfig.me; the second should print the proxy's IP. On a Mac, brew install curl and run the second with $(brew --prefix)/opt/curl/bin/curl.
Check the status lines: config file found names the file in use, and a DLL init: proxychains-ng line means the hook loaded.
Look for one line per connection, like [proxychains] Strict chain ... 203.0.113.10:1080 ... ifconfig.me:80 ... OK.
Run the command without the proxychains4 prefix. Nothing outside that program is affected.
To keep local services direct, uncomment localnet 127.0.0.0/255.0.0.0 and leave remote_dns_subnet at 224, never 127. With proxy_dns on, localnet matches only IP addresses and /etc/hosts names.
Switch configs per command with -f, or per shell session with PROXYCHAINS_CONF_FILE.