我正在尝试实现一个系统,允许客户端几乎不需要任何配置就可以建立彼此之间的直接连接。
据我了解,STUN 服务器无法在对称 NAT 后面工作,因为对等客户端的端口不是服务器看到的端口。
我有一个关于如何实现这一目标的想法,但我不确定它是否真的可行。以下是我的想法:
想象一下我尝试两个连接
至服务器(成功)
到对等点(失败)
服务器将存储有关待处理客户端的信息,然后通知每个客户端尝试建立注定失败的连接。从失败的连接中,读取它打开的端口,将该端口告知服务器,然后继续建立连接。因此,与其打开与服务器的连接,不如使用服务器在客户端之间共享有关如何相互连接的真实来源。
现在来谈谈真正的问题
我的客户端机器是否可以访问此信息以使此方法可行?
如果可以的话,这种方法可行吗?还有其他因素会妨碍它发挥作用吗?
如果没有的话还有其他方法可以达到相同或类似的结果吗?
我对点对点网络或任何自定义网络实现都不太熟悉,所以如果我说的都是废话,请原谅我……
谢谢!