Parece que você quer configurar DNS de split horizon . Ou seja, você deseja ter um servidor DNS que "saiba" sobre os endereços IP privados e os nomes de seus servidores. Seus servidores podem usar esse servidor DNS para resolver nomes para seus endereços IP privados em vez dos endereços públicos que seus servidores DNS voltados para o público resolverão.
Você não menciona qual software de servidor DNS está usando (ou mesmo se estiver hospedando seu próprio DNS). O BIND tem a funcionalidade exibições que pode fazer o que você precisa. Outros softwares de servidores DNS provavelmente têm funcionalidade semelhante (eu só uso o BIND no Linux, por isso não posso falar por experiência).
Se você não estiver hospedando DNS para seu domínio e não conseguir que seu provedor de DNS use os modos de exibição, considere a possibilidade de configurar seu próprio servidor DNS atrás de seu dispositivo NAT e configurar seus servidores para usá-lo.
Se você tiver hosts com nomes em seu domínio localizados fora do seu dispositivo NAT, verifique se o servidor DNS interno (ou a visualização) retorna corretamente os endereços IP públicos desses hosts.
Editar:
Como o @BillThor diz, para que seus servidores resolvam nomes não qualificados para registros em seu domínio, você precisará adicionar uma linha search domain.tld
aos servidores ' /etc/resolv.conf
.