刚刚看了一篇关于UDP协议“打孔”过程的文章。我了解它是如何完成的,但我还有最后一个问题需要澄清。我们有集合点服务器和客户端 A、B。
客户端 A 已经为客户端 B 打了一个洞。客户端 B 从集合点服务器接收 NAT IP 和 NAT 端口,并开始向与集合点服务器相同的端口发送数据。假设我碰巧知道 NAT 为 UDP 连接打开的第二个端口。我也可以通过第二个端口发送我的数据包吗?或者是否为每个传出的 UDP 连接区分端口?如果是这样,我们为什么可以为客户端 B 和集合点服务器使用相同的端口?当客户端 A 打孔并且客户端 B 必须知道 NAT 为这个特定连接打开的新端口时,NAT 不会打开一个新端口吗?
我希望我的问题有点可以理解。