Релиз ipset 5.0

Ipset — компонент универсального фреймворка фильтрации и преобразования пакетов netfilter, предназначенный для хранения больших списков IP-адресов и подсетей, MAC-адресов, TCP/UDP-портов с возможностью быстрого поиска по ним.

Основные новшества:

  • Полная поддержка IPv6
  • Устранено ограничение для списков типа ipporthash, ipportiphash и ipportnethash, предписывавшее, что адреса в пределах одного списка должны принадлежать одному блоку /16, также устранено ограничение для списков типа ipporthash и ipportnethash, запрещавшее сохранять в них адреса хоста, на котором работает ipset
  • Для всех типов списков, сохраняющих номера портов, теперь поддерживается сохранение протокола (TCP/UDP/ICMP, в последнем случае вместо номера порта сохраняется пара значений тип/код ICMP), а также реализована поддержка таймаутов
  • Добавление/удаление нескольких записей в рамках одной транзакции
  • Для связи ядро-userspace теперь используется протокол Netlink
  • Оптимизировано потребление памяти алгоритмом хэширования hash-типов
  • Улучшен синтаксис
  • Добавлен слой совместимости синтаксиса с веткой 4.х

Прежние версии ipset (ветка 4.х) не включались в основную ветку ядра в силу множества замечаний разработчиков Linux в адрес ipset, однако могли быть собраны в виде отдельных модулей. Версия 5, из-за использования Netlink, требует более жёсткой связи с ядром, поэтому для её работы необходима модификация заголовков ядра с последующей пересборкой. Однако устранение вышеупомянутых замечаний разработчиков ядра даёт надежду на скорое включение ipset в основную ветку разработки.

©  Linux.org.ru