Добрый день. Есть задача вести учет выданных ip-адресов пользовательским виртуалкам. Думал обойтись Freeradius, но тут нюанс, мы не можем использовать 8021x по рядку причин. Вопрос может freeradius принимать DHCP-request от пользователя, самостоятельно принимать аргументом из DHCP-request mac пользователя, а потом уже искать его в базе? Спасибо.
Так все же "вести учет выданных ip-адресов пользовательским виртуалкам" или же "нужно чтобы dhcp выдавал ip по мак", это разные вещи. В первом случае нужно просто смотреть кто новый пришел а во втором решать дать или нет ip такому то mac'у.
Тогда вариант городить колхоз парсинга логов и дергания OMAPI.
Еще вариант колхозить вокруг iptables. Т.е. делать какую то такую цепочку:
1)правила разрешения трафика dhcp для конкретных mac.
2)если из цепочки 1 запрос попал сюда то пишем сообщение в лог и пропускаем к следующему пункту.
3)попали сюда, блочим запрос.
Гдето рядом некий колхоз в виде скрипта\утилитки самопальной мониторит лог из п2, парсит его, находит новый mac, спрашивает в БД или где надо и на основе наличия такой записи создает в iptables еще одно разрешающее правило в iptables.
может freeradius принимать DHCP-request от пользователя, самостоятельно принимать аргументом из DHCP-request mac пользователя, а потом уже искать его в базе?
Конечно нет, это разные службы и протоколы. У операторов используется технология IPoE/ISG. Но тащить такое для учета внутренних пользователей совсем не стоит. Это может быть целесообразно, если у вас коммерческое облако. Но в этом случае такое решается опять же другими инструментами.