URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 84296
[ Назад ]

Исходное сообщение
"Началась работа над обновленной реализацией ipfw для FreeBSD"

Отправлено opennews , 26-Апр-12 11:50 
Вадим Гончаров сообщил в своем блоге (http://nuclight.livejournal.com/130012.html) о начале работ над ipfw ng (http://wiki.freebsd.org/IpfwNg) - обновленной реализацией пакетного фильтра ipfw для FreeBSD.


Основные задачи проекта:


-  Не переписывание всего ipfw с нуля, а улучшение и оптимизация текущей реализации;
-  Введение поддержки множественных наборов правил (multiple rulesets - аналог Cisco ACLs), которые позволят задавать отдельные наборы правил для разных интерфейсов и входящих/исходящих пакетов);
-  Новая реализация динамических правил с унифицированной системой отслеживания состояния соединений;
-  Поддержка модулей фильтрации уровня ядра и уровня пользователя;
-  Более тесная интеграция с netgraph.

URL: http://nuclight.livejournal.com/130012.html
Новость: http://www.opennet.me/opennews/art.shtml?num=33700


Содержание

Сообщения в этом обсуждении
"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено Аноним , 26-Апр-12 11:50 
>>В честь 26 годовщины 26 апреля уволился с текущей работы и таки наконец начал проект http://wiki.freebsd.org/IpfwNg

Уважаю человека, все делает ради FreeBSD.


"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено Аноним , 26-Апр-12 14:33 
26 апреля? Ах да, 1986 год. Оптимистичное начало...

"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено Аноним , 26-Апр-12 11:53 
Еще бы писали оценочное время, сколько требуется хотя бы для выпуска бета-релиза.

"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено oops , 26-Апр-12 13:42 
это вы о чем? какое оценочное время? ему ж не грант выделили, это энтузиазм.

"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено анон , 26-Апр-12 12:19 
В этом вашем ipfw dnat как был гемороем, так и остался?

"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено Анонимз , 26-Апр-12 12:29 
В чем проблеиа с dnat?
Лимит на количество redirect_port? Лимит давно уже починили.

"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено анон , 26-Апр-12 16:23 
В том же iptables, чтобы пробросить порт нужно только правило. А сколько нужно телодвижений в ipfw?

"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено nuclight , 26-Апр-12 17:03 
Вот за этим, в том числе, проект и начат.

"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено ragus , 26-Апр-12 19:30 
> Вот за этим, в том числе, проект и начат.

кастую ipfw в качестве ноды netgraph!!!! =)


"что ж оригинал-то никто не читает"
Отправлено nuclight , 26-Апр-12 22:06 
А ссылко прочитать? Это и будет.

"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено light , 26-Апр-12 22:26 
какое же? )))
мне потребовалось три, и то перестало работать после добавления еще одного ипа на интерфейс
на фре есть просто ipnat с простейшим текстовым конфигом

"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено ragus , 27-Апр-12 13:43 
> какое же? )))
> мне потребовалось три, и то перестало работать после добавления еще одного ипа
> на интерфейс

правило в студию.

> на фре есть просто ipnat с простейшим текстовым конфигом

оно давно уже плохо пахнет.


"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено light , 27-Апр-12 14:58 
:~# iptables -nL -t nat
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination        
DNAT       tcp  --  0.0.0.0/0            100.100.100.254     tcp dpt:2022 to:10.122.1.3:22

* * * * * * *

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination        
SNAT       tcp  --  10.122.1.3           0.0.0.0/0           tcp spt:22 to:100.100.100.254:2022
SNAT       tcp  --  0.0.0.0/0            10.122.1.3          tcp dpt:22 to:100.100.100.254


до добавления второго ипа на интерфейсе 100.100.100.254 работало
всякие эксперименты найденные через гугл в виде одной, двух строк - не работали однозначно


"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено ragus , 27-Апр-12 16:07 
> :~# iptables -nL -t nat

лучше выхлоп iptables-save


"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено light , 28-Апр-12 23:13 
iptables-save не юзаю
по привычке с фри закидываю правила в файл, в котором первыми строками - сном всех правил

достаточно подредактировать файл и запустить его


"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено ragus , 28-Апр-12 23:19 
> iptables-save не юзаю
> по привычке с фри закидываю правила в файл, в котором первыми строками
> - сном всех правил

