我是新手,所以如果这个问题很愚蠢,我很抱歉。如果是这样,请提示我从哪里开始阅读,以便我可以回答我自己的问题。
因此,我有两个客户端和一个服务器。两个客户端都与服务器建立连接。然后,服务器将两个客户端的完整地址(IP 和端口)发送给它们两个。现在,客户端开始侦听相同的端口,并开始向彼此的地址发送数据包。它们能够相互连接吗?
从我的角度来看,这个问题可以归结为 ISP 的 NAT 是否习惯于仅让数据包到达已知端口时才让其通过,即使该数据包来自一个全新的地址?
答案1
基本上不行。SNAT 只能单向传递连接,为了使两个客户端进行通信,其中一个客户端需要设置 DNAT 才能应答另一个客户端的呼叫。
查看 UPNP。