使用映射的或公共的{IP:Port}直接进行对等通信

Muh*_*man 6 android stun server

我正在寻找一种解决方案,以使用UDP或TCP在NAT **分离的Android终端或节点之间交换信息。

  • 我正在开发一个远程应用程序,客户端在其中直接相互通信。我使用的是STUN服务器实施,以获得公网IP:端口为Android客户端假设A和B

为了实现STUN服务器和NAT遍历,我使用了开放源代码。

STUN服务器软件即STUNTMAN

客户端A&B的 Android端上,为了从** STUNTMAN ** 获得Public IP:PORT ,我已经集成;

“ JSTUN”是基于Java的STUN客户端。

在Client-A,来自** STUNTMAN Server ** 的示例结果类似;

stunclient --mode full --localport 9999 stun.stunprotocol.org
Binding test: success
Local address: 192.168.1.8:9999
Mapped address: 1.2.3.4:9999
Behavior test: success
Nat behavior: Endpoint Independent Mapping
Filtering test: success
Nat filtering: Address and Port Dependent Filtering
Run Code Online (Sandbox Code Playgroud)

为了在Android客户端之间进行点对点通信,我维护了一个信令服务器,该服务器可以在客户端A和B之间准确共享映射地址

但是,当我尝试使用作为通信协议的UDP或TCP套接字启动对等通信时,它们之间没有这种通信。

我无法理解我在哪里做错了?我也尝试过这种解决方案:

关于眩晕服务器的困惑