The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"ipnat на работающей системе"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"ipnat на работающей системе" 
Сообщение от Ert Искать по авторуВ закладки on 23-Ноя-05, 01:36  (MSK)
Подскажите, как запустить ipnat вместо natd, не компилируя ядро.
Выполняю kldload ipl, ipfilter загрузился.
Далее делаю /sbin/ipfilter -CF -f /etc/ipnat.rules
0 entries flushed from NAT table
1 entries flushed from NAT list
Cам ipnat.rules:
map rl1 10.1.0.0/24 -> 213.226.189.0/24

rl1 - внешний, 213.226.135.2 rl0 - 10.1.1.1

Выполняю ipnat -l нет никаких сессий.!

  Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]

1. "ipnat на работающей системе" 
Сообщение от vvvua emailИскать по авторуВ закладки(ok) on 23-Ноя-05, 01:41  (MSK)
ipnat -FC
ipnat -f /etc/ipnat.rules

Файл /etc/ipnat.rules:

map rl1 from 10.1.0.0/24 to any -> 213.226.135.2/32

>Подскажите, как запустить ipnat вместо natd, не компилируя ядро.
>Выполняю kldload ipl, ipfilter загрузился.
>Далее делаю /sbin/ipfilter -CF -f /etc/ipnat.rules
>0 entries flushed from NAT table
>1 entries flushed from NAT list
>Cам ipnat.rules:
>map rl1 10.1.0.0/24 -> 213.226.189.0/24
>
>rl1 - внешний, 213.226.135.2 rl0 - 10.1.1.1
>
>Выполняю ipnat -l нет никаких сессий.!


  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "ipnat на работающей системе" 
Сообщение от Ert Искать по авторуВ закладки on 23-Ноя-05, 10:30  (MSK)
Так и сделал - ничего. Может фиревалл настроить надо еще?

/sbin/ipfw add 98 divert natd all from 10.1.0.0/23 to any out via rl1
/sbin/ipfw add 99 divert natd all from any to 213.226.189.0/24 in via rl1

>ipnat -FC
>ipnat -f /etc/ipnat.rules
>
>Файл /etc/ipnat.rules:
>
>map rl1 from 10.1.0.0/24 to any -> 213.226.135.2/32
>
>>Подскажите, как запустить ipnat вместо natd, не компилируя ядро.
>>Выполняю kldload ipl, ipfilter загрузился.
>>Далее делаю /sbin/ipfilter -CF -f /etc/ipnat.rules
>>0 entries flushed from NAT table
>>1 entries flushed from NAT list
>>Cам ipnat.rules:
>>map rl1 10.1.0.0/24 -> 213.226.189.0/24
>>
>>rl1 - внешний, 213.226.135.2 rl0 - 10.1.1.1
>>
>>Выполняю ipnat -l нет никаких сессий.!


  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "ipnat на работающей системе" 
Сообщение от vvvua emailИскать по авторуВ закладки(ok) on 23-Ноя-05, 11:45  (MSK)
divert вообще убрать надо.
Это с другой оперы.
И natd покилять.
Запись 213.226.189.0/24 ошибочна.
Я свой конфиг прислал, он работает. FreeBSD 5.4

>Так и сделал - ничего. Может фиревалл настроить надо еще?
>
>/sbin/ipfw add 98 divert natd all from 10.1.0.0/23 to any out via
>rl1
>/sbin/ipfw add 99 divert natd all from any to 213.226.189.0/24 in via
>rl1
>
>>ipnat -FC
>>ipnat -f /etc/ipnat.rules
>>
>>Файл /etc/ipnat.rules:
>>
>>map rl1 from 10.1.0.0/24 to any -> 213.226.135.2/32
>>
>>>Подскажите, как запустить ipnat вместо natd, не компилируя ядро.
>>>Выполняю kldload ipl, ipfilter загрузился.
>>>Далее делаю /sbin/ipfilter -CF -f /etc/ipnat.rules
>>>0 entries flushed from NAT table
>>>1 entries flushed from NAT list
>>>Cам ipnat.rules:
>>>map rl1 10.1.0.0/24 -> 213.226.189.0/24
>>>
>>>rl1 - внешний, 213.226.135.2 rl0 - 10.1.1.1
>>>
>>>Выполняю ipnat -l нет никаких сессий.!


  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "ipnat на работающей системе" 
