- Базовая настройка
- Структура среды тестирования
- Как работает протокол DHCP?
- Шаг 1: Установка DHCP-сервера на CentOS
- Шаг 2: Настройка DHCP-сервера в CentOS
- Шаг 3: Присвойте статический IP DHCP-клиенту
- Шаг 4: Настройка DHCP-клиентов
- Как установить DHCP-сервер в CentOS, RHEL и Fedora: 1 комментарий
- Учебный портал
- Базовая настройка сервера
- Определенный интерфейс для работы
- Проверка клиента
Базовая настройка
yum install dhcp
Теперь откроем на редактирование конфигурационный файл:
И внесем в него, примерно, следующее:
subnet 192.168.0.0 netmask 255.255.255.0 <
range 192.168.0.100 192.168.0.200;
option domain-name-servers 192.168.0.10, 192.168.0.11;
option domain-name «dmosk.local»;
option routers 192.168.0.1;
option broadcast-address 192.168.0.255;
default-lease-time 600;
max-lease-time 7200;
>
- subnet обозначает сеть, в области которой будет работать данная группа настроек;
- range — диапазон, из которого будут браться IP-адреса;
- option domain-name-servers — через запятую перечисленные DNS-сервера;
- option domain-name — суффикс доменного имени;
- option routers — шлюз по умолчанию;
- option broadcast-address — адрес сети для широковещательных запросов;
- default-lease-time, max-lease-time — время и максимальное время в секундах, на которое клиент получит адрес, по его истечению будет выполнено продление срока.
** все примеры настроек можно увидеть в файле /usr/share/doc/dhcp*/dhcpd.conf.example (вместо * будет версия установленного dhcp).
Проверить корректность конфигурационного файла можно командой:
DHCP (Dynamic Host Configuration Protocol — протокол динамической настройки узла) — это сетевой протокол, позволяющий серверу автоматически назначать клиентам в сети IP-адреса из определенного пула и предоставлять связанные с ними конфигурационные параметры.
Это означает, что каждый раз, когда клиент, подключенный к сети, загружается, он получает динамический, а не статический IP-адрес. IP-адрес, назначенный клиенту DHCP-сервером, находится в так называемой “аренде”, которая может варьироваться в зависимости от того, насколько клиенту может потребоваться подключение или настройка DHCP.
В этом руководстве мы рассмотрим, как установить и настроить DHCP-сервер в дистрибутивах CentOS/RHEL и Fedora.
Структура среды тестирования
Для этой установки, мы будем использовать следующую среду тестирования.
Как работает протокол DHCP?
Прежде чем двигаться дальше, давайте кратко объясним, как работает DHCP:
- Когда клиентская машина, настроенная на использование DHCP и подключенная к сети, включена, она посылает сообщение DHCPDISCOVER на DHCP-сервер.
- И после того, как DHCP-сервер получает сообщение DHCPDISCOVER, он отвечает сообщением DHCPOFFER.
- Затем клиент получает сообщение DHCPOFFER и отправляет на сервер сообщение DHCPREQUEST, означающее, что он готов получить сетевую конфигурацию, предлагаемую в сообщении DHCPOFFER.
- Последнее, но не менее важное, DHCP-сервер получает от клиента сообщение DHCPREQUEST и отправляет сообщение DHCPACK, показывающее, что клиенту теперь разрешено использовать назначенный ему IP-адрес.
Шаг 1: Установка DHCP-сервера на CentOS
1. Установка DHCP довольно проста, достаточно всего лишь ввести следующую команду:
Важно: предполагается, что к системе подключено более одного сетевого интерфейса, но ведь вам нужно, чтобы DHCP-сервер был запущен лишь на одном из интерфейсов, сделать это можно следующим образом.
2. Откройте файл /etc/sysconfig/dhcpd, добавьте имя конкретного интерфейса в список DHCPDARGS, например, если интерфейс eth0, тогда добавьте:
Сохраните этот файл и выйдите.
Шаг 2: Настройка DHCP-сервера в CentOS
3. Первым шагом установки DHCP-сервера является создание файла конфигурации dhcpd.conf. Основной файл конфигурации DHCP обычно располагается по пути /etc/dhcp/dhcpd.conf (изначально пуст) и хранит всю сетевую информацию, отправляемую клиентам.
Тем не менее, существует другой пример файла конфигурации /usr/share/doc/dhcp*/dhcpd.conf.sample, который является хорошей отправной точкой для настройки DHCP-сервера.
В файле конфигурации DHCP, существует два типа операторов:
- parameters (параметры) — этот оператор определяет как выполнять задачу, выполнять ли задачу вообще и какие параметры конфигурации сети отправлять DHCP-клиенту.
- declarations (объявление) — этот оператор определяет топологию сети, клиентов, предлагает адреса для клиентов и применяет группу параметров к группе объявлений.
Поэтому начните с копирования примера файла конфигурации, в качестве основного файла конфигурации:
4. Теперь откройте главный файл конфигурации и задайте параметры DHCP-сервера:
В верхней части файла установите значения глобальных параметров, которые будут применяться ко всем подсетям:
5. Теперь определите подсеть; в этом примере мы настроим DHCP для 192.168.56.0/24 LAN-сети (не забывайте использовать параметры, которые применяются к вашему варианту):
Шаг 3: Присвойте статический IP DHCP-клиенту
Вы можете присвоить статический IP-адрес конкретному клиентскому компьютеру в сети, просто определите раздел, описанный ниже, в файле /etc/dhcp/dhcpd.conf, в котором необходимо указать MAC-адреса и фиксированный IP адрес для назначения:
Сохраните файл и закройте его.
Примечание: Вы можете узнать MAC адрес в Linux, используя следующую команду:
6. Теперь запустите службу DHCP и включите параметр для её автоматического запуска со следующей загрузки системы, используя команды:
7. Затем не забудьте разрешить службу DHCP (DHCPD-служба прослушивает порт 67/UDP), как показано ниже:
Шаг 4: Настройка DHCP-клиентов
8. Теперь вы можете настроить своих клиентов в сети на автоматическое получение IP-адресов от DHCP-сервера. Войдите на клиентский компьютер и измените файл конфигурации интерфейса Ethernet следующим образом (не берите имя/номер интерфейса):
Добавьте следующие строки:
Сохраните файл и выйдите.
9. Также вы можете выполнить настройку на компьютере с помощью графического интерфейса (GUI), для этого установите Method на Automatic (DHCP), как показано на скриншоте ниже (Ubuntu 16.04 desktop).
10. Затем перезапустите сетевые службы следующим образом (вы также можете просто перезагрузить систему):
Если все настройки правильны, то ваши клиенты будут автоматически получать IP-адреса от DHCP-сервера.
Спасибо за внимание! Надеемся, что данная статья помогла вам.
Как установить DHCP-сервер в CentOS, RHEL и Fedora: 1 комментарий
Спасибо большое! Очень удобный сайт, все красиво и лаконично написано! Ребята, продолжайте в том же духе, удачи вам в ваших проектах!
Учебный портал

