关于JAVA解决NAT穿越防火墙以及解决多级代理方面的问题 各位师兄: 要研究关于JAVA解决NAT穿越防火墙以及解决多级代理方面的问题,想搜集一些资料。希望能提供一些好资料,避免海量查询之苦,谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你要做什么?你可以使用UDP的方式进行连接和访问,尽量不要用TCP的方式。 为什么要用UDP呢?UDP的丢包率太大,而且从实时性上也无法保证我程序的需要。 到我的blog上找找吧,我翻译过一篇UDP/TCP打洞的文章!gloomyfish搜索一下就可以看到! 看文章太慢了UDP打洞就是欺骗当client和server的socket建立后server开一个子线程保持socket同时保存该client的NAT信息下一个client想要向别的client发消息就先到server那里同样注册连接并获取其它client的NAT信息,这样就可以直接向别的client发消息了因为server和接收端的socket一直保持,所以接收方NAT信息不变,同时接受方的NAT把别的client的消息认为是server发送过来的,NAT被欺骗了就成功建立P2P了于是就可以通信了,至于多层NAT需要考虑的是网络效率问题,不是原理问题 如果要成行的技术就看Jxta 是Sun推出的一个分布式计算平台,可以帮你实现NET穿透和Firewall穿透如果功能非常简单想自己实现的话,也没问题,我博客里有收集关于NAT穿透的原理的文章,连接给你留下,可以参考参考:http://blog.csdn.net/Ant_Yan/archive/2008/12/05/3450562.aspx说白了就是你主动连它无法穿越,要它主动请求跟你建立连接就穿越了,至于怎么让它主动连你,肯定是要借助第三方Server的 try-catch-finally返回值的问题 求解 java 代码问题 调试jdk1.6 sample\nio\server出现的问题 很急,请求大家帮帮忙 如何用下拉列表来改变一个文本框的值? swing+Spring的问题,请大家赐教! 数据库连不上 请教一个小问题.. 老文章,从java.sun.com的论坛上看到的,关于java提问的。刚开始提问的进来看看吧 调查!!!在公司里JAVA到底用来做什么项目???薪水何? 亲人请教几个问题! java异常
gloomyfish搜索一下就可以看到!
当client和server的socket建立后server开一个子线程保持socket同时保存该client的NAT信息
下一个client想要向别的client发消息就先到server那里同样注册连接
并获取其它client的NAT信息,这样就可以直接向别的client发消息了因为server和接收端的socket一直保持,所以接收方NAT信息不变,同时接受方的NAT把
别的client的消息认为是server发送过来的,NAT被欺骗了就成功建立P2P了于是就可以通信了,至于多层NAT需要考虑的是网络效率问题,不是原理问题
http://blog.csdn.net/Ant_Yan/archive/2008/12/05/3450562.aspx
说白了就是你主动连它无法穿越,要它主动请求跟你建立连接就穿越了,至于怎么让它主动连你,肯定是要借助第三方Server的