Сообщение от Ert Искать по авторуВ закладки on 23-Ноя-05, 12:21  (MSK)
Может я чего-то недопонимаю?? Работает только еслю делаю в firewalle на все разрешение. А как же тогда принудительно засунуть траффик в dummynet? И через какой работает порт ipnat?
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "ipnat на работающей системе" 
Сообщение от Ert Искать по авторуВ закладки on 23-Ноя-05, 14:05  (MSK)
Ну помогите, никак не могу разобраться.... В ipnat.rules пишу
map rl1 10.1.0.5/32 -> 213.226.135.5/32

в /etc/rc.firewall

ipfw add 1229 pipe 1174 ip from 10.1.0.5 to any out via rl1

ipfw add 1230 pipe 1175 ip from any to 213.226.135.5 in via rl1


и нет никакого ограничения, счетчики крутятся... Как понимаю пакеты уходят от 10.1.0.5, на rl1 а возвращаются к 213.226.135.5 на rl1
как выставит ограничение конкретному пайпу?

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

7. "ipnat на работающей системе" 
Сообщение от vvvua emailИскать по авторуВ закладки(ok) on 23-Ноя-05, 14:54  (MSK)
Жать надо на внутреннем интерфейсе, а не внешнем. Допустим, к юзерам rl0 смотрит:

ipfw pipe 1 config bw 64kbit/s delay 10ms
ipfw pipe 2 config bw 64kbit/s delay 10ms
ipfw add pipe 1 ip from 10.1.0.0/24 to any in recv rl0
ipfw add pipe 2 ip from any to 10.1.0.0/24 out via rl0
ipfw add allow ip from any to any via rl0

Если не получиться, пришли "ifconfig -a" , "ipfw sh", "ipnat -l".

>Ну помогите, никак не могу разобраться.... В ipnat.rules пишу
>map rl1 10.1.0.5/32 -> 213.226.135.5/32
>
>в /etc/rc.firewall
>
>ipfw add 1229 pipe 1174 ip from 10.1.0.5 to any out via
>rl1
>
>ipfw add 1230 pipe 1175 ip from any to 213.226.135.5 in via
>rl1
>
>
>и нет никакого ограничения, счетчики крутятся... Как понимаю пакеты уходят от 10.1.0.5,
>на rl1 а возвращаются к 213.226.135.5 на rl1
>как выставит ограничение конкретному пайпу?


  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "ipnat на работающей системе" 
Сообщение от Provokator Искать по авторуВ закладки(ok) on 23-Ноя-05, 14:07  (MSK)
>Может я чего-то недопонимаю?? Работает только еслю делаю в firewalle на все
>разрешение. А как же тогда принудительно засунуть траффик в dummynet? И
>через какой работает порт ipnat?


Что значит засунуть траффик в дамминет ?Ты ограничить скорость хочешь, чтоли ?

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

8. "ipnat на работающей системе" 
Сообщение от Ert Искать по авторуВ закладки on 23-Ноя-05, 19:36  (MSK)
Спасибо, помогли!!! Может еще подскажете, как сделать полный редирект всех портов, т.е. чтобы пользователь мог запускать ftp, web, в emule был high ID. А то мой выше написанный конфиг как-то не работает?


  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

9. "ipnat на работающей системе" 
Сообщение от Ert Искать по авторуВ закладки on 24-Ноя-05, 09:39  (MSK)
Мне просто объясните, если не трудно, принцип работы ipfw - а то весь инет перерыл, ничего не нахожу, да и в мануале не растолковано.

Есть сеть

______       ___________________     ____________________      ________
INET |______|rl1 213.226.135.5 |____| rl0 10.1.0.5/23   |____|LAN     |
______|      |__________________|    |___________________|    |________|

Пакет идет наружу из 10.1.0.0/23 - он попадает в rl0, сразу же вопрос - почему надо именно резать траффик на rl0, ведь тогда все равно до rl1 у пользователя с инета скачается на максимальной скорости, забьется канал, а только будет ограничения на интерфейсе rl0.
Второй вопрос - почему  

/sbin/ipfw add 1106 pipe 1051 all from any to 10.1.0.28 out via rl0
/sbin/ipfw add 1107 pipe 1052 all from 10.1.0.28 to any in via rl0

