ПО пакетных фильтров
FreeBSD имеет три различных пакета ПО firewall’а, встроенных в базовую систему. Это IPFILTER (также известный как IPF), IPFIREWALL (также известный как IPFW) и PacketFilter из OpenBSD (также известный как PF). FreeBSD также имеет два встроенных пакета ПО для шейпинга ("отслеживания" — "shaping") трафика, обычно используемых для управления используемой шириной пропускания: altq и dummynet. Dummynet традиционно используется с IPFW, а ALTQ — с IPF и PF. IPF, IPFW и PF применяют правила для управления доступом пакетов в систему и из системы, но при этом они делают это разными способами и имеют разный синтаксис правил.
Причина, по которой FreeBSD имеет несколько встроенных пакетов ПО для пакетного фильтра, состоит в том, что в разных случаях существуют разные требования. Ни один из пакетов ПО не может считаться наилучшим.
Отчасти предпочтительным можно называть IPFILTER, потому что его stateful правила являются менее сложными при использовании в окружении NAT и он имеет встроенный ftp-прокси, что упрощает правила, разрешающие использование безопасного исходящего FTP.
Так как все пакетные фильтры основаны на анализе значений определенных полей пакета, при написании набора правил пакетного фильтра следует понимать, как работает TCP/IP, что означают различные значения полей в пакете и как эти значения используются в обычном случае.