Isso pode ser bem básico, então, se parecer, por favor, não pense demais nisso!
Minha configuração
- Servidor inicial executando o Hyper-V com VMs para IIS, MSSQL e outros
- Conexão residencial com IP potencialmente cambiável, que mapeei para um domínio DynDNS (para que o DNS seja atualizado automaticamente)
- O servidor e todas as VMs (exceto uma) estão executando o Windows Server 2012
- As VMs de hospedagem de servidor são configuradas como um servidor DNS e todas as VMs têm um IP interno estático para a rede (bem como um nome de host - minha VM do IIS, por exemplo, é iis.mydomain.com)
- O servidor está atrás de um roteador, mas pode configurar o usual (DMZ, encaminhamento de porta, etc)
O cenário
Gostaria de poder encaminhar o tráfego em todas portas para **. mydomain.com:PORT* para ir para a VM mapeada adequadamente (ou seja, iis.mydomain.com: PORT - > IIS_VM: PORT), que mapeia para um IP estático específico na minha rede.
Por exemplo, eu acesso o iis.mydomain.com com o RDP e ele me conecta à VM do IIS via Remote Desktop, do externo para a rede. Eu bato em iis.mydomain.com no navegador da Web e carrega o site apropriado que está vinculado a esse nome de host na VM do IIS.
Como alternativa, com tudo isso sendo verdade, eu poderia criar mssql.mydoman.com e clicar via Remote Desktop, onde ele me conecta a que VM. Eu também poderia acessá-lo via Management Studio e conectá-lo.
Tentativa atual
- Configurar servidores de nomes que apontam para o meu IP residencial (e são dinamicamente atualizados via DynDNS)
- Apontou mydomain.com para os servidores de nomes acima
- Usando o servidor central que está executando o DNS para resolver nomes de host na rede
Problema
Eu posso acessar iis.mydomain.com de fora da minha rede e isso resolve um IP - infelizmente ele resolve 192.168.0.105, que é o IP interno da máquina do IIS. Isso faz sentido porque, no gerenciador de DNS, é isso que eu atribuí ao nome do host.
Então, a pergunta:
Como faço para configurar meu servidor DNS (ou reconfigurar minha configuração atual) de modo que interno à rede o tráfego seja encaminhado corretamente para 192.168.0.105 - mas fora da rede ele apenas atinge o IP residencial?
Adivinha
Eu entendo que as coisas aqui estão "funcionando como pretendido" no sentido de que meu servidor DNS está resolvendo corretamente o nome do host para o IP especificado - então, se eu estivesse tentando tudo isso na minha rede local, seria completamente funcional. O problema, eu sinto, é mascarar o IP interno fazendo com que a máquina externa conecte-se apenas ao meu IP residencial e, em seguida, haja alguma camada de bastidores que traduza o nome do host solicitado para o IP interno.
Com base em minhas leituras, suspeito que NAT possa ser o que eu estou procurando, mas eu realmente não tenho um bom contexto.