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

Область DHCP для параметра класса пользователя

В Linux, как я могу установить конфигурацию DHCP-сервера, который будет арендовать IP-адреса из областей, определенных в соответствии с классами пользователей. Например, следующая конфигурация арендует IP-адреса в соответствии с первыми тремя октетами MAC-адресов:

# MODIFY TO MATCH YOUR ENVIRONMENT
class "phones"    { match if substring (hardware,1,3) = 00:11:22; }
class "handhelds" { match if substring (hardware,1,3) = 00:33:44; }

# Common configuration
option domain-name "your.domain.name.here";
option domain-name-servers 192.168.2.2;

shared-network lan {
        # phones
        subnet 192.168.0.0 netmask 255.255.255.0 {
                pool {
                        range 192.168.0.10 192.168.0.254;
                        allow members of "phones";
                }
                option routers 192.168.0.1;
                option subnet-mask 255.255.255.0;
        }

        # handheld devices
        subnet 192.168.1.0 netmask 255.255.255.0 {
                pool {
                        range 192.168.1.10 192.168.1.254;
                        allow members of "handhelds";
                }
                option routers 192.168.1.1;
                option subnet-mask 255.255.255.0;
        }

        # Everything else
        subnet 192.168.2.0 netmask 255.255.255.0 {
                pool {
                        range 192.168.2.10 192.168.2.254;
                        allow unknown-clients;
                }
                option routers 192.168.1.1;
                option subnet-mask 255.255.255.0;
}

Мне нужна функциональность, аналогичная этой, но не для первых трех октетов MAC-адресов, а для класса пользовательских опций (77) запроса DHCP.

Вы можете использовать такой блок:

class "phones" { 
  match if exists user-class and option user-class = "foobar";
 }

Полезные ссылки:

  • это пример
  • RFC3004
  • В dhcpd.conf(5)справочная страница