Eu tenho um servidor web Nginx rodando no 192.168.10.1
endereço. Além disso, apontei meu domínio para este servidor. Este servidor possui IP público NAT-d através da rede corporativa. Posso acessar meu site de uma rede externa usando o nome de domínio. No entanto, não consigo acessar este site a partir do próprio servidor ou pela rede LAN (do 192.168.10.2
servidor)
Por exemplo, curl mydomain.example
não responde do próprio servidor ou do servidor secundário192.168.10.2
Na verdade, posso colocar o endereço IP interno deste servidor dentro do servidor /etc/hosts
e o curl funciona bem. Mas eu quero resolver a causa raiz se possível, alguém enfrentou situações semelhantes? O que poderia estar causando esse problema?
O problema é que você está tentando acessar o recurso de dentro da lan usando um endereço público. A maioria dos roteadores se confunde com isso.
Existem várias soluções (que eu usei, pode haver mais):
Qual deles você usa dependerá principalmente da configuração da sua rede e do hardware disponível. O arquivo hosts é o mais simples, mas se for um laptop que você usa fora da rede também, você terá que habilitar/desabilitar a regra dependendo de onde você estiver. A segunda opção só é boa se você já tiver uma configuração de dns interna/externa, e a terceira dependerá das capacidades do seu roteador. É o que eu uso atm(Meu roteador é um Mikrotik). Provavelmente existem mais soluções por aí, então você pode procurar outras respostas ou google.