> Название iptables ни о чём не говорит?вот именно что название, название новое а внутри все теже ipchains =)
Не знаете разницы между таблицами и цепочками? слышали про быстрый поиск с хеш-таблицами? нет? погуглите.
Время поиска по цепочке правил линейно зависит от количества правил. Поиск же по хеш таблице практически не зависит от количества записей в таблице. Вот цитата с букваря по pf "a table is ideal for holding a large group of addresses as the lookup time on a table holding 50,000 addresses is only slightly more than for one holding 50 addresses"
>Нечего не зеркало пенять коли рожа (то есть руки) крива.
А как иначе разруливать ситуацию когда есть 600 адресов которые нужно дропнуть, и 400 адресов которые нужно натить, причем эти адреса постоянно добавляются/удаляются?
в случае с pf мы добавляем 2 правила:
block from <drops> to any
nat from <nats> to any
Начинку таблиц без проблем можно менять на лету. Время поиска по такой таблице очень и очень маленькое.
В случае с линухом мы вынуждены держать 1000 правил, поиск по 1000 правил идет настолько долго что ksoftirqd вылазит вверх (это симптом, никогда такого не видели?) и машина просто не вылазит из прерываний. LA растер вверх а количество успешно прошедших пакетов - вниз.
Есть патч для linux который добавляет такой функционал, но не очень хочется приключений связанных с глюками third level патча.
> Очень глубокомысленный вывод. Ценю. "Таблицы" звучит круче чем "Цепочки".
Не просто звучит, но и работает =) Простой линейный поиск гораздо медленеей поиска по self-ballancing binary tree (хотя я не уверен что в pf именно такое дерево, лень в исходники лезть)