2024年5月27日发(作者:)
1. SOCKS5
1.1 简介
SOCKS5大家肯定很熟悉,是我们常用的代理协议的一种。它是Socks协议的第五版,
相对于第四版增加了对身份验证,UDP,IPV6的支持。
一般的代理协议(比如Http代理)都是工作在应用层的,功能单一。而Socks代理协
议旨在提供一种通用的代理服务,所以工作在应用层和传输层之间,只是传递传输层网络数
据包(TCP/UDP),对于应用层的协议并不关心。
1.2 SOCKS5中的方法
SOCKS5在使用时是典型的CS模式的。SOCKS5服务可以分成两大功能,身份认证和
代理服务。每个功能又支持不定的多种方法(Method)。
身份认证常用的方法是不需认证(No Authentication Required)和用户名/密码认证
(Username/Password),多数应用软件包括我们监控CU都只支持这两种方法。
代理服务的模式有连接(Connect),绑定(Bind)和UDP穿透(UDP Associate)。OSP
通过代理连接服务器的时候,是用的连接模式。通过代理服务器看码流的时候用的是UDP
穿透模式。本案例只介绍一下UDP穿透模式的过程。
1.3 信令
SOCKS5的信令都是按位解释的。一般的信令表示如下:
+----+----------+----------+
|VER | NMETHODS | METHODS |
+----+----------+----------+
| 1 | 1 | 1 to 255 |
+----+----------+----------+
第一行是信令中该位置表示的含义。第二行是长度。
2. UDP穿透
UDP穿透(UDP Associate)是SOCKS5新加入的功能。
2.1 流程
图表 1 UDP 穿透过程
流程如上图。下面具体讲各个交互信令。
2.2 连接和认证
客户端TCP连接SOCKS5代理服务器的服务端口,并完成认证过程。不详述。
2.3 UDP穿透请求
发布评论