Смапить порт с роутера на его же внешний интерфейс

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

alex158
Сообщения: 15

Смапить порт с роутера на его же внешний интерфейс

Сообщение alex158 »

Есть линуксовый роутер А через который ходит трафик на виндовый роутер B. На роутере B крутится DNS. Необходимо перенести DNS c роутера B на роутер A и при этом клиенты так и должны ходить в нет через роутер B. Служба ДНС на роутере А поднята и работает, осталось перехватить трафик на внутреннем интерфейсе А и отправить его на внеший интерфейс того же роутера A. Т.е. перенести днс при этом оставить ip днс-сервера для юзверей прежним.

Пытаюсь сделать это путем мапинга 53-го порта с внутреннего интерфейса роутера А на внешний.



Код: Выделить всё

 iptables -t nat -I PREROUTING 2 -p udp -d {ip внутреннего интерфейса роутера B} --dport 53 -j DNAT --to-destination {ip внешнего интерфейса роутера A}

Код: Выделить всё

 iptables -t nat -I PREROUTING 3 -p tcp -d {ip внутреннего интерфейса роутера B} --dport 53 -j DNAT --to-destination {ip внешнего интерфейса роутера A}


Я фактически пытаюсь с внутренего интерфейса рутера А перенаправить трафик по 53 порту адресованный на IP внутреннего интерфейса виндового рутера В, на внешний интерфейс рутера A.
При этом ничего у меня не выходит выключаю DNS на B и приехали. Видимо не получается перенаправить трафик котроый адресован не мапящему рутеру, а другому? Что не так и как всё исправить? Подскажите ПЛЗ.
Спасибо сказали:
Аватара пользователя
butch
Сообщения: 331
ОС: :OC

Re: Смапить порт с роутера на его же внешний интерфейс

Сообщение butch »

alex158 писал(а):
10.07.2009 16:40
Есть линуксовый роутер А через который ходит трафик на виндовый роутер B. На роутере B крутится DNS. Необходимо перенести DNS c роутера B на роутер A и при этом клиенты так и должны ходить в нет через роутер B. Служба ДНС на роутере А поднята и работает, осталось перехватить трафик на внутреннем интерфейсе А и отправить его на внеший интерфейс того же роутера A. Т.е. перенести днс при этом оставить ip днс-сервера для юзверей прежним.

Пытаюсь сделать это путем мапинга 53-го порта с внутреннего интерфейса роутера А на внешний.



Код: Выделить всё

 iptables -t nat -I PREROUTING 2 -p udp -d {ip внутреннего интерфейса роутера B} --dport 53 -j DNAT --to-destination {ip внешнего интерфейса роутера A}

Код: Выделить всё

 iptables -t nat -I PREROUTING 3 -p tcp -d {ip внутреннего интерфейса роутера B} --dport 53 -j DNAT --to-destination {ip внешнего интерфейса роутера A}


Я фактически пытаюсь с внутренего интерфейса рутера А перенаправить трафик по 53 порту адресованный на IP внутреннего интерфейса виндового рутера В, на внешний интерфейс рутера A.
При этом ничего у меня не выходит выключаю DNS на B и приехали. Видимо не получается перенаправить трафик котроый адресован не мапящему рутеру, а другому? Что не так и как всё исправить? Подскажите ПЛЗ.

если я правильно понял, то все очень просто.
клиенты отсылают запросы на ip адрес виндового В. а получает ответы от роутера А. соответсвенно пакеты откидываются.
через дхцп не проще отдать новый ип адрес днс сервера?
Спасибо сказали:
alex158
Сообщения: 15

Re: Смапить порт с роутера на его же внешний интерфейс

Сообщение alex158 »

Если бы такое было проще я бы не создавал тему.
Спасибо сказали:
Аватара пользователя
danger08
Сообщения: 715
ОС: Linux (CentOS, Ubuntu)

Re: Смапить порт с роутера на его же внешний интерфейс

Сообщение danger08 »

Можно действием REDIRECT.
Или парой DNAT (в PREROUTING для пакетов на 53/tcp,udp) и SNAT (для пакетов с 53/tcp,udp).

А вообще, как верно заметил butch, зря вы это делаете. Если хотите перекрыть клиентам доступ к DNS-серверам (кроме вашего), проще и правильней написать в форварде правила.
Блогосайт - http://www.fateyev.com
Спасибо сказали:
alex158
Сообщения: 15

Re: Смапить порт с роутера на его же внешний интерфейс

Сообщение alex158 »

danger08 писал(а):
10.07.2009 19:22
Если хотите перекрыть клиентам доступ к DNS-серверам (кроме вашего), проще и правильней написать в форварде правила.


Сама цель не в том чтобы перекрыть доступ к ДНС кроме того что на роутере, а в том чтобы заставить этот ДНС на роутере работать вместо нынешнего... А для этого нужно суметь перенаправить пакеты с одного междумордия на другой. Можно чуть поподробнее об REDIRECT?
Спасибо сказали:
Аватара пользователя
KiWi
Бывший модератор
Сообщения: 2521
Статус: статус, статус, статус

Re: Смапить порт с роутера на его же внешний интерфейс

Сообщение KiWi »

После прочтения первого поста единственная реакция -- чо?
Где клиенты? Какие адреса? Почему такая уверенность, что правила на роутере А будут как-то влиять на сетевой трафик(учитывая непонятное "при этом клиенты так и должны ходить в нет через роутер B", говорящее о том, что клиенты и роутер в одной подсети...)? Не легче ли запустить bind на обоих интерфейсах?
Спасибо сказали:
alex158
Сообщения: 15

Re: Смапить порт с роутера на его же внешний интерфейс

Сообщение alex158 »

Не легче, потому как на роутере А порядка 20 ipif, тот, который шлюз для клиентов - тегированный VLAN и с него по источнику роутится на B. Установить на тот самый влан ip ДНСника не могу, поскольку тогда на разных сетевых у меня будут ипы из одной подсети... Короче, жесть настоящая , не я в этом виноват и не могу сломать чтобы сделать правильно, но сделать надо. Прошу, если есть идеи как мне сделать в указных рамках, посоветуйте. Переделать потому что всё ужасно не получиться, чтобы объяснить придется рисовать схему пол дня!

Собсвенно верный кажется совет про пару DNAT и SNAT, поробую...
Спасибо сказали:
Аватара пользователя
danger08
Сообщения: 715
ОС: Linux (CentOS, Ubuntu)

Re: Смапить порт с роутера на его же внешний интерфейс

Сообщение danger08 »

alex158 писал(а):
14.07.2009 11:12
чтобы объяснить придется рисовать схему пол дня!

Это в датацентре Гугла могут полдня рисовать схему. А если у вас масштабы поскромнее, это скорее свидетельствует о неверной архитектуре сети (не учтены условия масштабируемости, и как ни прискорбно - со временем проблем будет только добавляться).

Проблема здесь в гибкости решения (и в том, что вы выдаете одно за другое). Вам нужно будет учитывать все мелочи, и одно небольшое изменение будет влиять на все. Представьте такой вариант, что на промежуточных маршрутизаторах изменится маршрут на подсеть, где расположен ваш "подменяемый" ДНС-сервер, и путь к нему ляжет в обход "NAT-разворотов" (допустим, если в вашей большой сети есть RIP, BGP, OSPF и т.п.) Аналогично, в случае с резервными каналами/балансировкой и т.п.
Блогосайт - http://www.fateyev.com
Спасибо сказали: