====== Настройка ISC DHCP Server ====== ~ $ ./deploy_dhcp.sh ====== Пошаговое руководство: Настройка ISC DHCP Server (4.4.3-P1 и выше) ====== В этой статье мы разберем процесс установки и правильной конфигурации классического DHCP-сервера, а также решим частую проблему с порядком запуска служб. 01 ===== Установка пакетов ===== Для начала необходимо установить сам сервер из официальных репозиториев. Мы будем использовать пакет ''%%dhcp-server%%'': bash apt-get update && apt-get install -y dhcp-server Copy 02 ===== Синхронизация служб (Ожидание сети) ===== **Важный нюанс:** По умолчанию DHCP-сервер может попытаться привязаться к сетевым интерфейсам до того, как системная утилита (например, ''%%NetworkManager%%'') успеет их инициализировать. Из-за этого DHCP-сервер выдаст ошибку и упадет при запуске системы. Чтобы заставить службу DHCP дожидаться полного поднятия сети, включим системное событие ожидания ''%%network-online%%'': bash systemctl enable --now NetworkManager-wait-online Copy Далее создадим "переопределение" (override) для системного юнита ''%%dhcpd%%''. Команда ниже откроет редактор: bash EDITOR=vim systemctl edit dhcpd Copy Вставьте следующие строки в файл (обязательно между комментариями //"Anything between here and the comment below"// и //"Lines below this comment will be discarded"//): override.conf [Unit] Wants=network-online.target After=network-online.target Copy Сохраните изменения (в vim: ''%%ESC%%'', затем ''%%:wq%%'' и ''%%Enter%%''). 03 ===== Расчет маски подсети ===== Прежде чем писать конфигурацию, нужно правильно указать маску подсети. Длина префикса (например, ''%%/28%%'') определяет количество единичных битов в маске. В последнем октете каждый из 8 битов представляет степень двойки: 128, 64, 32, 16, 8, 4, 2, 1. * Префикс **/24** (все биты нули): маска ''%%255.255.255.0%%'' * Префикс **/25** (1 бит): ''%%128%%'' = маска ''%%255.255.255.128%%'' * Префикс **/26** (2 бита): 128 + 64 = маска ''%%255.255.255.192%%'' * Префикс **/27** (3 бита): 192 + 32 = маска ''%%255.255.255.224%%'' * Префикс **/28** (4 бита): 224 + 16 = маска ''%%255.255.255.240%%'' В нашей конфигурации ниже мы будем использовать в качестве примера сеть с маской ''%%255.255.255.240%%''. 04 ===== Настройка файла dhcpd.conf ===== Откроем главный файл конфигурации DHCP-сервера: bash vim /etc/dhcp/dhcpd.conf Copy Разберем детально, из чего состоит блок настройки зоны (subnet). Подставьте ваши данные вместо шаблонных переменных: **Объявление зоны адресов:** Укажите базовый адрес вашей сети и рассчитанную на предыдущем шаге маску: dhcpd.conf subnet ваш_адрес_сети netmask ваша_маска_подсети { Copy **Диапазон выдачи (пул):** Какие именно адреса сервер будет отдавать клиентам (от начального до конечного): dhcpd.conf range начальный_ip конечный_ip; Copy **Шлюз по умолчанию:** Адрес роутера (шлюза), через который клиенты будут выходить в интернет или другие сети: dhcpd.conf option routers IP_вашего_шлюза; Copy **Локальный домен:** Имя домена, которое будет передано клиентам для локальной маршрутизации имен: dhcpd.conf option domain-name "ваш_локальный_домен"; Copy **DNS-серверы:** Адрес DNS-сервера (или нескольких через запятую) для разрешения доменных имен клиентами: dhcpd.conf option domain-name-servers IP_адрес_DNS_сервера; Copy **Время аренды:** Базовое и максимальное время (в секундах), на которое выдается IP-адрес устройству: dhcpd.conf default-lease-time 600; max-lease-time 3600; } Copy 05 ===== Применение настроек и проверка ===== Включите автоматический запуск DHCP-сервера вместе с ОС и запустите его прямо сейчас: bash systemctl enable --now dhcpd Copy Чтобы убедиться, что сервер корректно раздает адреса, перейдите на клиентскую машину (находящуюся в том же сегменте сети), перезагрузите её или переподнимите сетевой интерфейс, а затем проверьте выданные параметры: bash (на клиенте) reboot # после загрузки: ip -c a Copy В выводе команды вы должны увидеть IP-адрес из настроенного пула (от начального до конечного IP). Nord Admin System Guides © 2026. Powered by Open Source.