1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Proxies: HTTP, SOCKS4 & SOCKS5 - What's the difference ?

Discussion in 'Proxies' started by Jonny Quick, Aug 10, 2011.

  1. Jonny Quick

    Jonny Quick BANNED BANNED

    Joined:
    Aug 26, 2010
    Messages:
    231
    Likes Received:
    340
    Okay first I've read this:

    http://en.wikipedia.org/wiki/Proxy_server

    But it makes no sense to me. I've managed to copy the free proxies offered in this section, run them through Charon, delete the bad proxy IPs and try to use those that are "good" with very limited success. I'm trying to teach myself this stuff.

    Noticed that Charon catagorizes proxies as "HTTP", "SOCKS4" and "SOCKS5". I'm writing scripts to use proxies to browse the internet. (No mail, etc...) I read a lot of theoretical stuff and it washes over me like a wave in the ocean. It all seems to mean the same thing (see wiki above).

    In practical terms, what's the difference? If I plug in a SOCKS4 or SOCKS5 proxy into a browser, will it still browse? Is performance better or worse? Slower or faster? More or less reliable? Etc...

    Thanks in advance.
     
    Last edited: Aug 10, 2011
  2. Xyz01

    Xyz01 Regular Member Premium Member

    Joined:
    Aug 8, 2011
    Messages:
    300
    Likes Received:
    126
    Honestly, 99.9% of publicly listed proxies end up being abused and gone within one hour. It's much better to use a service such as HMA which sends you daily proxy lists, or sign up for a random VPN that assigns you random IP Addresses.

    I've found the investment (like a once off $25 or something?) worth it as I don't watch the public proxies die shortly after starting my code (I run my own code that loops over proxy servers to rapidly crawl and check domains).

    Hasn't SOCKS5 been around for ages and pretty much the standard today? I think SOCKS5 has authentication which is why many providers like it (since they provide you with a login/password) and I don't think SOCKS4 supports DNS (I can't remember, long time since I studied how SOCKS4/SOCKS5 work).
     
  3. Jonny Quick

    Jonny Quick BANNED BANNED

    Joined:
    Aug 26, 2010
    Messages:
    231
    Likes Received:
    340
    This is a question that is still unresolved, and I still wonder about it.

    So, BUMP.
     
  4. proxygo

    proxygo Jr. VIP Jr. VIP Premium Member

    Joined:
    Nov 2, 2008
    Messages:
    10,295
    Likes Received:
    8,714
    the difference is

    A SOCKS server is a general purpose proxy server that establishes a TCP connection to another server on behalf of a client, then routes all the traffic back and forth between the client and the server. It works for any kind of network protocol on any port. SOCKS Version 5 adds additional support for security and UDP. The SOCKS server does not interpret the network traffic between client and server in any way, and is often used because clients are behind a firewall and are not permitted to establish TCP connections to servers outside the firewall unless they do it through the SOCKS server. Most web browsers for example can be configured to talk to a web server via a SOCKS server. Because the client must first make a connection to the SOCKS server and tell it the host it wants to connect to, the client must be "SOCKS enabled." On Windows, it is possible to "shim" the TCP stack so that all client software is SOCKS enabled.

    An HTTP proxy is similar, and may be used for the same purpose when clients are behind a firewall and are prevented from making outgoing TCP connections to servers outside the firewall. However, unlike the SOCKS server, an HTTP proxy does understand and interpret the network traffic that passes between the client and downstream server, namely the HTTP protocol. Because of this the HTTP proxy can ONLY be used to handle HTTP traffic, but it can be very smart about how it does it. In particular, it can recognize often repeated requests and cache the replies to improve performance. Many ISPs use HTTP proxies regardless of how the browser is configured because they simply route all traffic on port 80 through the proxy server.