p2p udp穿透失败,麻烦高手指教
http://wenku.baidu.com/view/3009a6ebaeaad1f346933fe5.html
网上关于P2P udp穿透的理论知识大致和以上列的网址内容差不多,在此基础上做STUN测试,公司的公网IP是59.61.92.18,我让网管帮我做了端口映射,比如我现在的电脑局域网IP是172.16.15.188 映射端口8877 ,就是往(59.61.92.18/8877)发送数据,(172.16.15.188 /8877)可以接收到,用调试助手 (端口号8888 )往(59.61.92.18/8877)和宿舍电脑(已在路由器上做了端口映射)发送数据,接收端显示发送者的端口号不变,反过来测试宿舍的网络,大致可以确定双方所处环境是CORE NAT类型的,之后就用公司的这台电脑来测试程序,用(172.16.15.188 、8877)地址运行服务端,又运行了一个客户端,在宿舍电脑运行了另一个客户端,结果测试失败(都是在虚拟机上运行)。
业务流程大致是:客户端和服务端一直用固定端口做信息交互,如心跳包,服务器获取了两个客户端,并将双方的信息发送给每个客户端,之后客户端直接双方都建立两个线程,同时做发送和接收,对服务端发送心跳包也一直持续,但是两个客户端一直也无法得到对方发来的信息,抓包工具在每个客户端抓包获取的源端口和目的端口也还没有改变。;要是让两个客户端都在同一个局域网,指定服务端也是同一个局域网,相当于说三者都在局域网,之后两个客户端能够通讯(这说明服务端在获取双方信息和发送给两端的客户端信息是正确的);
我无法确定是不是我还缺少了哪些步骤,导致失败,麻烦高手指点。