QQ的代理通信机制 当聊天的双方都是通过代理服务上网的话,他们之间是个什么样的通信机制???还有一种类似代理的上网方式,就是通过网关和DNS服务,这种情况下又是用的什么机制,请高手指教!!!谢谢!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Server S (219.237.60.1) | | +----------------------+----------------------+ | | NAT A (外网IP:202.187.45.3) NAT B (外网IP:187.34.1.56) | (内网IP:192.168.0.1) | (内网IP:192.168.0.1) | |Client A (192.168.0.20:4000) Client B (192.168.0.10:40000) 首先,Client A登录服务器,NAT A为这次的Session分配了一个端口60000,那么Server S收到的Client A的地址是202.187.45.3:60000,这就是Client A的外网地址了。同样,Client B登录Server S,NAT B给此次Session分配的端口是40000,那么Server S收到的B的地址是187.34.1.56:40000。 此时,Client A与Client B都可以与Server S通信了。如果Client A此时想直接发送信息给Client B,那么他可以从Server S那儿获得B的公网地址187.34.1.56:40000。现在我们需要的是在NAT B上打一个方向为202.187.45.3(即Client A的外网地址)的洞,那么Client A发送到187.34.1.56:40000的信息,Client B就能收到了。这个打洞命令由谁来发呢,呵呵,当然是Server S。 总结一下这个过程:如果Client A想向Client B发送信息,那么Client A发送命令给Server S,请求Server S命令Client B向Client A方向打洞。 呵呵,用Google更管用一点吧搜索 NAT、NATP 我说的客户断怎么来写,Client A发送的数据怎么来写,因为要通过代理向外发送,数据报里面肯定是很复杂的,有目标IP和代理服务器IP,比如ClientSocket.socket.sendtext(),发送的text怎么来组织,,,一直迷惑这个问题,大概的机制我也知道,,请高手指教啊 对于发送文件或视频,是两个QQ客户端其中一个作为客户端,另外一端作为服务器端机制直联的,两个QQ客户端发送信息,是通过腾讯服务器接受-〉转发机制。 如何检测或者监视某一个程序被注入或者窗口被读取了 机器不是人,人也不是机器 组建温州计算机开发俱乐部 idhttp Post返回压缩数据怎么解压? 紧急求助呀!帮帮忙! 各位前辈,小弟初学,帮忙看看那错了? 安装delphi7.0(完整正试企业版v7.06)后提示注册码不对!在线等待解决方法 请教:ADO+ORACLE,有没有最简单的备份/恢复方法? 怎么样叫学好了delphi? 寻觅-Delphi编程技术内幕 一小段源码 大家帮忙看看 刚从 派出所 出来
Server S (219.237.60.1)
|
|
+----------------------+----------------------+
| |
NAT A (外网IP:202.187.45.3) NAT B (外网IP:187.34.1.56)
| (内网IP:192.168.0.1) | (内网IP:192.168.0.1)
| |
Client A (192.168.0.20:4000) Client B (192.168.0.10:40000)
首先,Client A登录服务器,NAT A为这次的Session分配了一个端口60000,那么Server S收到的Client A的地址是202.187.45.3:60000,这就是Client A的外网地址了。同样,Client B登录Server S,NAT B给此次Session分配的端口是40000,那么Server S收到的B的地址是187.34.1.56:40000。
此时,Client A与Client B都可以与Server S通信了。如果Client A此时想直接发送信息给Client B,那么他可以从Server S那儿获得B的公网地址187.34.1.56:40000。现在我们需要的是在NAT B上打一个方向为202.187.45.3(即Client A的外网地址)的洞,那么Client A发送到187.34.1.56:40000的信息,Client B就能收到了。这个打洞命令由谁来发呢,呵呵,当然是Server S。
总结一下这个过程:如果Client A想向Client B发送信息,那么Client A发送命令给Server S,请求Server S命令Client B向Client A方向打洞。
搜索 NAT、NATP