我目前正在开发Android点对点应用程序。 当然,我们很快意识到,最困难的任务之一是弄清楚如何遍历NAT以允许2个设备(或更多)通过互联网相互通信,无论它们之间的距离如何。
我一直在做一些研究,阅读有关STUN(T),ICE,TURN的内容,并发现了一些实现,包括Ice4j,JStun,IcedJava,NUTSS ......
您是否了解至少其中一种技术的实际使用示例,可能在现有(Android或其他)对等应用程序中? 对我们来说最有用的是不需要应用程序使用任何其他中继服务器的那些。
欢迎其他建议!
提前多多感谢:)
答案 0 :(得分:0)
只是通过NAT了解设备Ip和端口,其他设备连接到该设备。 IcedJava实现RFC5389,JStun实现RFC3489。
答案 1 :(得分:-1)
AFAIK使用Android应用程序无法避免某种类型的中继服务器:电信公司分配给移动设备的IP不是固定的,也不可公开访问:您无法建立与移动设备的直接连接设备