NPF (NPF)

Перейти к навигации Перейти к поиску
New Packet Filter (NPF)
Тип Межсетевой экран
Разработчик проект NetBSD
Написана на Си[1][2], yacc[3][2] и lex[2][4]
Операционная система NetBSD
Последняя версия 6.0
Репозиторий github.com/rmind/npf
Лицензия BSD
Сайт netbsd.org

NPF (New Packet Filter) — межсетевой экран, разработанный в рамках проекта NetBSD.

Изначальной целью проекта была разработка фильтра (сетевых) пакетов, который, с одной стороны, будет воплощать в себе удобства и возможности PF, а с другой — будет легко расширяем и масштабируем на мультипроцессорных системах.

Первым разработчиком NPF является Mindaugas Rasiukevicius. Разработка NPF была спонсирована NetBSD Foundation. В репозиторий NetBSD код NPF вошёл 22 августа 2010 года, а первым релизом этой операционной системы со входящим в поставку NPF, является версия 6.0.

Особенности

[править | править код]

Как и PF, NPF состоит из двух основных частей: одна располагается в ядре ОС и осуществляет собственно обработку пакетов, а другая — конфигурационная утилита npfctl. Синтаксис конфигурационных файлов и самой утилиты npfctl приближен к оному у pfctl, утилиты конфигурации PF. Однако собственно NPF представляет собой совершенно новый продукт.

NPF изначально создавался с учётом использования на мультипроцессорных системах и поэтому умеет использовать все доступные ядра/процессоры. NPF, в отличие от большинства других пакетных фильтров, не просто проходит по наборам правил, но компилирует их в специальный псевдокод, схожий с BPF.

Примечания

[править | править код]