Isso se chama hairpinning e, embora alguns roteadores domésticos possam fazer isso, eles são raros - isso é uma questão para pesquisa.
O uso do DNS dividido costuma ser uma maneira melhor de abordar esse tipo de problema. Normalmente, quando é necessário acessar o endereço IP público de dentro da rede, é porque existe um dispositivo que precisa acessar um recurso interno de dentro e fora da rede. Ele está configurado para usar o endereço público quando estiver fora, mas precisa ser reconfigurado para usar o endereço privado quando estiver interno.
O uso do DNS dividido pode resolver esse problema usando um serviço DNS público para o endereço externo, mas executando um servidor DNS interno que serve ao endereço IP interno para a mesma entrada DNS.
Digamos, por exemplo, que seu endereço IP 1.2.3.4 tenha o nome de dns myserver.domain.com
, que funciona quando é externo à sua rede. Em seguida, você instalaria um servidor DNS de encaminhamento em sua rede interna, talvez no servidor 10.4.3.100
. Ele teria um arquivo de zona para myserver.domain.com
, resolvendo o endereço myserver.domain.com
para 10.4.3.100
. Defina isso para ter um TTL baixo para que ele não fique em cache por muito tempo.
Você usaria seu servidor DNS interno para qualquer resolução de nome enquanto estivesse em sua rede, encaminhando quaisquer solicitações para as quais não possa se resolver em seu ISP.
Você poderia então configurar qualquer aplicativo para não usar 1.2.3.4
, mas para usar myserver.domain.com
, e eles funcionariam tanto dentro quanto fora da rede.