ну и зря. потому как iptables-save/iptables-restore атомарны.
кроме того, выгружают набор из всех таблиц.


"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено light , 28-Апр-12 23:20 
*снос

а в файле оно выглядит так -

/sbin/iptables -I PREROUTING -i eth0 -d 100.100.100.254 -p tcp -m tcp --dport 2022 -j DNAT --to-destination 10.122.1.3:22 -t nat
/sbin/iptables -I POSTROUTING -o eth0 -s 10.122.1.3 -p tcp -m tcp --sport 22 -j SNAT --to-source 100.100.100.254:2022 -t nat
/sbin/iptables -A POSTROUTING -d 10.122.1.3 -p tcp --dport 22 -j SNAT --to-source 100.100.100.254 -t nat


"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено ragus , 28-Апр-12 23:28 

> /sbin/iptables -I PREROUTING -i eth0 -d 100.100.100.254 -p tcp -m tcp --dport
> 2022 -j DNAT --to-destination 10.122.1.3:22 -t nat

а что за -t nat ?
если вы так указываете так таблицу, то в man iptables совершенного другой SYNOPSIS.



"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено ragus , 28-Апр-12 23:34 
> *снос
> а в файле оно выглядит так -
> /sbin/iptables -I PREROUTING -i eth0 -d 100.100.100.254 -p tcp -m tcp --dport
> 2022 -j DNAT --to-destination 10.122.1.3:22 -t nat
> /sbin/iptables -I POSTROUTING -o eth0 -s 10.122.1.3 -p tcp -m tcp --sport
> 22 -j SNAT --to-source 100.100.100.254:2022 -t nat
> /sbin/iptables -A POSTROUTING -d 10.122.1.3 -p tcp --dport 22 -j SNAT --to-source
> 100.100.100.254 -t nat

и достаточно было всего 1 правила:

/sbin/iptables -t nat -A PREROUTING -d 100.100.100.254 -p tcp -m tcp --dport 2022 -j DNAT --to-destination 10.122.1.3:22


"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено alex_tesla , 27-Апр-12 04:52 
У меня ядро собрано с "options IPFIREWALL_NAT", поэтому проброс порта (или портов) выполняется одним правилом. Например:
${FwCMD} nat 5 config log redirect_port tcp ${PPTPServer}:pptp ${VirtualServer}:pptp

"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено Ян Злобин , 28-Апр-12 07:27 
> В том же iptables, чтобы пробросить порт нужно только правило. А сколько нужно телодвижений в ipfw?

Ты не проверишь, одно.


"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено StreamThreader , 26-Апр-12 12:21 
Главное что бы к нему мануалы были понятные!

"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено Аноним , 26-Апр-12 12:30 
Расскажите пожалуйста, чем оно лучше/хуже PF? И зачем конкуренция внутри базовой системы?

"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено Анонимз , 26-Апр-12 12:33 
пф портируют, а ipfw родной.
ipfw быстрей работает и интегрируем с netgraph.

"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено Аноним , 26-Апр-12 12:48 
> Расскажите пожалуйста, чем оно лучше/хуже PF? И зачем конкуренция внутри базовой системы?

pf не параллелится.


"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено Олег , 26-Апр-12 12:52 
Раньше тоже пользовали PF, пока не возросли нагрузки. При сегодняшних скоростях и типах трафика неродной PF уже не справляется. ALTQ - отдельная пестня, как он теряет пакеты на шейпинге-не передать словами. ng_car даёт ему 100 очков вперед. Вообще связка ipfw и ng - невероятно гибкая и очень мощная.
С некоторого времени мы делаем авторизаторы и маршрутизаторы и шейперы на машинках на базе inetl atom - мега зашибись, себя оправдывает over9000. Стоит 10-15к, не греется не шумит, грузится с флешки с nanobsd, очень практично и удобно. Габариты мелкие. Супер.
И каждый такой ящичек обслуживает 500-1000 клиентов одновременно, шейпит, натит, роутит, авторизует по единому радиусу. При этом даже не грузится ничуть.

"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено Аноним , 26-Апр-12 15:31 
Просто сказка какая то, а сколько килопакетов в секунду пропускает это чудо?

