Existe uma maneira de direcionar o tráfego que chega na mesma porta para duas VMs diferentes?

Existe uma maneira de direcionar o tráfego que chega na mesma porta para duas VMs diferentes?

Portanto, a ideia básica está expressa na pergunta acima, mas deixe-me explicar.

Eu estava pensando em hospedar um servidor Minecraft dentro de uma VM (usando o modo bridge para poder direcionar o tráfego para ele via encaminhamento de porta) no meu servidor dedicado aqui em casa. Recentemente, um amigo me perguntou se eu também poderia hospedar um servidor para seu servidor discord moderadamente pequeno. Naturalmente concordei. Meu plano seria simplesmente abrir uma segunda VM para seu servidor rodar e dar a ele acesso SSH a ela.

Agora, no entanto, estou enfrentando o problema do Minecraft usar uma determinada porta para conectar-se por padrão. Eu realmente não quero exigir que as pessoas adicionem um número de porta no final do URL. Então, como posso separar o tráfego destinado a uma VM do tráfego destinado à outra VM se o tráfego de entrada de ambos estiver na mesma porta? É mesmo possível? Posso encaminhar a mesma porta para dois endereços IP internos diferentes?

Eu estava pensando em usar mc1.mydomain.com e mc2.mydomain.com para que o tráfego fosse roteado automaticamente para diferentes portas de entrada, também conhecidas como. vincular portas ao nome de domínio.

Não tenho ideia se estou apenas fantasiando sobre algo impossível. Alguma ajuda seria apreciada.

Desde já, obrigado.

PS: Não tenho opção de usar um endereço IP fixo, por isso estou limitado a serviços DNS dinâmicos.

Responder1

Você não pode, uma única porta TCP só pode ser encaminhada para um único servidor interno (a menos que você queira balanceá-los, para o qual você precisaria de 1) um balanceador de carga e 2) dois servidores que realmente executem o mesmo aplicativo, não dois diferentes).

Algo assim só pode ser feito com HTTP(S) usando um proxy reverso, que pode inspecionar a URL solicitada e enviar o tráfego para diferentes servidores com base no que foi solicitado; isso permite publicar vários servidores web através do mesmo proxy reverso. Mas isso só é possível porque o HTTP(S) o suporta explicitamente na camada de aplicação. Não há nada parecido na camada de rede, você só pode trabalhar com endereços IP e portas lá.

informação relacionada