我知道p2p应用程序对非对称NAT使用打孔,但Skype或Hamachi如何使用对称NAT连接用户?
答案 0 :(得分:5)
首先,只有当两个用户都在对称NAT之后,如果其中一个用户具有对称性且另一个端口受限制,则问题才存在。在这两种情况下都不可能在它们之间建立点对点连接。但是如果一个用户是对称的而另一个是完整的锥形,则没有问题。
具有对称性的解决方案是使用名为TURN的中间机器,它是一个转发器,它接收来自Alice的数据包并将它们转发给Bob,反之亦然。 Skype使用超节点(具有公共IP的节点)作为TURN节点。