LINUX.ORG.RU
ФорумAdmin

Как обратиться к серверу по внешнему ip, если ты находишься в одной локальной сети с сервером?

 , ,


0

2

Здравствуйте. Ситуация следующая, сервер подключен к маршрутизатору и остальные пользователи подключаются к маршрутизатору. Пользователям необходимо обращаться к серверу по внешнему ip адресу, но при обращении он попадает на интерфейс маршрутизатора. Я так понимаю он обращается по белому ip адресу напрямую к маршрутизатору. Как можно решить эту проблему, чтобы по внешнему ip адресу он попадал на веб сервер?

Кто на ком стоял?

Если у маршрутизатора внешний ip из той же подсети что и у сервера, то нет помехи молодым. Решается NAT-ом.

из астрала подсказывают что нужен DNS views.

greek_31 ★★
()
Ответ на: комментарий от generator

Есть NAT. Используется для amocrm. Но блин все порты проброшены, извне сервер доступен, а с этого же ip я не могу обратиться

Vlady_32
() автор топика

На шлюзе в интернет есть кеширующий DNS-сервер? Если да, я бы реализовал на нём банальную подмену IP, чтобы для твоего доменного имени возвращался локальный адрес вместо нормального. Скажем, у того же dnsmasq есть соответствующая опция, которая позволяет прибить гвоздями доменное имя к IP в конфиге.

Если тебя такой вариант не устраивает, надо копать в сторону этого маршрутизатора. Тебе нужен доступ к нему из-вне? Я не знаю, что у тебя, но нормальные домашние роутеры, если не включать удалённую админку, обрабатывают запросы из локалки, но на внешний IP, как запросы к нему из-вне. Это очень удобно. В итоге запрос переадресуется кому надо согласно правилам проброса портов. Возможно, такое можно устроить и на твоём маршрутизаторе.

KivApple ★★★★★
()

Немного подправлю. Система строится немного сложней. У меня подключен статический айпи адрес и в связке работает один модем и один маршрутизатор. Первый идет модем, потом маршрутизатор. К маршрутизатору у меня подключен сервер и на нем стоит апач. Как мне попасть на свой сервер через внешний ip адрес находясь в локальной сети с сервером? Он меня почему то всегда перекидывается на интерфейс модема, когда находишься в локальной сети. А вот если находишься где то извне, то все нормально проходит. Все обращения идут на сервер. P.s. на модеме у меня включен dmz, который сразу перебрасывает на айпи маршрутизатора, а уже на маршрутизаторе проброшены порты к серверу апач

Vlady_32
() автор топика
Ответ на: комментарий от Vlady_32

Что мешает обращаться к серверу по внутреннему адресу?

Если обязательно по внешнему, то надо править фаервол на роутере. Возможно, он натирует только внешние адреса.

generator ★★★
()

Проблема не в обращении по внешнему адресу, а в том, что сервер видит пакет из локалки и отвечает инициатору напрямую в локалку, мимо машины с nat. Подобного соединения инициатор не ожидает и сбрасывает пакеты. Поэтому настраивают SNAT, заставляя подобные локальные пакеты ходить также через маршрутизатор. Ситуация описана в каждом хауту по nat.

bormant ★★★★★
()
Ответ на: комментарий от Vlady_32

Я о том, что условие - «обязательно обращаться по внешнему адресу» очень странное. Наверняка, твою проблему можно решить, обращаясь по внутреннему.

generator ★★★
()

Проброс портов на маршрутизаторе
Если обычный SOHO-роутер (дешевый *link, asus, linksys, хз что) - то в веб-админке
Если используется старый компутер x86 или борда ARM/MIPS - то настраивай NAT в своей системе (чо там у тебя - Linux, *BSD или вообще Windows)

mystery ★★
()
Ответ на: комментарий от Vlady_32

Какой DNS server? Как NAT организован? Напиши, что за маршрутизатор такой у тебя
Можешь глюк какой-то? Мой длинк тоже айпишку не кидал, пришлось команды вводить какие-то из вики DDWRT
А еще глюк может быть, что внешний IP резолвится как внутренний
Типа роутер сам определяет, что запрос был из локалки и переводить IP
Криво NAT настроен
Так у меня через IP, видный в локалке провайдера (IPoE, когда IP выдается оператором, но интернет так же есть, никаких VPN) - открывается админка
Но с компа друга открывается проброшенный по 80 порту lighttpd (он тоже подключен к провайдеру, ходил к нему в гости проверить)

mystery ★★
()
Ответ на: комментарий от mystery

Первым стоит модем Промсвязь, к которому подключается маршрутизатор TP link серии WR. Веб сервер подключается к маршрутизатору TP link. Чтобы обратиться к веб-серверу извне я настроил следующее: НА модеме Промсвязь я настроил DMZ, который переадресуется на маршрутизатор (ввел адрес маршрутизатора). НА маршрутизаторе пробросил 443 порт к веб-серверу (так как у меня запросы идут по протоколу https). Если находишься извне, то всё отлично проходит, открывается веб страничка. НО если находишься в одной локальной сети, то пишет страница недоступна.

Vlady_32
() автор топика
Ответ на: комментарий от generator

Я сразу сам не понял, почему с клиентской машины мне нужно использовать внешний ip адрес. НО потом вроде разобрался. У нас этот адрес одновременно используется в двух направлениях. ВО-первых он используется для серверов amocrm, который посылает запросы на веб-сервер (он по-любому должен быть внешним статическим). А во-вторых сам клиент тоже должен посылать запросы к этому серверу (логично бы написать сюда локальный ip адрес, но тогда серверы amocrm не смогут посылать запросы).

Vlady_32
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.