我一直在阅读TURN和STUN服务器的相关信息,因为我想开发一款浏览器对浏览器的应用程序,这样BrowserA(在NAT后面)就可以与BrowserB(在NAT后面)进行通信。在这种情况下,我认为我应该使用TURN协议。
我的问题是:是否有其他不需要外部物理服务器的解决方案?一个仅限软件的解决方案将是完美的。
谢谢。
我的问题是:是否有其他不需要外部物理服务器的解决方案?一个仅限软件的解决方案将是完美的。
谢谢。
答案是否定的。
解释:NAT代表网络地址转换。它意味着将您设备的“私有”IP地址(仅在局域网内有效)翻译成一个“公共”IP地址,该地址在WAN上有效(即,在您的NAT另一侧的互联网上)。
问题在于,翻译后的地址仅从您的LAN外部可见。因此,您需要一个可达的设备来读取它并将其发送回给您(或其他对等方)。
当两个位于不同NAT后面且都具有私有IP地址的对等方需要建立连接时,您始终需要一个服务器/中央对等方来帮助建立连接。
谢谢。假设浏览器A(发起通信的浏览器)知道浏览器B的公共IP地址,但反过来不知道。对于这个问题的答案是相同的吗?