Socket Secure (SOCKS) is an Internet protocol that routes network packets between a client and server through a proxy server. SOCKS5 additionally provides authentication so only authorized users may access a server. Practically, a SOCKS server proxies TCP connections to an arbitrary IP address, and provides a means for UDP packets to be forwarded.


SOCKS is a protocol that is intended to act a circuit level proxy for applications.

It is very different from ‘normal’ proxy because they are application proxies. For example, when you use a HTTP proxy you are actually forwarding the HTTP request, and the HTTP proxy server then performs the request on your behalf. An example of this would be asking someone to pass you the salt at the dinner table, who then gets the salt shaker, and passes it to you.

The SOCKS protocol is roughly equivalent to setting up an IP tunnel with a firewall and the protocol requests are then initiated from the firewall.

The client contact the SOCKS proxy server and, by exchanging messages defined by the SOCKS protocol, negotiates a proxy connection. When a connection is established, the client communicates with the SOCKS server using the SOCKS protocol. The external server communicates with the SOCKS server as if it were the actual client.

How it works

SOCKS is client/server. A users’ workstation must have a SOCKS client installed, either in the application (such as putty, Firefox), or deep in the TCP/IP stack where the client software will redirect packets into a SOCKS tunnel.

The SOCKS client will initiate a connection to a SOCKS server. The SOCKS protocol allows for authentication and logging of the connection requests.

Here is the confusing bit:
The SOCKS server then acts as the IP Client for the connection request.
This means that the external server is only aware of the SOCKS Server (the proxy).

Comparison to HTTP proxying

SOCKS operates at a lower level than HTTP proxying: SOCKS uses a handshake protocol to inform the proxy software about the connection that the client is trying to make, and then acts as transparently as possible, whereas a regular proxy may interpret and rewrite headers (say, to employ another underlying protocol, such as FTP; however, an HTTP proxy simply forwards an HTTP request to the desired HTTP server). Though HTTP proxying has a different usage model in mind, the CONNECT method allows for forwarding TCP connections; however, SOCKS proxies can also forward UDP traffic and work in reverse, while HTTP proxies cannot. HTTP proxies are traditionally more aware of the HTTP protocol, performing higher-level filtering (though that usually only applies to GET and POST methods, not the CONNECT method).

Uses of Socks5 Proxy

Uses of Socks5 Proxy Socks5 can be used as a circumvention device, permitting traffic to bypass Internet filter to get into material otherwise blocked, e.g., by governments, jobs, schools, and country-specific web services. Socks5 runs on the handshake process to inform the proxy application in regards to the relationship the customer is attempting to produce.

Advantages of Socks5 Proxy

Advantages of Socks5 Proxy Socks5 Private Proxy Provider , uses only secure connection between the proxy host and client. That means nobody including your internet provider or administrator of local area network can’t see what you're actually sending or receiving. The only solution to keep your IP hidden is by using Socks5.

Disadvantages of Socks5 Proxy

Disadvantages of Socks5 Proxy Socks5 Cheap Proxy , itself does nothing to safeguard important computer data. It only lets you proxy your connections through another connection. Any traffic going between your client and the Socks5 proxy is not secured.

Difference between Socks4 & Socks5 Proxy

Difference between Socks4 & Socks5 Proxy While Socks5 proxy supports UDP and TCP applications, TCP application is only supported by Socks4. Socks5 also supports various authentication mechanisms and domain-name resolution (DNS), which does not go with Socks4.