Базовая настройка сервера
# yum install dhcp
Теперь откроем на редактирование конфигурационный файл:
И внесем в него, примерно, следующее:
subnet 192.168.0.0 netmask 255.255.255.0 <
range 192.168.0.100 192.168.0.200;
option domain-name-servers 192.168.0.10, 192.168.0.11;
option domain-name «localdomain»;
option routers 192.168.0.1;
option broadcast-address 192.168.0.255;
default-lease-time 600;
max-lease-time 7200;
>
- subnet обозначает сеть, в области которой будет работать данная группа настроек;
- range — диапазон, из которого будут браться IP-адреса;
- option domain-name-servers — через запятую перечисленные DNS-сервера;
- option domain-name — суффикс доменного имени;
- option routers — шлюз по умолчанию;
- option broadcast-address — адрес сети для широковещательных запросов;
- default-lease-time, max-lease-time — время и максимальное время в секундах, на которое клиент получит адрес, по его истечению будет выполнено продление срока.
** все примеры настроек можно увидеть в файле /usr/share/doc/dhcp*/dhcpd.conf.example(вместо * будет версия установленного dhcp).
Разрешаем автозапуск сервиса:
# systemctl enable dhcpd
и запускаем его:
# systemctl start dhcpd
Добавляем правило в firewalld:
firewall-cmd —permanent —add-service=dhcp
Определенный интерфейс для работы
Если в системе присутствует несколько сетевых адаптеров, а сервер DHCP должен работать только для определенных, открываем на редактирование следующий файл:
И добавляем в него следующее:
* в данном примере сервер будет работать только для интерфейса ens224.
# systemctl restart dhcpd
Проверка клиента
Теперь необходимо проверить проделанную работу.
Для этого на клиенте открываем на редактирование следующий файл: