没有端口映射的情况下点对点通信如何工作

没有端口映射的情况下点对点通信如何工作

当 BitTorrent 客户端程序都在路由器后面时,它们如何相互连接?

我的理解是,要打开与另一台计算机的套接字连接,必须在路由器上进行端口映射。但 BitTorrent 之类的东西并非如此。为什么会这样?

答案1

从技术上来说,它们位于路由器后面并不是问题;互联网上的所有内容都位于多个路由器后面。网络地址解读 (NAT)会导致对等协议出现问题。

有以下 NAT 穿越技术:TCP 打洞UDP 打洞。您可以阅读更多内容,例如开发跨 NAT 的 P2P 协议作者是 Girish Venkatachalam;它甚至有一个实际的例子。

相关内容