"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено Олег , 26-Апр-12 15:35 
> Просто сказка какая то, а сколько килопакетов в секунду пропускает это чудо?

50-60к. Ну это то, что я видел на одном из них. А что, там несколько процессоров, ipfw хорошо с smp работает, отличная машинка.
Ну вот у нас около 10 таких машинок, да, где то до 10к пользователей бывает. Ну pps можно сказать суммарный где то поллимона и больше.
Такие дела.



"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено Аноним , 26-Апр-12 17:13 
> 50-60к.

Столько роутер за 1000 рублей спокойно прожует. А у вас - 10-15 тысяч выходит? Почти цыско какое-то прямо.


"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено анон , 27-Апр-12 06:56 
С шейпером и радиусами?

"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено Олег , 27-Апр-12 10:50 
>> 50-60к.
> Столько роутер за 1000 рублей спокойно прожует. А у вас - 10-15
> тысяч выходит? Почти цыско какое-то прямо.

Прошу прощения, наврал. Мы их не покупаем оказывается сборными, готовыми, а сами делаем. Материнка с процом + корпус выходит 4к рублей. 10-15 это стоит такой же, но фирменной сборки asus например. Не, мы оказывается сами заказываем и собираем.
Такие дела.


"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено Dyr , 05-Май-12 09:10 
Ой как не верится мне что-то. У меня стоит пара серверов на Атоме под те же задачи, пропускает порядка 400 клиентов и 20-30 кппс, но загрузка проца сетёвкой порядка 80% при этом.

"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено artemrts , 26-Апр-12 16:28 
Шо вы там такое настраиваете, шо оно у вас тормозит? (С)

Как-то виндовый админ на ISA-server подтянул патчик, который отрубал сетевой интерфейс. Пока разбирался в чем проблема, на десктопном серваке Celeron 2.1GHZ, который выступал в качестве тестового, быстренько подымается роутер на PF, тогда еще 4.1, настраивается НАТ, фильтрация и т.д. Пятница, после обеда, народ уже не работает, а тупо висит в инете... Компов до 600 будет. Подробностей загрузки роутера не помню - давно было, но idle ниже 75 не опускался.


"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено ragus , 26-Апр-12 19:36 
> Шо вы там такое настраиваете, шо оно у вас тормозит? (С)

http://forum.nag.ru/forum/index.php?showtopic=47497
http://habrahabr.ru/post/111580/#comment_3560901
http://habrahabr.ru/post/82656/#comment_2456000

"pf — это вообще файрволл для домохозяек. :-) Если надо побыстрому выпустить в инет офис и есть время только для написания двух строчек — альтернативы pf отсутствуют. :-) Но для серьезного провайдинга — это все фигня. К тому же он на несколько процессоров не раскладывается до сих пор по-моему…
В общем, мой вам совет — откажитесь от pf и перейдите полностью на ipfw. Серверу сильно полегчает и избавитесь от костылей (от тех же дополнительных прокси для активного FTP)."


"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено artemrts , 27-Апр-12 14:05 
>[оверквотинг удален]
> http://habrahabr.ru/post/111580/#comment_3560901
> http://habrahabr.ru/post/82656/#comment_2456000
> "pf — это вообще файрволл для домохозяек. :-) Если надо побыстрому выпустить
> в инет офис и есть время только для написания двух строчек
> — альтернативы pf отсутствуют. :-) Но для серьезного провайдинга — это
> все фигня. К тому же он на несколько процессоров не раскладывается
> до сих пор по-моему…
> В общем, мой вам совет — откажитесь от pf и перейдите полностью
> на ipfw. Серверу сильно полегчает и избавитесь от костылей (от тех
> же дополнительных прокси для активного FTP)."

А вы опять спорите о разных продуктах для разных задач?... Это то же самое, что сравнивать километры и килограммы.
А по-поводу "для домохозяек". Три физ. интерфейса. Есть еще три gif-IPsec туннеля, mpd-интерфейсы, правила для которых через up\down скрипты, ну и ессно openvpn. И всем этим нормально рулит pf. И да, еще НАТ для сети за роутером.
А вот если вы инетом, извините, барыжничаете (ну так тыщи полторы-две активных pppoe сессий) то тут конечно ipfw вне конкуренции, а если учесть, что в 10-ке еще и diffuse должен появиться, то вообще супер.
И хватит на тему pf - го*но, ipfw - все наше.


