|
![]() | 作者: ronggang [ronggang]
![]() |
登录 |
由于已经讨论了很多,现只能贴出原题来,其他讨论请到下面地址查看,但还没有结果,所以还请各位高手帮帮忙!
http://www.dapha.net/bbs/dispbbs.asp?boardID=1&ID=4652 大家都知道QQ可以在两台处于不同地域的计算机之间进行文件传送,即使两台计算机处在不同的局域网内,只要他们可以连接Internet就可以直接进行文件传送; 现在,如果我用WINSOCK来实现此功能,该如果做才可以呢,用过WINSOCK的朋友一定都清楚,两台计算机之间连接的前提条件是知道对方的IP和指定的端口,这样才可以成功连接,但现在存在一个问题,就是在一个局域网里,对外的IP只有一个,这个IP就是直接连接Internet的那台服务器的IP,所以如果和其他计算机(除了直接连接Internet外)进行连接的话,端口无法确定,因为指定的端都是那台服务器的,所以现在就有这样一个问题是:QQ是如何进行连接的呢,欢迎大家一起讨论! |
地主 发表时间: 10/16 15:34 |
![]() | 回复: roxbin [roxbin] ![]() |
登录 |
马化腾的这个东西做得实在太烂了, 把防火墙放低点, 兄弟, |
B1层 发表时间: 10/16 20:17 |
![]() | 回复: NetDemon [netdemon] ![]() |
登录 |
很简单,任何一个QQ登陆,tencent的服务器上都有此号码目前的IP和port。如果此号在局域网内,那么IP是其对外的IP,port由其直接连接Internet的那台服务器上的NAT软件决定。当你往此号码发送文件时,tencent给你目标QQ的IP及port,你与此port连接,目标QQ直接连接Internet的那台服务器上的NAT软件再自动把数据送往目标QQ在内部真实 的IP及port。 只要知道NAT的工作原理,这就不是一个什么问题了 |
B2层 发表时间: 10/17 06:21 |
![]() | 回复: kenrry [kenrry] ![]() |
登录 |
由客户端主动连接服务器端就可以,端口可以任意指定,最好用高端端口 |
B3层 发表时间: 10/17 20:55 |
|
20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon
粤ICP备05087286号