LINUX.ORG.RU
ФорумTalks

ipfw vs. iptables


0

0

Это, что, в *BSD до сих пор ipfw используется, который в Linux был только в версиях ядра 2.0.x? Что там, аналогов ipchains или iptables нет? Или ipfw сильно был усовершенствован за последнее время? Только объективно, пожалуйста.

anonymous

в 2.0 был ipwadm, а не ipfw

ipfw исключительно в фрибзд

anonymous
()

есть ipfw и портированый из openbsd ipfilter , ничем не уступает iptables , просто другой вкус .

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

И чем же, хоть один пример того что может pf и чего не может iptables, привести сможешь ?

anonymous
()
Ответ на: комментарий от parser

>PF на голову (а может на две?) выше, чем iptables.

Ссылочки можно? Ни в коем случае не собираюсь что либо оспаривать, просто интересно.

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

> Что такое "и тд" не понял

timestamp и ip id

anonymous
()
Ответ на: комментарий от FatBastard

> А PF тоже из коробки нету

в опенбзд pf из коробки

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

>pf умеет делать нормализацию пакетов, выставляя свои значения ttl и тд

А еще что? Я просто не очень хорошо понимаю, что в этом такого мега-полезного.

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

> Я просто не очень хорошо понимаю, что в этом такого мега-полезного.

это позволяет скрыть локалку за натом от злобного провайдера

anonymous
()

То есть, учитывая "шустрость" *BSD и стабильность их ядер, не плохо было бы "посаморазвиваться" в сторону FreeBSD?

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

> То есть, учитывая "шустрость" *BSD и стабильность их ядер, не плохо было бы "посаморазвиваться" в сторону FreeBSD?

давно пора ;)

anonymous
()
Ответ на: комментарий от fagot

В первую очередь, pf лучше своей архитектурой, она была спроектирована с самого начала и ориентирована на системного администратора. Архитектура iptables для меня во многом остается загадкой. Зачем в iptables четыре точки принятия решений? Может в этом и есть смысл, но, IMHO, усложняет проектирование набора правил. Также, в PF поддержка IPv6 включена изначально (для меня это очень веский аргумент). В iptables это делается специальным костылем под названием iptables6. Также в pf есть одна очень вкусная особенность - якоря (anchors). Конечно, PF действует по принципу first wins, но и к этому можно привыкнуть.

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

Звучит заманчиво, как нибудь на выходных я про PF почитаю.

>Также в pf есть одна очень вкусная особенность - якоря (anchors)

А в двух словах, что это?

И кстати, лично для меня важен еще один аспект - управление трафиком, в Linux возможности по настройке этого дела впечатляют.

Я понимаю, что лучше посмотреть самому, чем тут спрашивать, но это я сделаю потом. Опять же, в двух словах, настройка параметров QoS в OpenBSD (к ней у меня симпатия, хотя в глаза не видел :) делается тоже с помощью pf? Или как с этим обстоят дела в целом?

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

table <goodguys> { 192.0.2.0/24, !192.0.2.5 }
table <rfc1918> const { 192.168.0.0/16, 172.16.0.0/12, 10.0.0.0/8 }
table <spammers> persist

table  persist file "/etc/spammers"

block in on fxp0 from { <rfc1918>, <spammers> } to any
pass  in on fxp0 from <goodguys> to any

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

причем таблицу можно хранить в файле,
таблицу можно изменять на лету.
#pfctl -t spammers -Tdelete 218.70.0.0/16

вообщем все примеры взяты.
отсюда:
http://www.dreamcatcher.ru/docs/pf.html
http://www.dreamcatcher.ru/docs/pf-faq-part2-rus.html

imho он действительно удобнее.
только nat лично для меня как то тяжело сделан.

нарезка канала тоже прям там в pf.


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

Черт, красиво выглядит :) Действительно firewall с человеческим лицом :)

>нарезка канала тоже прям там в pf.

Что именно имеется ввиду под "нарезкой"? Т.е. какие алгоритмы реализованы?

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

опять таки копирую с того же сайта:
впрочем у меня эт тоже работает на freebsd.
altq on fxp0 cbq bandwidth 2Mb queue { std, ssh, ftp }
queue std bandwidth 50% cbq(default)
queue ssh { ssh_login, ssh_bulk }
 queue ssh_login priority 4 cbq(ecn)
 queue ssh_bulk cbq(ecn)
queue ftp bandwidth 500Kb priority 3 cbq(borrow red)

тебе будет проще это прочитать там. :-)
цитирую:
"Реализация ALTQ в OpenBSD поддерживает планировщики Class Based Queueing (CBQ) and Priority Queueing (PRIQ) и Random Early Detection (RED) вместе с Explicit Congestion Notification (ECN)."

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

Если в двух словах, то anchors - это механизм динамического управления набором правил. Т.е. дополнительные наборы правил присоединяются к основному якорями. При этом они объединяются одним именем. Этот механизм немного похож на создание дополнительных цепочек в iptables, но он намного гибче и, по-моему мнению, проще.

Об этом хорошо написано здесь:
http://www.openbsd.org/faq/pf/anchors.html

Кстати, забыл упомянуть еще об одной интересной фиче - authpf.
Представляет из себя шелл. После логина таблица правил PF изменяется в зависимости от uid пользователя.

http://www.openbsd.org/faq/pf/authpf.html

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

Просмотрел быстренько http://www.dreamcatcher.ru/docs/pf-faq-part2-rus.html , маловато конечно, если это все. А если CBQ реализована так же, как и одноименная дисциплина в Linux, то совсем грустно, из описания я этого не понял.

Спасибо за ссылки.

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

> маловато конечно
не подскажешь что еще кроме этого есть в линуксе?

p.s.
кроме того subject топика именно в сравнии firewall'ов.
а той-же нарезкой канала в линуксе занимается iproute2, а не netfilter.

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

>кроме того subject топика именно в сравнии firewall'ов.

да я просто спросил :)

>не подскажешь что еще кроме этого есть в линуксе?

Ну... Три встроенные "очереди" в pfifo_fast - дисциплине по умолчанию (есть и bfifo_past с учетом байтов, а не пакетов), с приоритезацией по TOS и еще более быстрые pfifo и bfifo. PRIO, такая же как и в OpenBSD и CBQ, подсчитывающая среднее время передачи пакетов для определения "загруженности" канала. HTB - замена CBQ, которая использует идею токенов, что делает ее удобнее и надежнее. Дисциплины SFQ, ESFQ и WRR, делящие канал поровну между n потоками, каждая по своему. TBF, для профилирования трафика, policer входящего трафика и устройство IMQ для управления входящим трафиком (позволяет ложить пакеты в буфера и задерживать, а не резать со старта) и управления трафиком на нескольких интерфейсах, как на одном. Также имеется поддержка DiffServ и еще множество всего, о чем я имею только смутное представление, как например RED (как и в OpenBSD) и GRED, CSZ, поддержка технологии ATM и т.д... :)

А с учетом того, что маркировать трафик можно по ну просто любому признаку, вплоть до использования модуля iptables string, для поиска соответствующих слов в содержимом пакета, выходит, что сделать можно очень много всего интересного :)

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