socks5代理和http代理的浅解

代理分类
一、正向代理(forward proxy)
一般所说的代理就是正向代理,客户端使用正向代理时需要知道代理的IP和端口,并发送服务代理格式的请求。代理解析客户端的请求,获取服务器地址后建立连接,将客户端数据转发给服务器,并将服务器的内容返回给客户端。正向代理作用:
访问本无法访问的服务器B
加速访问服务器B
Cache作用
客户端访问授权
隐藏访问者的行踪
二、反向代理(reverse proxy)
与正向代理相反,反向代理主要是对服务器数据的处理,及向客户端数据的转发。客户端访问反向代理不需要先进行认证连接。反向代理作用:
保护和隐藏原始资源服务器
负载均衡
三、透明代理(transparent proxy)
对于使用者来说,正向和反向代理会对客户端和服务端的请求或响应进行解析认证或修改,而透明代理只进行了数据转发。如客户端使用正向代理需要先发送符合代理协议的请求,通过代理的认证后,代理才会转发数据。而客户端使用透明代理时,只需要把数据发送给代理,不需要做特殊处理。
添加图片注释,不超过 140 字(可选)
socks5代理
正向代理,客户端与代理之间的初始认证交互通过socks5代理协议完成。流程如下:
客户端请求认证;
代理进行认证并返回认证结果;
客户端发送服务器信息;
代理解析信息并连接服务器;
连接成功后回复客户端连接成功;
数据转发。注:当客户端收到连接成功的回复后,会再向服务器发送请求。
http代理
正向代理,客户端与代理之间的初始认证交互通过http代理协议完成。流程如下:
客户端发送请求;
代理解析请求并连接服务器;
若是http请求,将客户端发来的http请求直接转发给服务器;
若是https请求,则回复客户端连接建立成功。
添加图片注释,不超过 140 字(可选)
数据转发。注:若是https请求,则当客户端收到连接建立成功的回复后,会再向服务器发送请求。
socks5处理http和https的流程一样,都是在连接成功后客户端再向服务器发送请求。而http代理处理http和https流程不一样,处理http时会直接将请求转发给服务器,连接成功后客户端不需要再发送请求,而处理https,不会转发请求,连接成功后需要客户端再发送https请求。