Не знаю как назвать (обратный NAT)
Модераторы: Trinity admin`s, Free-lance moderator`s
- gorlum
- Advanced member
- Сообщения: 137
- Зарегистрирован: 18 июн 2004, 11:43
- Откуда: Ангарск
- Контактная информация:
Не знаю как назвать (обратный NAT)
задача в следующем: необходимо все, что проходит из вне на порт 222 прокидывалось на другую машину в локальной сети на этотже порт.
Подскажите пожалуйста чайнику как это сделать
FreeBSD 4.9
заранее спасибо
Подскажите пожалуйста чайнику как это сделать
FreeBSD 4.9
заранее спасибо
-
- Advanced member
- Сообщения: 103
- Зарегистрирован: 04 окт 2004, 15:07
Re: Не знаю как назвать
man natd в части redirect-port после чего аккуратно строим divert правила для прямого и обратного трафика. Ну, и полезно при этом научиться пользоваться tcpdump, чтобы видеть - что происходит с пакетами, приходящими на определенный адрес.gorlum писал(а):задача в следующем: необходимо все, что проходит из вне на порт 222 прокидывалось на другую машину в локальной сети на этотже порт.
Подскажите пожалуйста чайнику как это сделать
FreeBSD 4.9
заранее спасибо
Если natd еще не работает - то надо ядро пересобрать с опциями для работы natd.
Это для случая, когда нужен IP удаленного клиента.
Если IP пофигу - то можно просто поставить redir из портов
Port: redir-2.2.1
Path: /usr/ports/net/redir
Info: A tcp connection redirection utility
-
- Advanced member
- Сообщения: 103
- Зарегистрирован: 04 окт 2004, 15:07
- Stranger03
- Сотрудник Тринити
- Сообщения: 12979
- Зарегистрирован: 14 ноя 2003, 16:25
- Откуда: СПб, Екатеринбург
- Контактная информация:
Re: Не знаю как назвать
Обратный нат,gorlum писал(а):задача в следующем: необходимо все, что проходит из вне на порт 222 прокидывалось на другую машину в локальной сети на этотже порт.
man natd
man ipfw
Примеров настройки нат-а полно, на том же opennet.ru.
- gorlum
- Advanced member
- Сообщения: 137
- Зарегистрирован: 18 июн 2004, 11:43
- Откуда: Ангарск
- Контактная информация:
Re: Не знаю как назвать
вот вот я вроде с того-же opennet настройки беру,да вот не задача не работает:), может подскажете что для того чтоб посмотреть что с пакетами происходит и куда они уходят.Stranger03 писал(а): Примеров настройки нат-а полно, на том же opennet.ru.
Заранее спасибо.
-
- Advanced member
- Сообщения: 103
- Зарегистрирован: 04 окт 2004, 15:07
Re: Не знаю как назвать
Смотреть можно с помощью tcpdump -pnvi fxp0 port 222, затем то же самое на втором интерфейсе. Проверять коннект снаружи можно просто телнетом.gorlum писал(а):вот вот я вроде с того-же opennet настройки беру,да вот не задача не работает:), может подскажете что для того чтоб посмотреть что с пакетами происходит и куда они уходят.Stranger03 писал(а): Примеров настройки нат-а полно, на том же opennet.ru.
Заранее спасибо.
Вкратце из рабочего конфига:
/etc/natd.conf
dynamic yes
same_ports yes
use_sockets yes
unregistered_only
#
#deny_incoming
#
redirect_port tcp 192.168.0.5:222 222
#
/sbin/natd -f /etc/natd.conf -n fxp0
/etc/rc.firewall
ipfw add divert 8668 tcp from any to me 222 in via fxp0
ipfw add divert 8668 ip from any to any via fxp0
Второе правило divert выпускает ответные пакеты изнутри. И пусть попробует незаработать.

- Stranger03
- Сотрудник Тринити
- Сообщения: 12979
- Зарегистрирован: 14 ноя 2003, 16:25
- Откуда: СПб, Екатеринбург
- Контактная информация:
Re: Не знаю как назвать
Ну вот здесь я бы добавил outAndrey Y. Ostanovsky писал(а): ipfw add divert 8668 tcp from any to me 222 in via fxp0
ipfw add divert 8668 ip from any to any via fxp0
ipfw add divert 8668 ip from any to any via fxp0 out
Ну и не стал бы писать any, определил адреса типа 192.168.0.0/24. А так это правило будет заворачивать абсолютно все пакеты, даже локальные. Нафиг это надо/
-
- Advanced member
- Сообщения: 103
- Зарегистрирован: 04 окт 2004, 15:07
Re: Не знаю как назвать
С этим, в контексте данной задачи, абсолютно согласен. У меня по второму правилу остальные в инет ходят.Stranger03 писал(а):Ну вот здесь я бы добавил outAndrey Y. Ostanovsky писал(а): ipfw add divert 8668 tcp from any to me 222 in via fxp0
ipfw add divert 8668 ip from any to any via fxp0
ipfw add divert 8668 ip from any to any via fxp0 out
Ну и не стал бы писать any, определил адреса типа 192.168.0.0/24.
А вот это вряд ли.Stranger03 писал(а): А так это правило будет заворачивать абсолютно все пакеты, даже локальные. Нафиг это надо/

- Stranger03
- Сотрудник Тринити
- Сообщения: 12979
- Зарегистрирован: 14 ноя 2003, 16:25
- Откуда: СПб, Екатеринбург
- Контактная информация:
Re: Не знаю как назвать
Ну да, ну да, :oops:, вы правы, :twisted:.Andrey Y. Ostanovsky писал(а):А вот это вряд ли.Если пакет стал "via fxp0" то он явно, по условиям маршрутизации, должен пойти наружу. Причем именно "via", т.е., "через". Под это правило не должны попадать запросы непосредственно к интерфейсу fxp0.
Re: Не знаю как назвать
а вот и не правдаAndrey Y. Ostanovsky писал(а):Stranger03 писал(а):Andrey Y. Ostanovsky писал(а): А вот это вряд ли.Если пакет стал "via fxp0" то он явно, по условиям маршрутизации, должен пойти наружу. Причем именно "via", т.е., "через". Под это правило не должны попадать запросы непосредственно к интерфейсу fxp0.
via - это не значит "через".
Вообще что такое пакет проходит "через" интерфейс ?
Пакет может быть либо получен интерфейсом, либо послан
так вот под via попадают оба этих условия
для филигранной точности надо добавить модификаторы in recv, out xmit
кому интересно http://www.unixfaq.ru/index.pl?req=qs&id=485
там все хорошо рассказано.
Ну и man 8 ipfw
-
- Power member
- Сообщения: 45
- Зарегистрирован: 22 окт 2004, 18:10
- Откуда: Украина
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 28 гостей