Shaping/Policing вообще нет смысла рассматривать, поскольку это отдельная большая область, простирающаяся далеко за рамки firewall.
netfilter в отличие от ipfw2 преструктурирован, есть отдельные таблицы, и цепочки в них, которые, в частности, позволяют легко отделить обработку транзитного трафик от локального (ну и ещё много чего). Конечно, нужно потратить время на то, чтобы понимать traffic flow по всем этим таблицам, но результат того стоит.
Вот netgraph — да, заметная подсистема, которую (или аналог которой) в Linux бы не помешало иметь.
P. S. Кстати, интересно, поправили-ли баг ipfw когда его собственные ответы в духе unreach создавали state, которые таки позволяли удалённой стороне, которой отправили такой unreach, соединиться?…
> это, положим, не так
netfilter в отличие от ipfw2 преструктурирован, есть отдельные таблицы, и цепочки в них, которые, в частности, позволяют легко отделить обработку транзитного трафик от локального (ну и ещё много чего). Конечно, нужно потратить время на то, чтобы понимать traffic flow по всем этим таблицам, но результат того стоит.
Вот netgraph — да, заметная подсистема, которую (или аналог которой) в Linux бы не помешало иметь.
P. S. Кстати, интересно, поправили-ли баг ipfw когда его собственные ответы в духе unreach создавали state, которые таки позволяли удалённой стороне, которой отправили такой unreach, соединиться?…