rofl0r / rofl0r/proxychains-ng

random_chain: keep iterating through the list on proxy error

Open
#432 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
10.7k
Forks
1.1k
PR merge metrics
No merged PRs in 30d

Description

hi,

I happen to use high traffic proxies that work intermittently. When the proxy cannot provide me with the requested resource, it returns a 97 error with curl. With proxychains, it says "[proxychains] Random chain "socket error or timeout!" and it does not try to contact anyone else proxy from my list, unlike unresponsive proxies.

I think it would be better if proxychains doesn't stop on an error proxy, but continues selecting other proxy, like when the proxy times out.

What do you think ?

thanks!

Here is the configuration I use:
random_chain
chain_len = 1

tcp_read_time_out 15000
tcp_connect_time_out 8000

[ProxyList]

socks4 ip1 port1
socks4 ip2 port2
socks4 ip3 port3

:~ $ curl -vvvvvv --socks4 x.x.x.x:yyyy ipinfo.io

  • Trying x.x.x.x:yyyy...
  • SOCKS4 communication to ipinfo.io:80
  • SOCKS4 non-blocking resolve of ipinfo.io
  • SOCKS4 connect to IPv4 34.117.59.81 (locally resolved)
  • connection to proxy closed
  • Closing connection 0
    curl: (97) connection to proxy closed

$ proxychains4 -f /etc/proxychains4.conf curl http://ipinfo.io
[proxychains] config file found: /etc/proxychains4.conf
[proxychains] preloading /usr/lib/x86_64-linux-gnu/libproxychains.so.4
[proxychains] DLL init: proxychains-ng 4.16
[proxychains] Random chain ... x.x.x.x:yyyy ... 34.117.59.81:80 <--socket error or timeout!
curl: (7) Couldn't connect to server

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the reported behavior with proxychains4 and the shown random_chain configuration, using proxies that close the connection and proxies that time out. Trace how random_chain handles a socket error, then make completion mean that another proxy is selected instead of stopping; verify that the command proceeds through the proxy list.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
cli, networking
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.