Доступ к локальному веб-серверу по одинаковым ссылкам из локалки и Интернета?

Есть локальная сеть из десятка компов. На одном из них на 3000 порту висит веб-интерфейс багтрекера. Он прекрасно открывается по адресу 192.168.31.12:3000. В качестве способа выхода в интернет в сети используется ADSL-модем DLINK со статическим IP, на котором настроен форвардинг 3000 порта на компьютер 192.168.31.12 — таким образом требуемая служба доступна также из интернета по адресу наш-статический-IP:3000.


Но вот в чем задача: когда один пользователь даёт другому ссылку на багтрекер — он никогда не знает откуда второй эту ссылку откроет — из локалки или из интернета. В итоге в ссылках постоянно приходится менять внутренний IP-адрес на внешний и наоборот. Проблема усугубляется тем, что багтрекер рассылает письма со ссылками на задачи и эти ссылки, опять таки, работают либо из локалки, либо из интернета.


Нельзя ли как-то настроить что-то (форвардинг портов, роутинг, модем, багтрекер) чтобы по одной ссылке (скажем с использованием глобального статического IP) веб-интерфейс открывался и в локальной сети и из интернета?
  • Вопрос задан
  • 5718 просмотров
Пригласить эксперта
Ответы на вопрос 5
divanikus
@divanikus
Настройте разрешение имен и будет вам счастье. Банальнейший способ — на модеме повесить что-нибудь вроде dyndns, а на локальных машинах прописать это же имя но с внутренним айпи в hosts.
Можно конечно и кэширующий DNS настроить в локалке, но это уже как микроскопом гвозди забивать :)
Ответ написан
StrangeAttractor
@StrangeAttractor
Не понял что такое «глобальный статический IP», чем он отличается от «нашего-статического-IP» и почему у Вас из локалки нельзя обратиться к интернетовскому айпишнику.
Ответ написан
Привязать домен к внешнему IP, а внутри локалки прописать его на внутренний IP в hosts (самый простой способ)
Ответ написан
@bagger
программист
Упс… случайно отправился коммент… Продолжение:

Для ISC BIND это конфигурируется с помощью директивы view:
view «view_name» [class] {
[ match-clients { address_match_list }; ]
[ match-destinations { address_match_list }; ]
[ match-recursive-only { yes | no }; ]
// view statements
// zone clauses
};

Давно это не настраивал, но если решение подходит, то готов помочь с конкретным конфигом ;-)
Ответ написан
@bagger
программист
Как вариант решения проблемы, если у Вас есть собственный DNS-сервер в интернете с делегированной на него зоной, и этим DNS-сервером пользуются клиенты вашей локалки, то возможно настроить его таким образом, чтобы на запросы с определенного блока IP-адресов он отдавал одни адреса, а с другого — другие.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы