Назад | Перейти на главную страницу

Назначение опции на основе принадлежности к классу внутри секции подсети

Мы ищем способ сделать что-то в этом роде в файле dhcpd.conf:

subnet ... {
    #couple of options for the subnet here
    pool {
        allow members of "class-name1";
        allow members of "class-name2";

        range ip1 ip2;
    }

    if is member of class "class-name1" {
        option ...;
    }
}

Рассматриваемая часть if is member of class "class-name" - не знаю, как проверить это условие.

Вот как определяется сам класс:

class "class name" {
    match if some_condition_here;
}

Конечно, очевидным решением было бы просто повторить одно и то же условие в subnet раздел, но было бы повторение - не очень хороший путь. Я также считаю, что это несколько противоречит сути класса.

Еще одна идея заключалась в том, чтобы использовать отдельные pool для этого без указания диапазона. Как это:

pool {
    allow members of "class-name1";
    option ...;
}

Но это не сработало - конфигурация не считается недействительной. По-видимому pool раздел требует range внутри, хотя я не могу найти это требование в спецификации.

У нас была еще одна догадка - указать два одинаковых пула, один для других классов и один для «class-name1». Однако это означает, что один и тот же диапазон появляется дважды, что снова является недопустимой конфигурацией.

Итак, есть ли хороший способ проверить, было ли устройство классифицировано как член определенного класса?