Консорциум ISC анонсировал стабильный релиз нового DHCP-сервера Kea 1.0.0, изначально развивавшегося в рамках проекта BIND 10, но отделённого от DNS-сервера в отдельный продукт, идущий на смену классическому ISC DHCP. Kea 1.0.0 отмечен как первый выпуск, готовый для промышленного внедрения. DHCP-сервер основан на технологиях BIND 10 и построен с использованием модульной архитектуры, подразумевающей разбиение функциональности на разные процессы-обработчики.


Kea

Особенностью выпуска, не связанной с техническими аспектами работы, является переход на лицензию Mozilla Public License (MPL) 2.0 вместо ранее применяемой для BIND лицензии ISC License. Лицензия MPL накладывает больше ограничений, но она шире распространена, адаптирована для современных реалий и совместима с GPL. Ключевым отличием лицензии MPL от ISC является применение принципа копилефт - при модификации кода и распространении итогового модифицированного продукта, разработчик обязан открыть изменения под лицензией оригинальной разработки.


Kea включает в себя полнофункциональную реализацию сервера с поддержкой протоколов DHCPv4 и DHCPv6, способную заменить собой ISC DHCP. В Kea встроены средства динамического обновления DNS-зон (Dynamic DNS), поддерживаются механизмы обнаружения серверов, назначения адресов, обновления и переподключения, обслуживания информационных запросов, резервирования адресов для хостов и PXE-загрузки. В реализации DHCPv6 дополнительно предусмотрена возможность делегирования префиксов. Для взаимодействия с внешними приложениями предоставляется специальный API. Возможно обновление конфигурации на лету без перезапуска сервера.


Информация о выделенных адресах и параметрах клиентов может храниться в разных типах хранилищ - в настоящее время предоставляются бэкенды для хранения в файлах CSV, СУБД MySQL и PostgreSQL. Параметры резервирования хостов могут быть заданы в файле конфигурации в формате JSON или в виде таблицы в MySQL. В состав входит инструмент perfdhcp для измерения производительности сервера DHCP и компоненты для сбора статистики. Kea демонстрирует неплохую производительность, например, при использовании бэкеда MySQL сервер может выполнить 1000 присвоений адресов в секунду (около 4000 пакетов в секунду), а при использовании бэкенда memfile производительность достигает 7500 присвоений в секунду.


Kea

Из особенностей версии 1.0.0 по сравнению с прошлыми тестовыми выпусками, отмечается:

  • Механизм ограничения срока выделения IP-адресов, предоставляющий средства для корректной чистки присвоений с истекшим временем жизни
  • Начальная поддержка классификации клиентов при помощи задания в конфигурации условных логических выражений, оценивающих содержимое входящих пакетов DHCPv4 и DHCPv6
  • Поддержка сообщений DHCPDECLINE (DHCP Decline) в DHCPv4 и DHCPv6, через которые клиент может сообщить серверу об уже используемом адресе. После получения сообщения DHCPDECLINE сервер обязан пометить IP-адрес недоступным для выделения другим клиентам и уведомить администратора о возможных проблемах с конфигурацией
  • Добавлена поддержка новых видов статистики, которые можно использовать для отслеживания устаревания присвоений или обработки decline-сообщений
  • Поддержка PXE- и iPXE-загрузки
  • Бэкенд для хранения базы резервирования хостов в MySQL (пока доступен только для DHCPv4), помимо традиционных текстовых файлов

Источник opennet.ru