如何实现两台在代理后面的计算机直接通讯???(可通过中间服务器协商)

舟中夜起 2002-03-22 10:36:07
A,B都在代理后面,没有自己真实的IP
C是服务器,有自己真实的IP,现在想用UDP协议,实现A,B只见互传文件
我现在的处理:
A发包给C,C获得A的IP和端口,
B发包给C,C获得B的IP和端口,
然后C告诉A和B对方的IP和端口,但是不成,它们仍然不能沟通。UDP不是非连接的吗?难道proxy在实现端口映射的时候把目的IP也考虑进去了?

Napster和workslink之类是如何实现在代理后互相传文件的呢?

谢谢
...全文
74 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
dongfa 2002-03-25
  • 打赏
  • 举报
回复
是呀,A和B是不能直接发送或者接收的.这也是绝大多数远程控制软件不能正常连接的直接原因.
CreekHe 2002-03-24
  • 打赏
  • 举报
回复
大家好像只对简单问题感兴趣,有对我的问题有兴趣的吗? 告诉我,我们酒吧饭店谈也可以...

我准备在用ATL创建一个全局COM(只启动一个实例)供所有客户端使用,在MSDN上找到一个例子DCOM,该例子很长又没有说明,很难看懂,请问哪位大侠能讲讲作全局COM的方法,最好有短一点的例子说明,谢谢!
alphagx 2002-03-24
  • 打赏
  • 举报
回复
WorksLink在服务器上开了一个缓冲区, 也就是在B--> C,
再经C---->A,
由服务器转发的。

并不能直接穿过去的。
舟中夜起 2002-03-23
  • 打赏
  • 举报
回复
to masterz():
谢谢,但是我目前遇到的不是通过socks4/5连接到外部IP的问题,而是代理后面的两台计算机相互连接的问题

依照我上面的方法,现在还有一个问题,就是代理服务器对UDP映射的失效时间的问题
在隔一段时间后,代理后面的计算机如果一直没有和外部通讯,则映射的端口将会失效。现在我没有找到失效的时间间隔,这个应该是一个标准性的东西。不知哪位大师知道?望告知,谢谢
dash 2002-03-22
  • 打赏
  • 举报
回复
关注,,帮你 顶!!
舟中夜起 2002-03-22
  • 打赏
  • 举报
回复
to cxiaobao(风子):请指教

我现在只能这么处理了:
1.A, B都有自己的真实IP,直接通讯
2.A有真实IP,B没有,B主动给A发,A得到B的IP和Port,然后就可以直接通讯了
3.A,B都在代理后面
3.1.A,B在同一网段,A通过服务器C告知B自己的局域网IP,B和A直接通讯
3.2.A,B不在同一网段,A,B通过C转发间接通讯

不知高手有没有好的方法?谢谢
cxiaobao 2002-03-22
  • 打赏
  • 举报
回复
a和b不能直接通信,要通过c中转的。建议还是用tcp

a<----->c<-------->b
cxiaobao 2002-03-22
  • 打赏
  • 举报
回复
你还是先去看看ip协议吧。
chen0625 2002-03-22
  • 打赏
  • 举报
回复
关注,,帮你 顶!!
masterz 2002-03-22
  • 打赏
  • 举报
回复
http://www.csdn.net/expert/topic/553/553701.xml?temp=2.991885E-02
cz3w 2002-03-22
  • 打赏
  • 举报
回复
关注,,帮你 顶!!

1,650

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 非技术类
社区管理员
  • 非技术类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