Консорциум ISC анонсировал (https://lists.isc.org/pipermail/kea-announce/2015-December/0...) стабильный релиз нового DHCP-сервера Kea 1.0.0 (http://kea.isc.org), изначально развивавшегося в рамках проекта BIND 10, но отделённого от DNS-сервера в отдельный продукт, идущий на смену классическому ISC DHCP. Kea 1.0.0 отмечен как первый выпуск, готовый для промышленного внедрения. DHCP-сервер основан на технологиях BIND 10 и построен (https://www.opennet.me/opennews/art.shtml?num=36235) с использованием модульной архитектуры, подразумевающей разбиение функциональности на разные процессы-обработчики.
Особенностью выпуска, не связанной с техническими аспектами работы, является переход (https://www.isc.org/blogs/kea-license-2-0/) на лицензию Mozilla Public License (MPL) 2.0 (https://www.opennet.me/opennews/art.shtml?num=32726) вместо ранее применяемой для 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 (https://tools.ietf.org/html/rfc2131) (DHCP Decline) в DHCPv4 и DHCPv6, через которые клиент может сообщить серверу об уже используемом адресе. После получения сообщения DHCPDECLINE сервер обязан пометить IP-адрес недоступным для выделения другим клиентам и уведомить администратора о возможных проблемах с конфигурацией;
- Добавлена поддержка новых видов статистики, которые можно использовать для отслеживания устаревания присвоений или обработки decline-сообщений;
- Поддержка PXE- и iPXE-загрузки;
- Бэкенд для хранения базы резервирования хостов в MySQL (пока доступен только для DHCPv4), помимо традиционных текстовых файлов.
<center><a href="http://bind10.isc.org/raw-attachment/wiki/DesignDiagrams/Ove... src="https://www.opennet.me/opennews/pics_base/0_1361898323.png&q... style="border-style: solid; border-color: #606060; border-width: 1px;" title="" border="0"></a></center>URL: https://lists.isc.org/pipermail/kea-announce/2015-December/0...
Новость: http://www.opennet.me/opennews/art.shtml?num=43604
ISC как всегда пилит всякую фигню.
В мелких/домашних сетках DNSmasq выше головы, для провайдеров мой перловый вариант умеющий с базы брать адреса, его же можно легко допилить для сурового интырпрайза дописав любую логику.
Нет, ну тут вы конечно безусловно правы. Именно Ваш пёрловый вариант -- это лучшее что есть на рынке! Спасибо что вы его написали!
Думал пожелать этому человеку здоровья, но потом очнулся и увидел "проприетарное программное обеспечение".
> Думал пожелать этому человеку здоровья, но потом очнулся и увидел "проприетарное программное
> обеспечение".Если ты лично не готов обеспечивать меня и мою семью материально то не стоит и начинать обижаться на мои попытки как то заработать.
А ты сюда в поисках инвесторов зашел и саморекламы?
нет
Думаешь, написал один раз код и несколько лет он тебя кормить будет?Столман тебя ненавидит!
Если код стоящий - то будет.
И Сталлман тому пример. Он если чё единожды написав емакс - не работает до сих пор :)
Правда карапуз написавший дЭхЭцЭпЭ на перловке и думающий на этом заработать ... ну скажем - забавен :) Вот ежели хотя бы лет 15 назад - тогда да!
>Правда карапуз написавший дЭхЭцЭпЭ на перловкеМои извинения. Не шедевр конечно, но и не карапузостроение :)
В следующий раз сразу линк на нетленку кидай:
http://netlab.linkpc.net/download/software/perl/dhcp_srv/dhc...
а то ни за что огребёшь :)Ещё раз извиняюсь, принял за обычно тут тусующися школопетов :)
>>Правда карапуз написавший дЭхЭцЭпЭ на перловке
> Мои извинения. Не шедевр конечно, но и не карапузостроение :)
> В следующий раз сразу линк на нетленку кидай:
> http://netlab.linkpc.net/download/software/perl/dhcp_srv/dhc...
> а то ни за что огребёшь :)
> Ещё раз извиняюсь, принял за обычно тут тусующися школопетов :)Оно и не может быть шедевром, это самое сложное что я написал на перле :)
Количество минусов и матерных коментов не влияет ни на что.
Представил себе разбор DHCP-пакета на перле. Теперь спать не смогу.
Представил себе глаза того человека, который увидел ЭТО и обнаружит, что ЭТО надо как-то поддерживать.
Утопить в бетоне
> Утопить в бетонеГлаза??!
В Петоне?
> В Петоне?Ну, зачем же сразу - в г-но?
> Представил себе глаза того человека, который увидел ЭТО и обнаружит, что ЭТО
> надо как-то поддерживать.Ничего сложного там нет.
Это был мой первый "масштабный" проект на перле.
Сам разборщик пакетов был уже готовый, я только немного обработки/разбора опций на себя взял, в частности опцию82 у себя разбираю.
Вот как раз разбор бинарных структур на перле великолепно делается. Этим: http://perldoc.perl.org/functions/pack.html
Тогда, раз уж вы все равно не спите, подумайте ночью о следующем: количество серверов написанных на перле просто зашкаливает. И, да - большая часть из них демонстрирует очень неплохую производительность. Так что вариант с перлом вполне жизнеспособен, были бы руки прямые.И вообще.... мы ведь не видели код этого Ивана, как можно судить тогда хорош его вариант или нет? Может и впрямь ISC нервно курит в сторонке? Что мало случаев было что ли, когда индивидуалы затыкали за пояс солидные компании с немалым персоналом?
зашкаливает говорите? назовите три вне рунета (он карликовый относительно всей сети и погоды не делает)
http://anidb.net
booking.com
sauron - тоже dns&dhcp
Тонко затроллено.amazon.com
imdb.com
slashdot.orgБольше амазона по-моему только Google.
> И вообще.... мы ведь не видели код этого Ивана, как можно судить
> тогда хорош его вариант или нет? Может и впрямь ISC нервно
> курит в сторонке? Что мало случаев было что ли, когда индивидуалы
> затыкали за пояс солидные компании с немалым персоналом?http://www.netlab.linkpc.net/wiki/ru:software:perl:dhcp_server
Оно для провайдеров/интырпрайза, для личного применения не фонтан, мягко говоря, - из пушки по тараканам :)У ISC задача только одна: их софт должен максимально соответствовать всем стандартам. Типа эталонной реализации.
От меня этого не требовалось.
Точно так же как на C или любом другом языке
показывай свой "шедевр", ваня, или gtfo
На наге все есть.
> ISC как всегда пилит всякую фигню.Вам не кажется, что это несколько необоснованное заявление? Особенно учитывая, что они писали код, которым пользовались ИТ службы планеты, ещё когда вы только мышкой учились клацать?
Просто следующие поколения (включая вас) воспользовались их опытом и написали более подходящие под свою нишу программы. А теперь и сами ISC воспользовались своим опытом и написали Kea.
MPL пермиссивная лицензия, какой ещё копилефт?
> MPL пермиссивная лицензия, какой ещё копилефт?MPL - "слабый" копилефт.
MPLv2 - Copyleft, да ещё и совметимый с copyleft'ом от Столмана.
Ну код Ивана, был написан ещё когда более менее адекватных решений толком небыло. Были или кастыли с ISC и генерацией конфигов с базы, или какие то свои решения которыми особо не делился никто. Была ещё конечно pydhcplib. Которую можно было использовать, но популярных решений для ISP небыло. Разве что может не открытые. + Писаля он как раз таки с учётом потребности ISP. Если кому интересно, на НАГ-е есть его ветка. Так что Ване спасибо за его труд.
А что касается Kea, то давненько присматривался... Но ждал стабильного релиза. Вот сейчас поковыряю. )
Очень опечалился увидив идентификацию клиентов только по mac-у. В будущем обещают и по другим критериям, но пока нет. Жаль. Не думаю что это такая большая проблема, добавить идентификацию по произвольной опции. Разработчики видимо сочли не нужным. А добавило бы универсальности значительно больше. В остальном многообещающе.
Опцию82 сделать не проблема, проблема в том как это сделать гибким.
Мне в своё время в голову ничего лучше перла не пришло.
Напомню, примерно в то же время на том же форуме появилась альтернативная реализация на си, но не уверен что прижилась ибо сложно конфигурить.
Сколько запросов может обработать?
Тестил уже давно, на Е5300, было 2к-4к запросов в секунду.
Но в целом оно больше в базу упирается, нежели перл в проц.
Без опт82 в ISP ему не место, и без этого функционала сервер от Ivan83 - более предопчтительней.
так-то в документации поддержка этой опции заявлена
Иван молодец
isc давным давно растерял компетенции, и не понимают этого, не смешили бы людей
> Kea демонстрирует неплохую производительность, например,
> при использовании бэкеда MySQL сервер может выполнить
> 1000 присвоений адресов в секунду (около 4000 пакетов
> в секунду), а при использовании бэкенда memfile
> производительность достигает 7500 присвоений в секунду.А кому нужна такая производительность от DHCP-сервера?
Рассмотрим пример минимальной производительности:
1000 присвоений адресов в секунду.
В минуту уже 60 тыс. присвоений.
И так далее.Где столько клиентов для такой производительности набирать? Представляю... офис на сотни тысяч рабочих станций... :-)))
>[оверквотинг удален]
>> 1000 присвоений адресов в секунду (около 4000 пакетов
>> в секунду), а при использовании бэкенда memfile
>> производительность достигает 7500 присвоений в секунду.
> А кому нужна такая производительность от DHCP-сервера?
> Рассмотрим пример минимальной производительности:
> 1000 присвоений адресов в секунду.
> В минуту уже 60 тыс. присвоений.
> И так далее.
> Где столько клиентов для такой производительности набирать? Представляю... офис на сотни
> тысяч рабочих станций... :-)))Средней руки региональный провайдер. Совсем не все недоумки раздают каждому по белому IP. Хуч v4, хуч v6.
>> Где столько клиентов для такой производительности набирать? Представляю... офис на сотни
>> тысяч рабочих станций... :-)))
> Средней руки региональный провайдер. Совсем не все недоумки раздают каждому по белому
> IP. Хуч v4, хуч v6.Так какой же провайдер будет раздавать адреса через DHCP? Деревенский? (вайфай для соседних курятников) :-)
DHCP больше годится для офисов. А провайдерам адреса удобнее раздавать уже через PPPoE там всякие...
Школота, успокойся. Сколько вас энтерпрайзных админов в isp перемалывает, ты даже представить себе не можешь