我有一个服务器在所有接口上监听某个端口(使用 go net.Listen("tcp", ":{port}"))。我还有具有相同代码的备份服务器,以便在第一台服务器出现故障时启动。两台机器使用具有外部 IP 地址的同一路由器。路由器为每个连接的设备分配一个私有IP地址。客户端使用路由器的外部 IP(和给定端口)拨打服务器。
从备份服务器切换回第一台服务器时,两者都会在所有接口上监听一段时间。同一台机器上不能有多个这样的监听器,但可以从不同的机器上监听。我的问题是,如果有多个侦听器在所有接口上侦听来自不同计算机(具有不同的私有 IP 地址)的端口,会发生什么情况?客户端连接将在哪里发生?