胆囊息肉

注册

 

发新话题 回复该主题

socks5安卓客户端哪里找 [复制链接]

1#

为了解决移动端网络的断连问题,实现独立应用。在此基础上,我们考虑采用客户端-proxy-Internet的三层体系结构。通过client-proxy这个链接,ProxyDroid已经可以实现了。

所以下一步要做的是。

第一步、开发proxy

proxy和Internet之间相互转发信息,其余信息从proxy-client端传送。

我们在ProxyDroid端采用Socks5协议。其优点是:无需proxy解析来自消息内容的目的IP和端口号,只需在正式数据传输之前从握手信息获取。

第二步、Socks5代理工作方式

客户端连接Socks5proxy服务器端口。

客户端端发送命令{5,1,0}

proxy返回一个答复{5,0},表明可以代理。

客户端发送:{5,1,0,1}+目的地址(用16进制表示4字节)+目的端口(用2字节表示16进制)

proxy提取IP地址,端口号,与外部网建立socket。

proxy将应答返回到client:{5,0,0,1}+IP地址(4字节的16进制表示)+外网套接字绑定端口号(2字节的16进制表示)

proxy会持续检测客户端套接字,读取数据并发送到外部网络。

proxy会不断地检测外网的套接字,读取的数据会发送到client。

基本观点:

在主活动类中设置一个ServerSocket,通过接收proxydroid发送的socks5消息来建立socket,然后将该socket传递给服务器线程;

通过在客户端和外部网络之间建立交互链路,服务器线程与客户端端进行通信。服务线程本身就是中间介质。

分享 转发
TOP
发新话题 回复该主题