SOCKS5是什么

子凡 2021-03-07 03:12:29
问答

SOCKS是一种网络传输协议,主要用于客户端与外网服务器之间通讯的中间传递。当防火墙后的客户端要访问外部的服务器时,就跟SOCKS代理服务器连接。这个代理服务器控制客户端访问外网的资格,允许的话,就将客户端的请求发往外部的服务器。

SOCKS5 是一个代理协议,它在使用 TCP/IP 协议通讯的前端机器和服务器机器之间扮演一个中介角色,使得内部网中的前端机器变得能够访问 Internet 网中的服务器,或者使通讯更加安全。

SOCKS5 代理协议

SOCKS5 服务器通过将前端发来的请求转发给真正的目标服务器, 模拟了一个前端的行为。在这里,前端和 SOCKS5 之间也是通过 TCP/IP 协议进行通讯,前端将原本要发送给真正服务器的请求发送给 SOCKS5 服务器,然后 SOCKS5 服务器将请求转发给真正的服务器。

SOCKS 工作在比 HTTP 代理更低的层次:SOCKS 使用握手协议来通知代理软件其客户端试图进行的 SOCKS 连接,然后尽可能透明地进行操作,而常规代理可能会解释和重写报头(例如,使用另一种底层协议,例如 FTP;然而,HTTP 代理只是将 HTTP 请求转发到所需的 HTTP 服务器)。虽然 HTTP 代理有不同的使用模式,HTTP CONNECT 方法允许转发 TCP 连接;然而,SOCKS 代理还可以转发 UDP 流量(仅 SOCKS5),而 HTTP 代理不能。HTTP 代理通常更了解 HTTP 协议,执行更高层次的过滤(虽然通常只用于 GET 和 POST 方法,而不用于 CONNECT 方法)。

如果您的机器具有一个合法的 Internet IP 地址, 或者您利用自己机器上的调制解调器拨号上网, 可以自由和 Internet 上任何主机沟通, 那么您通常不必关心 SOCKS5 协议。SOCKS5 协议对于处在内部网络中的机器, 需要透过网络中某些可以联通外部 Internet 的机器访问外部时,有用。SOCKS5 服务器在将通讯请求发送给真正服务器的过程中,对于请求数据包本身不加任何改变。SOCKS5 服务器接收到真正服务器的响应后,也原样转发给前端。因此,SOCKS5 协议是一种代理协议,对于各种基于 TCP/IP 的应用层协议都能够适应,几乎是万能的。它虽然不能理解自己转发的数据的内部结构,但是它能够忠实地转发通讯包,完成协议本来要完成的功能。

与 SOCKS5 协议不同,HTTP 代理是通过 HTTP 协议进行的,HTTP 代理服务器软件了解通讯包的内部结构,在转发过程中还要对通讯进行某种程度的修改和转换。和 HTTP 代理协议不同,SOCKS5 实际上是一个传输层的代理协议。我们可以想象,如果每个具体的应用层协议都要设计对应的代理协议表达办法,一个特定的代理服务器无论如何也支持不过来那么多新出现的协议。因此,可以说 SOCKS5 的出现缓解了各种具体协议需要专门设计代理协议的困难局面。不过,并不是凡是使用基于 TCP/IP 协议的应用协议的软件,都可以无条件地透过 SOCKS5 服务器进行通讯,还要求前端软件本身具有 SOCKS5 的接口,才能利用 SOCKS5 代理服务器。

SOCKS 是一组由 Internal 工程工作小组(IETF)所开发出来的开放软件开放标准,用来处理网络安全的事宜。SOCKS 像一堵墙被夹在 Internal 服务器和客户端之间,对于出入企业网络的资讯提供流量和安全的管理。SOCKS 这个名词并不是一组英文字头的缩写,而是一个和 TCP/IP 的 Socket 端口有关的安全标准,一般防火墙系统通常是象网关(Gateway)一样是作用在 OSI 模型的第七层也就是应用层上,对 TCP/IP 的高级协议,如 Telnet、FTP、HTTP 和 SMTP 加以管制,而 SOCKS 作用在 OSI 模型的第五层也就是会话层上,像一个代理一样对客户端到服务器端或服务器和服务器之间的数据联系提供安全上的服务。

由于 SOCKS 作用在会话层上,因此它是一个提供会话层到会话层间安全服务的方案,不受高层应用程序变更的影响。 Socks 代理只是简单地传递数据包,而不必关心是何种应用协议(比如 FTP、HTTP 和 NNTP 请求),所以 Socks 代理服务器比应用层代理服务器要快。

0个人收藏 收藏

评论交流

泪雪默认头像 请「登录」后参与评论
  1. 加载中..

相关推荐

  • 计算机科学 Computer science

    什么是科学上网

    科学上网是一种绕过网络审查和限制的技术手段,使用户能够自由地访问互联网上的各种信息和服务。通过使用VPN、代理服务器、Tor网络或Shadowsocks等工具,用户可以绕过地理限制、访问被封锁的网站,并保护自己的隐私和安全。
  • Socks 代理 Socks proxy

    HTTP代理和Socks代理有什么区别

    HTTP代理和Socks代理都是常见的代理服务,它们的主要区别在于代理协议的不同。HTTP代理是基于HTTP协议的代理服务,而Socks代理则是基于Socks协议的代理服务。
  • SOCKS5 Proxy

    Socks5和Socks4哪个协议更好

    Socks5协议比Socks4协议更好。Socks5协议不仅支持TCP和UDP协议,还具有更好的安全性和更多的功能。使用Socks5代理可以更好地保护用户的隐私和安全,同时也能够提供更好的网络体验。
  • Socks5 协议

    Socks4和Socks5有什么区别

    Socks5协议相对于Socks4协议具有更多的功能和更高的安全性。Socks5协议提供更多的身份验证方法和加密方式,支持TCP和UDP协议,以及更多的代理功能,这使得它在网络传输中更加安全和灵活。因此,如果用户需要在网络中进行更加安全的代理连接,建议使用Socks5协议。
  • Socks 协议

    Socks4是什么

    Socks4协议和Socks5协议相比,它的性能更加优秀,因为它只需要进行一次握手就可以建立连接,而Socks5协议需要进行两次握手。但是Socks4协议的功能比Socks5协议要弱,例如Socks4协议不支持UDP协议的代理,也不能对连接进行安全验证。
  • Socks Secure Socks 协议

    Socks是什么

    Socks协议是一种非常实用的网络协议,可以为用户提供代理服务,保护个人隐私,减少网络带宽的使用。在使用Socks协议时,需要注意安全问题,例如使用安全的认证方式、避免中间人攻击等,以保护个人隐私和网络安全。