"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено ragus , 27-Апр-12 14:36 
>>[оверквотинг удален]
>> "pf — это вообще файрволл для домохозяек. :-) Если надо побыстрому выпустить
>> в инет офис и есть время только для написания двух строчек
>> — альтернативы pf отсутствуют. :-)
> А вы опять спорите о разных продуктах для разных задач?...

вы решили выступить в роли Капитана Очевидность? Выше написано, что они для разных задач.

> А по-поводу "для домохозяек". Три физ. интерфейса. Есть еще три gif-IPsec туннеля,
> mpd-интерфейсы, правила для которых через up\down скрипты, ну и ессно openvpn.
> И всем этим нормально рулит pf. И да, еще НАТ для
> сети за роутером.

я очень рад за вас. только что вы этим хотите сказать? вы хотите опровергнуть или подтвердить мой тезис?

>  А вот если вы инетом, извините, барыжничаете (ну так тыщи полторы-две
> активных pppoe сессий) то тут конечно ipfw вне конкуренции, а если
> учесть, что в 10-ке еще и diffuse должен появиться, то вообще
> супер.

1)причём тут diffuse?
2)почему именно ipfw?

> И хватит на тему pf - го*но, ipfw - все наше.

новость о:
1)имеющихся проблемах/сложностях в ipfw
2)возможностях, которые хотелось бы иметь
3)вариантах решения п.1 и достижения п.2
4)создании универсального решения, одинаково хорошо подходящего для любых задач.


"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено Max , 26-Апр-12 13:29 
gre много раз ваш pf умеет без костылей?

"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено Dyr , 05-Май-12 09:11 
> gre много раз ваш pf умеет без костылей?

Да.
Достаточно сделать allow gre no state


"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено metallic , 26-Апр-12 13:40 
PBR во фре на PF нормально не сделать

"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено terr0rist , 26-Апр-12 20:46 
> зачем конкуренция внутри базовой системы?

конкуренция - это всегда хорошо. Это прежде всего ваш выбор.
Впрочем, именно тут речь не о конкуренции, а о разных нишах.
PF - для "ленивых". Или, как правильно сказано выше, для домохозяек. Быстро настроил и в путь. Это его главное преимущество. Всё остальное (почти) - преимущества IPFW.


"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено Аноним , 26-Апр-12 12:50 
О! Давно ждал этого от Вадима, все думал свершится или нет, пожелаем ему удачи.

"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено artemrts , 26-Апр-12 12:55 
Этот парень (нуклайт который) все к нетграф тянет...

> Поддержка модулей фильтрации уровня ядра и уровня пользователя;

А это неплохо звучит.


"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено Аноним , 26-Апр-12 14:19 
пайпы модулем грузить-бы...

"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено Анонимз , 26-Апр-12 14:44 
/etc/rc.conf
dummynet_enable="YES"

?


"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено Аноним , 26-Апр-12 14:31 
нуклайту респект и уважуха!

"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено light , 26-Апр-12 22:30 
>> Введение поддержки множественных наборов правил (multiple rulesets - аналог Cisco ACLs)

разве ipfw list это не то же самое? (точнее даже лучше какой то ущербной цыски)


"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено ragus , 27-Апр-12 00:32 
>>> Введение поддержки множественных наборов правил (multiple rulesets - аналог Cisco ACLs)
> разве ipfw list это не то же самое? (точнее даже лучше какой
> то ущербной цыски)

нет. речь идёт о возможности иметь несколько наборов правил ipfw и выбирать, кто из них будет активным в данный момент.

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

Вынесение ipfw в ноду netgraph имеет много всяких приятных плюшек:

1)можно иметь хоть per interface набор правил.
2)можно скрестить с mpd и правила вливать per user


"Началась работа над обновленной реализацией ipfw для FreeBSD"
Отправлено Артм , 27-Апр-12 10:54 
> нет. речь идёт о возможности иметь несколько наборов правил ipfw и выбирать,
> кто из них будет активным в данный момент.

Нет. Это и сейчас есть. Речь идет о том, что бы можно было написать так:
ipfw add all from me to any ruseset myrules

То есть что бы можно было применить рульсет какой то к конкретным пакетам. Щас можно ставить один из нескольких рульсетов активным.