誰能說說Sock5代理服務器的原理﹖(100分)

H

hgood

Unregistered / Unconfirmed
GUEST, unregistred user!
誰能說說Sock5代理服務器的原理﹖
現在想做一個代理服務器﹐Http ,smtp 和pop3服務器都差不多了﹖但不知道sock5該怎么做﹖
請大家發發言吧﹗﹗
 
大家都來看看吧﹗﹗sock5是采用什么樣的原理來工作的﹖大俠們﹗﹗
 
真是難受﹖沒人知道這事﹗﹗
 
sock5代理的工作程序是:

1.需要向代理方服务器发出请求信息。
2.代理方应答
3.需要代理方接到应答后发送向代理方发送目的ip和端口
4.代理方与目的连接
5.代理方将需要代理方发出的信息传到目的方,将目的方发出的信息传到需要代理方。代理完成。

由于网上的信息传输都是运用tcp或udp进行的,所以使用socks5代理可以办到网上所能办到的一切,而且不舆目的方会查到你的ip,既安全又方便 sock5支持UDP和TCP,但两种代理是有区别的,以下分类说明

如何用代理TCP协议

1.向服务器的1080端口建立tcp连接。
2.向服务器发送 05 01 00 (此为16进制码,以下同)
3.如果接到 05 00 则是可以代理
4.发送 05 01 00 01 + 目的地址(4字节) + 目的端口(2字节),目的地址和端口都是16进制码(不是字符串!!)。 例202.103.190.27 - 7201 则发送的信息为:05 01 00 01 CA 67 BE 1B 1C 21 (CA=202 67=103 BE=190 1B=27 1C21=7201)
5.接受服务器返回的自身地址和端口,连接完成
6.以后操作和直接与目的方进行TCP连接相同。

如何用代理UDP连接

1.向服务器的1080端口建立udp连接
2.向服务器发送 05 01 00
3.如果接到 05 00 则是可以代理
4.发送 05 03 00 01 00 00 00 00 + 本地UDP端口(2字节)
5.服务器返回 05 00 00 01 +服务器地址+端口
6.需要申请方发送 00 00 00 01 +目的地址IP(4字节)+目的端口 +所要发送的信息
7.当有数据报返回时 向需要代理方发出00 00 00 01 +来源地址IP(4字节)+来源端口 +接受的信息

注:此为不需要密码的代理协议,只是socks5的一部分,完整协议请看RFC1928

另外可见:http://feeyoo.51.net/devdoc/docs/netdev/aboutproxy.htm
 
謝謝山泉大俠﹐我這就去看下﹗﹗
 
請問哪里有關RFC1928協義方面的資料下載﹗
 
http://www.faqs.org/rfcs/rfc1928.html
 
我有完整的SOCK5的资料,不过是在书上,比上面的详细的多,还有具体代理程序的
代码。
 
To:张无忌大俠
能不能發點相關的資料給我啊還有你那個原碼來的﹖謝謝
hxy.zh@163.com
 
To:张无忌大俠
能不能 给我发一份完整的SOCK5的资料,还有一些具体的代理程序。谢谢!
crpp3202@163.com
 
资料在人民邮电出版社的一本DELPHI网络编程的书上,我没有办法做成电子文件发给你大家了
 
to 张无忌:
找个女打字员帮你弄一下,费用全部算在hgood身上。呵呵!
 
不好意思!!
 
哪里有完整的SOCK5的资料?
jewen@163.net
 
找到了一份,不过不是很详细!
http://cisco.9968.net/bass/rfc/RFC1928.txt
 

Similar threads

D
回复
0
查看
712
DelphiTeacher的专栏
D
D
回复
0
查看
730
DelphiTeacher的专栏
D
顶部