LINUX.ORG.RU

IPTABLES DNAT Need your help! =)


0

0

Народ! Подскажите как мне сделать это =) У меня есть веб сервер, который стоит за шлюзом т.е. в локалке, а точнее в ДМЗ. На шлюзе написано правило которое перекидывает 80 порт с внешнего ИПА на мой внутр. веб-сервер. Потом я добавил правило которое при обращении на мой веб-сервер по порту 50501, т.е. набираем www.domain.ru:50501, перекидывало это соединение на 192.168.0.166 - и все замечательно из Инета работает! Потом от меня потребывалось сделать так что бы и из локалки при наборе www.domain.ru:50501 попадать на 192.168.0.166 и тут я уже че только не делал все не получается!

Одна надежда что тут кто подскажит!

И так что имеем:

195.1.2.4 - $EXT_IP - внешний ip;

195.1.2.5 - $EXT_IP_WEB_SRV - внешний ip для HTTP (алиас);

192.168.0.1 - $LOCAL_GW_IP - внутр. ip шлюза;

192.168.4.2 - $LOCAL_HTTP_IP - внут. ip HTTP сервака;

192.168.0.166 - $LOCAL_HTTP_SRV_IP_PORT_50501 - др. машина на которую должно все перекидываться при наборе www.domain.ru:50501 из локалки.


Я думаю, что DNAT привило для пакетов из локалки в осилили написать, думаю, что оно даже работате и меняет dst-ip пакетов, и пакеты даже приходят на 192.168.0.166:50501, но у них ведь остается старый src-ip? И 192.168.0.166 отвечает на эти запросы напрямую... Если так, то либо на web-сервере не только DNAT но и SNAT, либо 192.168.0.166 маршрут (fw mark + ip rule).

mky ★★★★★
()

> Потом от меня потребывалось сделать так что бы и из локалки при наборе www.domain.ru:50501 попадать на 192.168.0.166 и тут я уже че только не делал все не получается!

В локалке bind стоит? Пропиши этому доменному имени в локальном бинде нужный айпишник и c DNAT не заморачивайся. Если bind не стоит, то поднимай. Никакого вреда, кроме пользы не будет.

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

Все, ребята не парьтесь! Решил проблему в итоге за 4 минуты. Вспомнил что есть свободный ip в инет, а в bind прописал типа такого:

good A 195.2.4.15

в iptables добавил правило на проброс на 0.166 порт 50501 т.к. владелец этой машины и сервиса (IIS) корорый должен быть доступен из Инета только по порту 50501 " - Так безопасней!" =))

В итоге получил:

good.domain.ru:50501

и из локалки все работает шоколадно! =)

В любом случае всем большое спасибо т.к. именно разговор про bind`ы навел меня на это!

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