代理协议整理
来源:互联网 发布:亚马逊数据魔方ziniao 编辑:程序博客网 时间:2024/06/05 17:14
SOCKS4/SOCKS4A 客户端服务器端协议
1
客户端发送
// SOCKS 4
// +----+----+----+----+----+----+----+----+----+----+....+----+
// | VN | CD | DSTPORT | DSTIP | USERID |NULL|
// +----+----+----+----+----+----+----+----+----+----+....+----+
//# of bytes: 1 1 2 4 variable 1
服务器返回
// +----+----+----+----+----+----+----+----+
// | VN | CD | DSTPORT | DSTIP |
// +----+----+----+----+----+----+----+----+
// # of bytes: 1 1 2 4
//
// VN is the version of the reply code and should be 0. CD is the result
// code with one of the following values:
//
// 90: request granted
// 91: request rejected or failed
// 92: request rejected becasue SOCKS server cannot connect to
// identd on the client
// 93: request rejected because the client program and identd
// report different user-ids
SOCKS5 客户端服务器端协议
1 认服务器选择支持的socks类型
客户端发送
// SOCKS 5
// -------------------------------------------------------------------------------------------
// The client connects to the server, and sends a version identifier/method selection message:
// +----+----------+----------+
// |VER | NMETHODS | METHODS |
// +----+----------+----------+
// | 1 | 1 | 1 to 255 |
// +----+----------+----------+
//
// The values currently defined for METHOD are:
//
// o X'00' NO AUTHENTICATION REQUIRED
// o X'01' GSSAPI
// o X'02' USERNAME/PASSWORD
// o X'03' to X'7F' IANA ASSIGNED
// o X'80' to X'FE' RESERVED FOR PRIVATE METHODS
// o X'FF' NO ACCEPTABLE METHODS
发送协议(版本号(1字节) | 可供选择的认证方法(1字节) | 方法序列(1-255个字节长度))
如果是socks4协议,版本号就是0x04,但是这里是支持UDP的Socks5,所以是字节0x05
Socks协议定义了0-255种通过代理的认证方法:
0x00 无验证需求
0x01 通用安全服务应用程序接口(GSSAPI)
0x02 用户名/密码(USERNAME/PASSWORD)
0x03 至 X'7F' IANA 分配(IANA ASSIGNED)
0x80 至 X'FE' 私人方法保留(RESERVED FOR PRIVATE METHODS)
0xFF 无可接受方法(NO ACCEPTABLE METHODS)
0x05 0x01 0x00 表示只有一种0x00供服务器选择
0x05 0x02 0x00 0x02 表示有两种 0x00 0x02 供服务器选择
服务器端返回
版本号 | 服务器选定的方法
2 发送用户认证消息
客户端发送
0x01|用户名长度(1字节)| 用户名(长度根据用户名长度域指定)| 口令长度(1字节)| 口令(长度由口令长度域指定)
服务器返回
0x01 | 验证结果标志
验证结果标志可以为:0x00 验证通过
3 代理的服务器信息
客户端发送
协议版本 | Socks命令 | 保留字节 | 地址类型 | 特定地址 | 特定端口
Socks命令有3种:CONNECT (编号0x01) BIND (0x02) UDP(编号0x03)
保留字节长度1,为0x00
地址类型有3种:
0X01 该地址是IPv4地址,长4个8bit字节。
0X03 该地址包含一个完全的域名。第一个8bit字节包含了后面名称的8bit的数目,没有中止的’/0’。
0X04 该地址是IPv6地址,长16个8bit字节。
服务器返回
版本 | 代理的应答 | 保留1字节 | 地址类型 | 代理服务器地址 | 绑定的代理端口
代理的应答可以为值:
0X00 成功协商
0X01 常见的Socks故障
0x02 不允许连接
0X03 网络不可到达
0X04 主机不可到达
0X05 连接被重置
0X06 TTL 失效
0X07 命令不支持
0X08 地址类型不支持
0X09 一直到0xff都保留
HTTP客户端服务器端协议
1
客户端发送
1.0
CONNECT www.16gt.com:80 HTTP/1.0/r/n
Authorization: Basic用户:密码/r/n
Proxy-Authorization: Basic用户:密码/r/n
/r/n
1.1
CONNECT www.16gt.com:80 HTTP/1.1/r/n
Host: www.16gt.com:80/r/n
Authorization: Basic 用户:密码/r/n
Proxy-Authorization: Basic 用户:密码/r/n
/r/n
服务器返回
http/
- 代理协议整理
- Objective-C ---代理和协议 (梳理整理)
- 代理整理
- 协议,代理
- 协议、代理
- 3.协议,代理,非正式协议
- 代理模式整理
- 动态代理散件整理
- 代理协议SOCKS5简介
- 代理协议SOCKS5
- HTTP协议之代理
- HTTP协议之代理
- TTP协议 (五) 代理
- 协议和代理
- HTTP协议之代理
- HTTP协议 (五) 代理
- HTTP协议 (五) 代理
- HTTP协议 (五) 代理
- Some Question About ASP.NET
- Linux开发者眼中的10本顶级书籍
- so 搞笑生动的 ERP 介绍
- 傍晚拍到的漂亮云彩
- java.lang.NoSuchMethodError: org.objectweb.asm.ClassVisitor.visit(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava
- 代理协议整理
- sns社区
- EAS BOS导入导出开发指南.
- 关于页面展现的效率
- javax.persistence.PersistenceException: No Persistence provider for EntityManager named ***
- 想要成为java大牛必须知道的25点
- Oracle新建用户和表,查询杀死session
- 初始化阿,初始化
- CHARINDEX和PATINDEX比较