close
SOCKS Overview

SOCKSv5 is an IETF (Internet Engineering Task Force) approved standard (RFC 1928) generic, proxy protocol for TCP/IP-based networking applications. The SOCKS protocol provides a flexible framework for developing secure communications by easily integrating other security technologies.

SOCKS includes two components, the SOCKS server and the SOCKS client. The SOCKS server is implemented at the application layer, while the SOCKS client is implemented between the application and transport layers. The basic purpose of the protocol is to enable hosts on one side of a SOCKS server to gain access to hosts on the other side of a SOCKS Server, without requiring direct IP-reachability.

Place in OSI Layer

What is a SOCKS Proxy Server?

When an application client needs to connect to an application server, the client connects to a SOCKS proxy server. The proxy server connects to the application server on behalf of the client, and relays data between the client and the application server. For the application server, the proxy server is the client.

SOCKS Model

There are two versions of the SOCKS protocol - SOCKSv4 and SOCKSv5, respectively.

The SOCKSv4 protocol performs three functions:

  • makes connection requests
  • sets up proxy circuits
  • relays application data

The SOCKSv5 protocol adds authentication to the above functions.

Control Flow of SOCKS

This figure shows the SOCKSv5 control flow model. The portion within the dashed-line represents SOCKSv4 functionality. Note that SOCKSv5 adds authentication.

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 Bluelove1968 的頭像
    Bluelove1968

    藍色情懷

    Bluelove1968 發表在 痞客邦 留言(0) 人氣()