Как бы должно быть по всем правилам 1051 "from any to 10.1.0.28 in via rl0" ведь пакет приходит из инета на адрес 10.1.0.28??
Аналогично и 1052, ведь пакет выходит через rl0?

При выходе через интерфейс rl1, ип адрес ipnat меняет на 213.189.135.5

Почему не работает конструкция, с которой, как я думаю, не было бы проблем с открытыми портами, т.к. я хочу чтобы клиентский компьютер был полностью доступен из инета:

/sbin/ipfw add 1108 pipe 1051 all from any to 213.226.189.5 in via rl1


или же

/sbin/ipfw add 1108 pipe 1051 all from any to 10.1.0.5 in via rl1

Надеюсь только на вашу помощь, хоть носом ткните, только не в мануал...:)

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

10. "ipnat на работающей системе" 
Сообщение от vvvua emailИскать по авторуВ закладки(ok) on 24-Ноя-05, 12:25  (MSK)
Да, давно я столько вопрсов не получал :)

В бсд системах есть как минимум 3 системы работы с пакетами.
1. Исторически первый - ipfw
2. ipfilter
3. pf (Packet filter, вроде)

Все они умеют делать почти одно и то же но по-разному и с той или иной специализацией.
Как по мне, то ipfilter наиболее удачно сделан.

В системе могут существовать все 3 вид фильтров одновременно.
NAT (он же SNAT в линухах) нужен для подмены ИСХОДЯЩЕГО адреса (source).
В ipfw он не был реализован, поэтому сделали демон пользовательского уровня natd и на него стали передавать пакеты путем divert.

ipnat это только утилита управления NAT'ом и сопутсвующими функциями из пакета программ ipfilter.

Для того, чтобы машина была видна ИЗ инета, то нужно использовать map по портам. Эта технология зовется PNAT (в линухах DNAT, от слова destination). Пример проброса порта 22 на локальную машину:
rdr fxp1 213.226.135.5/32 port 22 -> 10.1.0.28 port 22 tcp

Можно, конечно и полностью айпишник пробросить, но это в мануалах читай - долго объяснять.

Ну а на счет in/out в правилах, то это модификаторы относительно данного интерфейса. Т.е. пакет может быть входящим либо исходящим относительно данного интерфейса.

Ну а жать на входящем интерфейсе потому, что на сетевуху вторую уже должно попасть с новым адресом.


P.S. одно из предназначений NAT - защита от от доступа с внешних адресов.
Пробить NAT практически невозможно.

>Мне просто объясните, если не трудно, принцип работы ipfw - а то
>весь инет перерыл, ничего не нахожу, да и в мануале не
>растолковано.
>
>Есть сеть
>
>______       ___________________    
>____________________      ________
> INET |______|rl1 213.226.135.5 |____| rl0 10.1.0.5/23   |____|LAN  
>  |
>______|      |__________________|    |___________________|  
>  |________|
>
>Пакет идет наружу из 10.1.0.0/23 - он попадает в rl0, сразу же
>вопрос - почему надо именно резать траффик на rl0, ведь тогда
>все равно до rl1 у пользователя с инета скачается на максимальной
>скорости, забьется канал, а только будет ограничения на интерфейсе rl0.
>Второй вопрос - почему
>
>/sbin/ipfw add 1106 pipe 1051 all from any to 10.1.0.28 out via
>rl0
>/sbin/ipfw add 1107 pipe 1052 all from 10.1.0.28 to any in via
>rl0
>
>Как бы должно быть по всем правилам 1051 "from any to 10.1.0.28
>in via rl0" ведь пакет приходит из инета на адрес 10.1.0.28??
>
>Аналогично и 1052, ведь пакет выходит через rl0?
>
>При выходе через интерфейс rl1, ип адрес ipnat меняет на 213.189.135.5
>
>Почему не работает конструкция, с которой, как я думаю, не было бы
>проблем с открытыми портами, т.к. я хочу чтобы клиентский компьютер был
>полностью доступен из инета:
>
>/sbin/ipfw add 1108 pipe 1051 all from any to 213.226.189.5 in via
>rl1
>
>
>или же
>
>/sbin/ipfw add 1108 pipe 1051 all from any to 10.1.0.5 in via
>rl1
>
>Надеюсь только на вашу помощь, хоть носом ткните, только не в мануал...:)
>


  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх


Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру