读书人

打洞失败解决思路

发布时间: 2011-12-29 22:09:38 作者: rapoo

打洞失败
ca和cb如果都是拨号上网的,都可以与server联系,也都可以互相发信息,可是一旦处在内网之中,或在virtural box中(用网桥),就出现如下问题:
服务器能收到信息,可是回复的信息,客户端却收不到,就是说丢失了,应该是被主动丢弃了。。。。。。。。。

服务端一个udp接,一个udp发,都是线程处理,客户端一个udp接和发,但是数据量不大,很小

各位帮忙想想,问题出在哪里???



[解决办法]
udp是广播包吗?被路由器拒了.
[解决办法]
按说内网客户端向公网服务器发过包以后 就已经打洞成功了 你向相同的端口回复的话应该能收到吧 你的服务器是在公网么?
[解决办法]
不是很懂,学习一下
[解决办法]

探讨
不是很懂,学习一下

[解决办法]
mark
[解决办法]
引用:
不是很懂,学习一下
[解决办法]
没搞过!!!
帮你顶!!!
[解决办法]
楼主还没明白P2P的过程。如果对方也在某一局域网内,是要先打“洞”的(就是让机器和路由器建立连接),而且这个“洞”是有方向的,如你要发信息给对方,必须先由对方向你的IP和端口方向打“洞”,然后你才能将信息发送给对方,否则你发送的信息将会被对方的路由设备丢弃。反过来,如果对方需要发送信息给你,同样需要你先向对方的IP和端口方向打“洞”。
你的情况是,两个客户端只和server打通了,而两个客户端之间的"洞"还没有打通. 这样的话,当客户端一方的路由设备收到另一客户端的信息时,被主动丢弃。
[解决办法]
探讨
没搞过!!!
帮你顶!!!

[解决办法]
探讨
楼主还没明白P2P的过程。如果对方也在某一局域网内,是要先打“洞”的(就是让机器和路由器建立连接),而且这个“洞”是有方向的,如你要发信息给对方,必须先由对方向你的IP和端口方向打“洞”,然后你才能将信息发送给对方,否则你发送的信息将会被对方的路由设备丢弃。反过来,如果对方需要发送信息给你,同样需要你先向对方的IP和端口方向打“洞”。
你的情况是,两个客户端只和server打通了,而两个客户端之间的"洞"还没…

[解决办法]
探讨
引用:
没搞过!!!
帮你顶!!!

[解决办法]
探讨
UdpClient UFcC = new UdpClient(0);
ufcc.send 方法发送数据,服务端能收到数据,并取得ip,port,然后立即向这个ip,port回发数据
ufcc。recieve则收不到数据

[解决办法]
学习啦。。。
[解决办法]
不懂···
帮顶···
[解决办法]
没有做过,帮你顶
[解决办法]
学习一下,,,,,,,,
[解决办法]
可能是单个UDP数据包的大小超过MTU了

服务器是什么系统(补丁)?

[解决办法]
换个网络环境试试?难道路由器的问题?
[解决办法]
kankan...........

读书人网 >C#

热点推荐