+ -
当前位置:首页 → 问答吧 → 简单UDP-P2P通信的问题--求解

简单UDP-P2P通信的问题--求解

时间:2011-12-22

来源:互联网

A B客户端在同一个局域网内
但是A和B要建立UDP的P2P通信
双方从服务端C获取了对方的公网IP和端口后
这个时候,AB之间用公网IP和端口进行打洞操作,

这个打洞能成功??

为什么我测试的时候,没法收到信息,无法进行连接

求解……

作者: hzy694358   发布时间: 2011-12-22

http://topic.csdn.net/u/20111221/18/95113b73-bdbe-4370-88da-19a39e8d441c.html

作者: tubo_true   发布时间: 2011-12-22

服务器C获取了AB客户端的公网IP及端口后;
服务器C分别把A的Ip及Port告诉B ,同时把B的Ip及Port告诉A

这样就打洞成功了;
AB客户端之间就可以传输信息了

作者: ALLENJIAO   发布时间: 2011-12-22

楼上两位,
怎么说呢,厄,其实应该这么说,厄,应该是这样的……

前提条件:

A B客户端在同一个局域网内 (我直接用内网ip和端口是可以连接的)

不知道这个是有什么限制没有

因为测试条件的限制,所以只能在一个局域网内测试

双方都进行sendto 接着select 但是select 总是超时。

作者: hzy694358   发布时间: 2011-12-22

汗,lz你在同一局域网内让两客户端通信,用本身的IP和端口可以通信,你还要用外部NAT转换后的ip和端口通信用意何在,是自己弄着玩的?

作者: jiangyiaxiu   发布时间: 2011-12-22

引用 4 楼 jiangyiaxiu 的回复:

汗,lz你在同一局域网内让两客户端通信,用本身的IP和端口可以通信,你还要用外部NAT转换后的ip和端口通信用意何在,是自己弄着玩的?

对的,直接用局域网IP当然就可以了
--------------------------------------
发现同一局域网内的两个客户端,走外网NAPT的IP和端口是连不通的
如果是不同局域网内的两个客户端就可以 
很奇怪 莫非同一个NAPT 会有问题

作者: hzy694358   发布时间: 2011-12-22