Eu tenho um servidor escutando em todas as interfaces uma porta (usando go net.Listen("tcp", ":{port}")). Também tenho um servidor de backup com o mesmo código, para iniciar se o primeiro servidor falhar. Ambas as máquinas usando o mesmo roteador que possui um endereço IP externo. O roteador atribui um endereço IP privado a cada dispositivo conectado. Um cliente disca para o servidor usando o IP externo do roteador (e determinada porta).
Ao alternar do servidor de backup para o primeiro servidor, ambos estarão escutando em todas as interfaces por um curto período. Não pode haver vários desses ouvintes na mesma máquina, mas podem ouvir de diferentes máquinas. Minha pergunta é: o que acontece se houver vários ouvintes ouvindo em todas as interfaces uma porta de diferentes máquinas (com diferentes endereços IP privados)? Onde acontecerá a conexão do cliente?