Concepts

SOCKS5 vs. HTTP CONNECT

Both protocols open a tunnel to the site you want. They differ in what the proxy sees and what your client supports.


HTTP CONNECT.

An HTTP proxy opens a tunnel when your client sends CONNECT example.com:443. From then on it relays bytes; with HTTPS it never sees the content. Almost every HTTP client supports this out of the box.

gimmeproxy verifies HTTP proxies exactly this way: a CONNECT tunnel, then TLS with certificate validation through it.

SOCKS4 and SOCKS5.

SOCKS is a lower-level protocol: the client asks the proxy to connect to an address and port, and the proxy relays the connection. SOCKS4 takes IPv4 addresses only, so your client resolves names itself. SOCKS5 can pass the host name to the proxy, which then resolves it.

Side by side.

HTTP CONNECTSOCKS5
Client supportBuilt into most HTTP librariesOften needs an extra package
Name resolutionBy the proxyBy the proxy with socks5h://, else locally
TrafficTCP through the tunnelAny TCP connection, not only HTTP

Which to choose.

  • Use protocol=http when your tool speaks HTTP and you want the simplest setup.
  • Use protocol=socks5 for non-HTTP TCP traffic, or when you want the proxy to resolve names.
  • Leave protocol out to draw from the whole pool and read protocol in the answer.
Every protocol is checked the same way.

Whatever the protocol, a proxy is listed only after a real HTTPS request through it succeeded with a valid certificate.

Keep building.

More guides to help you get the most from gimmeproxy.

Get a free proxy