I am assuming it would go out to public DNS servers and do this lookup, then connect outbound, then back inbound, to hit the router and be port forwarded correctly.
Nesse caso, home.mydomain.com
será resolvido para o seu IP externo. De dentro do NAT, o IP externo se refere ao próprio roteador. O roteador só executa conversão de endereço / encaminhamento de porta em conexões de entrada do lado de fora do NAT. Então você não conseguirá uma conexão, apenas um RST do roteador.
So I believe there are really two parts in play here, the DNS lookup and the port forwarding. How can I keep all of this internal, when on our private network at home?
Uma maneira de fazer isso é executar o seu próprio resolvedor DNS de cache recursivo (como BIND ) em seu computador interno. rede. Configure todos os clientes em sua rede interna (usando DHCP ou manualmente) para consultar seu servidor DNS em vez de um externo público. O BIND pode ser configurado em uma configuração Split DNS (consulte o capítulo 4.4 do BIND ARM ). Nesta configuração, o BIND encaminhará todas as solicitações, exceto as do domínio interno (que serão respondidas com os endereços internos). A zona DNS autoritativa do seu domínio (hospedada na internet em algum lugar) ainda deve apontar para o IP externo da sua casa.
Quando você pesquisar home.mydomain.com
em um servidor DNS externo, receberá o IP externo do roteador (que encaminhará a porta 9876 para a máquina interna apropriada). No entanto, na sua rede interna, o seu resolvedor DNS responderá com um endereço IP diferente (192.168.0.x) e a conexão ocorrerá internamente.