Консорциум ISC представил DHCP-сервер Kea 1.3

Консорциум ISC опубликовал релиз DHCP-сервера Kea 1.3.0, идущего на смену классическому ISC DHCP. Исходные тексты проекта распространяются под лицензией Mozilla Public License (MPL) 2.0, вместо ранее применяемой для ISC DHCP лицензии ISC License.

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

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

0_1361898323.png

Новые возможности Kea 1.3:

  • Добавлена функциональность общих сетей (Shared networks), дающая возможность группировать вместе несколько подсетей. Клиенту в таких общих сетях динамически назначается адрес из любой подсети, входящей в группу. При необходимости можно назначать типовые параметры для общей сети, которые могут быть переопределены для отдельных подсетей, классов клиентов или хостов.
  • Завершена реализация REST Web API для управления конфигурацией, доступного через HTTPS. Сняты ограничения на максимальный размер запросов и ответов через REST API, что позволяет применять его для управления крупными конфигурациями;
  • Представлены новые библиотеки для интеграции с Kea:
    • Библиотека с REST-интерфейсом для управления выделением IP-адресов (lease), позволяющая запрашивать данные о присвоениях адресов, добавлять привязки и изменять установленные связи.
    • Библиотека для управления подсетями через REST API, дающая возможность добавлять, удалять и изменять подсети без перезагрузки полной конфигурации.
    • Новый обработчик (hook) command_processed, через который можно подключать внешние библиотеки для переопределения обработчиков определённых команд;
  • Добавлено множество мелких возможностей, которые позволили достигнуть паритета в функциональности с ISC DHCP и упростили миграцию с ISC DHCP на Kea. Например, появилась поддержка опций 21 DHCPv4 и 10 DHCPv6, а также улучшена поддержка специфичных для вендоров опций DHCPv4 с кодом 43. Добавлена возможность определения опций с привязкой к пулам адресов DHCPv4. Реализовано условное выражение «ifelse»;
  • Из путей дальнейшего развития Kea отмечается создание средств для обеспечения отказоустойчивости и создание экосистемы из внешних скриптов, дополнений, модулей интеграции и интерфейсов. Из недавно появившихся дополнений упоминается скрипт для генерации читаемого списка активных привязок (lease), обработчик Run Script для вызова внешних скриптов для любых доступных hook-ов, набор unit-файлов для systemd.

© OpenNet