我有一个客户机A和客户机B,都在一些NAT的组合后面,我需要他们通过TCPUDP建立一个P2P连接。有什么方法可以让我使用一个外部服务器,让这两个客户可以可靠地到达,打开一个套接字,然后切换这些打开的套接字,使他们开始相互通信?
有几种方法可以做到这一点。
NAT-PMP和UPNP可能是最好的选择,但局限性是如果你的NAT设备不支持它,这些将是无效的。
使用ICE结构可以帮助你做到这一点。但你要知道NAT有四种不同的类型,对于对称NAT,我们必须从中心服务器中转流。