ISC dhcpd прокручивает список шлюзов при выдаче аренды

Я ищу способ заставить dhcpd ISC работать с несколькими шлюзами / маршрутизаторами. Мне нужно следующее поведение (представьте, у нас есть 3 шлюза):

Клиент А запрашивает аренду, получает шлюз № 1
Клиент Б запрашивает аренду, получает шлюз № 2
Клиент C запрашивает аренду, получает шлюз № 3
Клиент D запрашивает аренду, получает шлюз № 1
И так далее...

Я работаю через источник, но мне трудно найти часть, которую я собираюсь изменить, чтобы получить эту работу... (то есть: я не знаю и полностью потерян в дереве исходного кода)

Я знаю, что с помощью option-router можно указать несколько маршрутизаторов, но это не дает нужной мне функциональности.

Любая помощь или указатели на документацию по исходному коду dhcpd будет высоко ценится:)

Ура,
~ Томас

1 ответ

Решение

Рассматривали ли вы сделать это с условной оценкой в dhcpd.conf файл? Например, это должно назначить три шлюза в соответствии с вашим вопросом:

if suffix(binary-to-ascii(3, 32, "", leased-address), 1) = "0" {
    option routers gateway1;
} elsif suffix(binary-to-ascii(3, 32, "", leased-address), 1) = "1" {
    option routers gateway2;
} else {
    option routers gateway3;
}

(Примечание: не проверено, у меня нет удобной сети для тестирования DHCP!)

Другие вопросы по тегам