zax2 Posted April 27, 2019 Posted April 27, 2019 Доброе время суток. Кто работал (работает) с KEA , поделитесь наработками по использованию mysql и option82. Пример из isc-dhcp class "port-5" { match if binary-to-ascii (10, 8, "", suffix( option agent.circuit-id, 1)) = "5"; } pool { range 192.168.1.10; allow members of "port-5"; } Как подобное реализовывается в KEA ? Средствами mysql, средствами записи в файл? Ссылки на документацию мне ведомы, но понять и что-то реализовать по ним не получилось. Сам сервер поднят и работает. Спасибо! Вставить ник Quote
pppoetest Posted April 27, 2019 Posted April 27, 2019 Можно влезть со своим мнением? У нас уже овер 5 лет в проде работает это решение. Покрывает все возможные кейсы. Вставить ник Quote
zax2 Posted April 27, 2019 Author Posted April 27, 2019 2 минуты назад, pppoetest сказал: Можно влезть со своим мнением? У нас уже овер 5 лет в проде работает это решение. Покрывает все возможные кейсы. Можно! И приветствуется. С чего начать? Есть примеры конфигурации? Вставить ник Quote
pppoetest Posted April 27, 2019 Posted April 27, 2019 Перловый дхцп серв, работает только с релей-агентами, и только ипв4. Любые извращения на любой вкус, благо всё в открытом виде. Конфигурации как таковой нет. Логику обработки последовательности discover-offer-request-ack пишешь сам. Начни с изучения исходника, там все довольно тривиально. Будут вопросы - помогу. Вставить ник Quote
andryas Posted April 28, 2019 Posted April 28, 2019 Mikrotik + radius ещё вариант (поддержка v6). Вставить ник Quote
zax2 Posted April 28, 2019 Author Posted April 28, 2019 5 часов назад, andryas сказал: Mikrotik + radius ещё вариант (поддержка v6). Что вы имеете ввиду? Использовать v6 для раздачи v4? Использовать радиус в качестве dhcp? Использовать микротик, как клиент радиуса? Сложно понять, что именно. Вставить ник Quote
andryas Posted April 28, 2019 Posted April 28, 2019 Микротик, как клиент радиуса, естественно. Вставить ник Quote
zax2 Posted April 28, 2019 Author Posted April 28, 2019 26 минут назад, andryas сказал: Микротик, как клиент радиуса, естественно. Нет, спасибо, такое решение не подходит. Вставить ник Quote
Heggi Posted May 6, 2019 Posted May 6, 2019 В KEA поддержка Option82 только в премиум модуле (через flex-id можно реализовать любые проверки, в том числе и option82) Мы для себя запилили свой модуль, чисто под option82. 1.5 строчки кода, в целом ничего сложного. В БД хранится в поле dhcp_identifier в бинарном виде Вставить ник Quote
zax2 Posted May 6, 2019 Author Posted May 6, 2019 Спасибо. Многое стало понятным. Напрасно потраченное время. Иду удалять. Вставить ник Quote
Heggi Posted May 6, 2019 Posted May 6, 2019 Зря. Так-то хороший продукт :) Мы в продакшн ввели и радуемся, ждем новую версию, там обещают всю остальную конфигурацию в БД перенести (можно будет добавлять/удалять подсети без перезагрузок демона) Вставить ник Quote
Ivan_83 Posted May 8, 2019 Posted May 8, 2019 В 06.05.2019 в 11:24, Heggi сказал: Мы в продакшн ввели и радуемся, ждем новую версию, там обещают всю остальную конфигурацию в БД перенести (можно будет добавлять/удалять подсети без перезагрузок демона) Чем вам перловый то не нравится? Накорябал там любую логику под себя и радуйся. А перезапуск дхцп - вообще не проблема ни разу, клиенты перезапросят. Не говоря о том, что в случае перлового демона с данными из базы такой необходимости просто нет. Вставить ник Quote
pppoetest Posted May 8, 2019 Posted May 8, 2019 5 часов назад, Ivan_83 сказал: А перезапуск дхцп - вообще не проблема ни разу Дрочить демон? По мне, это костыль. Вставить ник Quote
max1976 Posted May 8, 2019 Posted May 8, 2019 19 часов назад, Ivan_83 сказал: Не говоря о том, что в случае перлового демона с данными из базы такой необходимости просто нет. В домашней сети на пару клиентов сойдет, но при количестве клиентов в несколько тысяч умрут перловый скрипт и бд. Вставить ник Quote
GrandPr1de Posted May 8, 2019 Posted May 8, 2019 2 часа назад, max1976 сказал: В домашней сети на пару клиентов сойдет, но при количестве клиентов в несколько тысяч умрут перловый скрипт и бд. звучит так, как будто ты протестировал (на самом деле нет, лишь бы сказануть) Вставить ник Quote
Ivan_83 Posted May 8, 2019 Posted May 8, 2019 2 часа назад, max1976 сказал: В домашней сети на пару клиентов сойдет, но при количестве клиентов в несколько тысяч умрут перловый скрипт и бд. Всего несколько тыщ!? Так мало!? Когда я его тестил он без базы переваривал где то 2-3к запросов/сек на ныне стареньком дуалкоре E5300, с базой меньше, в зависимости от базы и развесистости запросов. Даже если он будет переваривать всего 100 запросов в секунду он сможет выдать 2000 адресов всего за 20 секунд. Вряд ли есть хоть один дегенерат который ставит время жизни лизы меньше 10 минут. 10 минут = 600 секунд * 100 = 60к клиентов самый минимум на который можно рассчитывать. Может ты DHCP с роутингом путаешь или там с записью netflow на аплинк порту? Вставить ник Quote
pppoetest Posted May 9, 2019 Posted May 9, 2019 7 часов назад, max1976 сказал: В домашней сети на пару клиентов сойдет, но при количестве клиентов в несколько тысяч умрут перловый скрипт и бд. Овер 4.5к клиентов. Нагрузки нет. Никто не мрёт. Вставить ник Quote
max1976 Posted May 9, 2019 Posted May 9, 2019 (edited) 6 часов назад, GrandPr1de сказал: звучит так, как будто ты протестировал (на самом деле нет, лишь бы сказануть) Я много чего тестировал, в том числе и работу dhcp с БД. БД это узкое место. Можно сколько угодно считать и делать синтетических тесты, но в реальной жизни даже при 8к клиентах конструкция не работоспособна, особенно если применять динамический пул адресов. Kea сервер хорошо показывает себя в работе. Дополнительный функционал легко получить, путем написания плагина. Edited May 9, 2019 by max1976 Вставить ник Quote
Troj Posted May 9, 2019 Posted May 9, 2019 В 06.05.2019 в 10:53, Heggi сказал: В KEA поддержка Option82 только в премиум модуле (через flex-id можно реализовать любые проверки, в том числе и option82) Мы для себя запилили свой модуль, чисто под option82. 1.5 строчки кода, в целом ничего сложного. В БД хранится в поле dhcp_identifier в бинарном виде можете поделится модулем? Вставить ник Quote
kayot Posted May 9, 2019 Posted May 9, 2019 @max1976 У меня данный скрипт работает несколько лет, лиза 5 минут(к вопросу о дегенератах), до 5к клиентов на сервер - загрузка от скрипта и БД околонулевая. Не вижу что там вообще может тупить и ограничивать. Вставить ник Quote
alibek Posted May 9, 2019 Posted May 9, 2019 3 часа назад, max1976 сказал: БД это узкое место. Странное утверждение. При правильной организации базы данных весьма производительны. В биллинговой системе AAA работает с БД, а там активность повыше будет. Вставить ник Quote
max1976 Posted May 9, 2019 Posted May 9, 2019 Читать из БД это не проблема. Как писал выше - работа с динамическим адресами не может быть обеспечена скриптом на перле и БД. Очень часто встречаются кривые клиенты, постоянно запрашивающие адрес, что приводит к нагрузкам на БД. Вставить ник Quote
pppoetest Posted May 9, 2019 Posted May 9, 2019 2 часа назад, max1976 сказал: Очень часто встречаются кривые клиенты, постоянно запрашивающие адрес, что приводит к нагрузкам на БД. Это всё режется на доступе. Вставить ник Quote
Ivan_83 Posted May 10, 2019 Posted May 10, 2019 16 часов назад, max1976 сказал: Как писал выше - работа с динамическим адресами не может быть обеспечена скриптом на перле и БД. Ну да, только скрипты на си :) 16 часов назад, max1976 сказал: Очень часто встречаются кривые клиенты, постоянно запрашивающие адрес, что приводит к нагрузкам на БД. Для этого можно добавить кеширование в сам перл демон. Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.