
Quero construir um serviço que crie VMs dinamicamente e atribua a cada VM um registro DNS público que pode ser um domínio completo ou um subdomínio. Suponha que todos os VMS estejam em um único host. As VMs terão uma combinação de serviços expostos TCP ou UDP em execução nelas, usando várias portas. O host possui um endereço IP público.
Posso usar o NAT para fazer alguma coisa com o roteamento dos domínios para as VMs ou preciso de mais endereços IP públicos para esta configuração?
Como outras empresas de hospedagem virtualizada fazem isso? eles têm mais blocos de IP?
Responder1
Posso usar o NAT para fazer qualquer coisa com o roteamento dos domínios?
Não, o NAT não conhece DNS.
Preciso de mais endereços IP públicos
Você precisa de um IP por tupla IP:Porta do servidor. Se tudo estiver rodando em portas diferentes, você poderá usar o mesmo IP para tudo. Apenas um lembrete: o IP não sabe nada sobre DNS e o DNS não sabe nada sobre portas de serviço (a menos que o aplicativo suporte especificamente registros SRV, o que é extremamente raro por motivos que eu desconheço).
Como outras empresas de hospedagem virtualizada fazem isso? eles têm mais blocos de IP?
O aplicativo reconhece DNS (como HTTP, que usa cabeçalhos de camada de aplicativo; ou TLS, que usa SNI, que é como um cabeçalho) ou usa IPs separados por destino.