Налаштування параметрів DHCP
KeeneticOS дозволяє налаштувати параметри DHCP. Це налаштування доступне лише через інтерфейс командного рядка (CLI) маршрутизатора. Він дозволяє налаштувати такі параметри:
2 (Зсув часу),
4 (Сервер часу),
26 (MTU),
42 (Сервери NTP),
43 (Інформація, специфічна для виробника),
44 (Сервери NetBIOS),
60/66 (Ім'я сервера TFTP),
67 (Ім'я завантажувального файлу),
72 (Сервер World Wide Web),
121 (Безкласові статичні маршрути),
249 (Маршрути MS).
Конфігурація для всього DHCP-сервера:
(config)> ip dhcp pool {name} option
Usage template:
option ({2..254} hex {data}) | ({2..254} ascii {data}) | (4 {address[,address]*}) | (6 {address[,address]*}) | (42 {address[,address]*}) | (44 {address[,address]*}) | (26 {mtu}) | (121 {address/{0..32},gateway},*) | (249 {address/{0..32},gateway},*)Конфігурація для певного class id:
(config)>ip dhcp pool _WEBADMIN class test(config-dhcp-pool-class)>optionUsage template: option ({2..254} hex {data}) | ({2..254} ascii {data}) | (4 {address[,address]*}) | (6 {address[,address]*}) | (42 {address[,address]*}) | (44 {address[,address]*}) | (26 {mtu}) | (121 {address/{0..32},gateway},*) | (249 {address/{0..32},gateway},*)
Продемонструймо роботу параметрів DHCP на прикладі параметра 121 (розповсюдження статичних маршрутів через DHCP). Для цього ми налаштуємо розподіл маршрутів у підмережах 192.168.0.0/24 та 192.168.10.0/24 через шлюз 192.168.222.2 для всіх клієнтів DHCP, а в підмережах 192.168.1.0/24 та 192.168.11.0/24 через шлюз 192.168.222.3 для клієнтів DHCP з class id test.
Конфігурація виглядатиме так:
(config)>ip dhcp pool _WEBADMIN_HOME option 121 ascii 192.168.0.0/24,192.168.222.2,192.168.10.0/24,192.168.222.2(config)>ip dhcp class test(config-dhcp-class)>option 60 ascii "MSFT 5.0"(config-dhcp-class)>exit(config)>ip dhcp pool _WEBADMIN_HOME class test(config-dhcp-pool-class)>option 121 ascii 192.168.1.0/24,192.168.222.3,192.168.11.0/24,192.168.222.3(config-dhcp-pool-class)>exit(config)>system configuration save
Тепер під’єднаймо клієнта, у якого не вказано class id, і подивімося, які маршрути він отримає. Після отримання IP-адреси виконайте команду route print у командному рядку ОС Windows:

Також у дампі мережевих пакетів під час обміну даними між клієнтом DHCP та сервером DHCP можна побачити, що сервер передає цю інформацію в полі option:

Далі призначимо class id клієнту і подивимося, що він отримає. Для Windows class id встановлюється за допомогою команди ipconfig:
ipconfig /setclassid "wlan" testде wlan — назва мережевого підключення.

Поточний class id клієнта DHCP зберігається в реєстрі Windows у вигляді звичайного тексту і знаходиться за таким шляхом: Computer\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters\Interfaces для кожного інтерфейсу. Шуканий параметр називається DhcpClassId і має тип REG_SZ.

Після отримання IP-адреси виконайте команду route print у командному рядку Windows:

Також у дампі мережевих пакетів під час обміну даними між клієнтом DHCP та сервером DHCP можна побачити, що сервер передає цю інформацію в полі option:

Ви можете видалити клас за допомогою команди:
(config)> no ip dhcp class testУсі параметри для цього класу в налаштуваннях усіх серверів DHCP також буде видалено.
Також можна видалити певний параметр у класі:
(config)>ip dhcp pool _WEBADMIN_HOME class test(config-dhcp-pool-class)>no option 121 ascii 192.168.1.0/24,192.168.222.3,192.168.11.0/24,192.168.222.3
Ви можете видалити всі параметри для певного класу в межах одного DHCP-сервера:
(config)> ip dhcp pool _WEBADMIN_HOME no class testЗагальний параметр (не для класу) можна видалити так:
ip dhcp pool _WEBADMIN_HOME no option 121 ascii 192.168.0.0/24,192.168.222.2,192.168.10.0/24,192.168.222.2Додаткову інформацію про налаштування параметра DHCP 15 (Доменне ім'я DNS) наведено у статті Налаштування опції DHCP 15.