На этот вопрос уже есть ответ здесь:
У меня есть сеть Nginx сервер работает по адресу 192.168.10.1
. Кроме того, я указал на этот сервер свой домен. Этот сервер имеет общедоступный IP-адрес NAT-d через корпоративную сеть. Я могу получить доступ к своему веб-сайту из внешней сети, используя доменное имя. Однако я не могу получить доступ к этому веб-сайту с самого сервера или через сеть LAN (с сервера 192.168.10.2
)
Например, curl mydomain.example
не отвечает из сам сервер или вторичный сервер 192.168.10.2
Я могу поместить внутренний IP-адрес этого сервера в оба сервера / etc / hosts
, и curl работает нормально. Но я хочу устранить первопричину, если возможно, кто-нибудь сталкивался с подобными ситуациями? Что могло вызвать эту проблему?
Проблема в том, что вы пытаетесь получить доступ к ресурсу изнутри лэна, используя публичный адрес. Большинство маршрутизаторов путают с этим.
Есть несколько решений (которые я использовал, их может быть больше):
Какое из них вы используете, в основном, будет зависеть от настроек вашей сети и доступного оборудования. Файл хозяев самый простой, но если это ноутбук, который вы используете за пределами сети, вам придется включить/отключить правило в зависимости от того, где вы находитесь. Второй вариант хорош только в том случае, если у вас уже есть внутренняя/внешняя dns настройка, а третий будет зависеть от возможностей вашего маршрутизатора. Это та, которую я использую atm(Мой маршрутизатор - это Mikrotik). Вероятно, есть и другие решения, поэтому вы можете посмотреть другие ответы или обратиться к гуглу
.