Jump to content
Калькуляторы

Первый стабильный релиз DHCP-сервера Kea, идущего на смену ISC DHCP

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

 

Особенностью выпуска, не связанной с техническими аспектами работы, является переход на лицензию 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 присвоений в секунду.

 

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

 


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

 

0_1361898323.png

 

© Opennet.

Share this post


Link to post
Share on other sites

Приятный подарок к НГ. Ждал стабильного релиза. Поглядим.

P.s.На opennet-e в комментариях уже и Код Ivan_83 воспомнили. :)

 

Приятного стало мало после прочтения....

7.3.4. Reserving specific options

Currently it is not possible to specify options in host reservation. Such a feature will be added in the upcoming Kea releases.

 

выходит ни по какой option-82 идентифицировать клиента не выйдет.... Только по mac. Как то не весело. В остальном очень многообещяюще.

Edited by bomberman

Share this post


Link to post
Share on other sites

Использую Kea для выдачи адресов клиентам крохотного VPN-сервера. Завелся за минуту буквально правкой двух строчек в конфиге. Помню ISC DHCP 5 лет назад я намного дольше запускал. :)

Как появится поддержка опции 82, можно будет попробовать в бою.

 

p.s. На Opennet комменты прочитал - странная же там публика, как и на хабре.

Edited by xcme

Share this post


Link to post
Share on other sites

p.s. На Opennet комменты прочитал - странная же там публика, как и на хабре.

Там скорей всего аудитория с 90-х годов не менялась. Пару раз натыкался на мануалы opennet, я когда читал их, мои глаза кровоточили, но я все равно продолжал читать в попытке понять что к чему. Потом когда стало сильно плохо, я начал заливать глаза святой водой, кровоточить они стали меньше и я продолжил дальше читать что бы дойти до истины. В конце концов нашел другой ман из разряда

- ставим значит вот так "yum install"

- по окончанию установки конфиг лежит в /usr/loca/etc

- вот пример моего конфига

И сразу все стало понятно.

Share this post


Link to post
Share on other sites

Тоже жду 82 опцию

Слежу за темой от Ivan_83 , как посвободнее станет можно будет и попробовать

Share this post


Link to post
Share on other sites

Да-да-да)) Все эти, так называемые "маны" больше смахивают на копипаст с какого нибудь блога одинокого админа, который делает эти записи что бы не держать все в голове. Я обычно такие держу дома в блокноте. А если почитать ихние комментарии, так там вообще тюрьма. Друг друга чмарят и очень часто применяют очень странные названия. Вот что иногда удавалось вычитать в комментариях, то как они называют некоторые вещи.

Питон - пайтон

Баш - басш

php разработчик - WWW разработчик

Share this post


Link to post
Share on other sites

Использую kea с версии 0.9.2. Да, действительно, штатной привязки адресов по опции 82 нет, но есть очень хороший и удобный механизм hooks, с помощью которого вполне можно лазить в базу данных и выбирать адреса в соотвтествии со значениями опции 82. соответствующая либа пишется из примеров в течение минут 30-40. А так - довольно шустрый DHCP с хранением лизов в БД.

Share this post


Link to post
Share on other sites

В 04.01.2016 в 18:53, junjunk2 сказал:

Использую kea с версии 0.9.2. Да, действительно, штатной привязки адресов по опции 82 нет, но есть очень хороший и удобный механизм hooks, с помощью которого вполне можно лазить в базу данных и выбирать адреса в соотвтествии со значениями опции 82. соответствующая либа пишется из примеров в течение минут 30-40. А так - довольно шустрый DHCP с хранением лизов в БД.

Можно пример либы?

Share this post


Link to post
Share on other sites

В 17.10.2017 в 17:34, Ivan_83 сказал:

Чем вас

http://www.netlab.linkpc.net/wiki/ru:software:perl:dhcp_server

не устраивает?

Да просто хочется посмотреть именно Kea, т.к. у него есть все шансы стать самым распространным DHCP-сервером, устанавливаемым и рекомендуемым "по умолчанию". В нем уже есть поддержка опции 82, API, статистика, поддержка СУБД из коробки, обновление конфигурации без рестарта и многое другое. Его уже использует facebook, что является неплохой рекламой. Самое вкусное (речь про flex-id), правда, вынесено в отдельный модуль, распространяемый под EULA и за деньги. Ну и гибкости ISC DHCP пока нет - некоторые задачи приходится решать неочевидными способами.

 

P.S. На днях, кстати, вышла версия 1.3.

Share this post


Link to post
Share on other sites

Сдался вам этот "стандарт".

Продукты ISC всегда были ниже плинтуса.

А мордокнига это былокодеры на пхп, в массе своей, им и dnsmasq хватило бы.

Share this post


Link to post
Share on other sites

On 17.10.2017 at 3:34 PM, Ivan_83 said:

Чем вас

http://www.netlab.linkpc.net/wiki/ru:software:perl:dhcp_server

не устраивает?

 

Сори за нектропостинг :)

У меня ISC dhcpd оброс костылями и замучил необходимостью рестарта для реконфигурации. 

К нему есть какие-то древние патчи, которые обещают подружить его с SQL, но уж слишком они бородаты, да и сам сервер довольно устарел.

Опять же, была идея, дописать в dhcpd кусочек кода, периодически кеширующего привязки из базы данных в память (у меня статика), но всё же не решился (не пишу на С уже лет 20)

 

Чем не устроил Ваш perl:dhcp_server?

- У меня dhcp сервер присутствует в каждом вилане (схема с релеем не подходит), в таком режиме (без релея) Ваш сервер работать не умеет. Возможно, это несложно дописать, но я не настолько силён в perl'е, чтобы выкладывать свою стряпню прямо в продакшн. Это причина №1.

- В будующем планирую ipv6, поддержки которго, у Вас, к сожалению, нет.

 

Всё остальное супер, очень просто и красиво, но...

 

Вот и посматриваю в сторону KEA.

Share this post


Link to post
Share on other sites

Релей обычно есть в коммутаторах, на крайняк легко поставить готовый. Оно изначально было под оператора потому писать работу без релея даже не начинал. И это был мой второй и самый большой проект на перле, так что не стоит стеснятся :)

 

IPv6 - должен быть отдельный проект, сюда пихать смысла нет. Я нынче не в операторах, и в личные интересы оно тоже никак не вписывается, так то видимо сами :)

Share this post


Link to post
Share on other sites

кто-нибудь "доводил" kea до стадии патченного isc-dhcpd, умеющего выдавать один ip разным макам без оглядки на время жизни лизы?

Share this post


Link to post
Share on other sites

On 1/14/2019 at 6:23 AM, nixx said:

выдавать один ip разным макам без оглядки на время жизни лизы

просто интересно, зачем

Share this post


Link to post
Share on other sites

В 14.01.2019 в 04:23, nixx сказал:

кто-нибудь "доводил" kea до стадии патченного isc-dhcpd, умеющего выдавать один ip разным макам без оглядки на время жизни лизы?

kea умеет это из коробки, но за денежку.

Share this post


Link to post
Share on other sites

13 часов назад, SyJet сказал:

В смысле, как это за денюжку  

В прямом. Покупаете у автора премиум библиотеки ($500), расширяющие возможности kea.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.