VB6中使用Winsock穿越各种代理的实现.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
VB6中使用Winsock穿越各种代理的实现

VB6中使用Winsock穿越各种代理的实现   原文标题:VB6 中 使用Winsock穿越各种代理的实现(TCP协议)   本文中引用的RFC文档内容归原作者所有   转载本文请标明出处   本文作者:吴滂   关于用vb的winsock穿透代理的讨论归讨论,一直没有什么源代码放出,现在我就放源出来,省的某些人拿这所谓的技术去骗钱.   由于缺乏测试环境,本程序只在我自己编写的代理模拟器上测试过,其结果和腾讯QQ,MSN,网易泡泡穿越该模拟器时得出的结果基本一致.因此,代码可能有错误的地方,请各位有条件的用户自行改正,请见谅!   首先,是基础知识,也就是RFC文档.这个是必看内容.我的程序就是基于这些文档写出.下面是各RFC的连接,为了准确,我先提供英文版的连接,在下面的介绍中再把关键部分翻译成中文.另外,要纠正一个错误.国内很多文章说socks5代理的用户名/密码校验标准在 RFC 1928里有说明,其实这是一个完全错误的说法(我很怀疑写那文章的人有没有看过RFC),socks5用户名/密码校验标准其实是在 RFC 1929 里面说明的.   RFC 1928 - socks5 代理标准   RFC 1929 - socks5 代理用户名/密码校验标准   RFC ???? - socks4 代理标准   RFC 2616 - HTTP1.1 标准   我们现在直入正题:先说socks5的TCP穿透(有了这个例子大家自己照这可以写UDP穿透)   首先和代理服务器连接-直接用winsock去connect指定的地址端口(通常是1080)即可.然后进入细节商议阶段.   细节商议--无用户名/密码校验   RFC 1928 中对于细节商议的第一步是这样描述的:   The client connects to the server, and sends a version   identifier/method selection message:   +----+----------+----------+   |VER | NMETHODS | METHODS |   +----+----------+----------+   | 1 | 1 | 1 to 255 |   +----+----------+----------+   The VER field is set to X05 for this version of the protocol. The   NMETHODS field contains the number of method identifier octets that   appear in the METHODS field.   The server selects from one of the methods given in METHODS, and   sends a METHOD selection message:   +----+--------+   |VER | METHOD |   +----+--------+   | 1 | 1 |   +----+--------+   If the selected METHOD is XFF, none of the methods listed by the   client are acceptable, and the client MUST close the connection.   The values currently defined for METHOD are:   o X00 NO AUTHENTICATION REQUIRED ---------无用户密码 00   o X01 GSSAPI ---------??? GSSAPI ?   o X02 USERNAME/PASSWORD ---------有用户密码 02   o X03 to X7F IANA ASSIGNED   o X80 to XFE RESERVED FOR PRIVATE METHODS   o XFF NO ACCEPTABLE METHODS ---------失败 255   The client and server then enter a method-specific sub-negotiation.   换言之,就是向服务器发送三个字节的Byte数组,由于是无须用户/密码校验,展开来写是 05 01 00   然后服务器返回两个字节的信息,第一个字节固定,第而个字节是说明,如果是16进制的FF(即十进制255)表示连接失败(o XFF NO ACCEPTABLE METHODS)根据上面的列表,

文档评论(0)

aicencen + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档