Поиск по сайту:

Как установить DHCP-сервер в Ubuntu и Debian


Протокол динамической конфигурации хоста (DHCP) – это сетевой протокол, который используется для автоматического назначения хост-компьютерам IP-адресов и соответствующих сетевых конфигураций с сервера.

IP-адрес, назначенный DHCP-сервером DHCP-клиенту, находится в «аренде», время аренды обычно варьируется в зависимости от того, как долго клиентскому компьютеру может потребоваться подключение или конфигурация DHCP.

Как работает DHCP?

Ниже приводится краткое описание того, как на самом деле работает DHCP:

  • После загрузки клиента (настроенного на использование DHCP) и подключения к сети он отправляет пакет DHCPDISCOVER на DHCP-сервер.
  • Когда DHCP-сервер получает пакет запроса DHCPDISCOVER, он отвечает пакетом DHCPOFFER.
  • Затем клиент получает пакет DHCPOFFER и отправляет пакет DHCPREQUEST на сервер, показывая, что он готов получить информацию о конфигурации сети, указанную в DHCPOFFER . пакет.
  • Наконец, после того как DHCP-сервер получает пакет DHCPREQUEST от клиента, он отправляет пакет DHCPACK, показывающий, что клиенту теперь разрешено использовать назначенный ему IP-адрес.

В этой статье мы покажем вам, как настроить DHCP-сервер в Ubuntu/Debian Linux, и запустим все команды с помощью команды sudo, чтобы получить права root-пользователя.

Настройка среды тестирования

Для этой настройки мы собираемся использовать следующую среду тестирования.

DHCP Server - Ubuntu 16.04 
DHCP Clients - CentOS 7 and Fedora 25

Шаг 1. Установка DHCP-сервера в Ubuntu

1. Выполните приведенную ниже команду, чтобы установить пакет сервера DCHP, который ранее назывался dhcp3-server.

sudo apt install isc-dhcp-server

2. После завершения установки отредактируйте файл /etc/default/isc-dhcp-server, чтобы определить интерфейсы, которые DHCPD должен использовать для обслуживания запросов DHCP, с помощью параметра INTERFACES. .

Например, если вы хотите, чтобы демон DHCPD прослушивал eth0, настройте его следующим образом:

INTERFACES="eth0"

А также узнайте, как настроить статический IP-адрес для интерфейса выше.

Шаг 2. Настройка DHCP-сервера в Ubuntu

3. Основной файл конфигурации DHCP — /etc/dhcp/dhcpd.conf. Здесь необходимо добавить всю информацию о вашей сети для отправки клиентам.

В файле конфигурации DHCP определены два типа операторов:

  • Параметры — укажите, как выполнять задачу, выполнять ли задачу или какие параметры конфигурации сети отправлять DHCP-клиенту.
  • объявления — определяют топологию сети, указывают клиентов, предлагают адреса для клиентов или применяют группу параметров к группе объявлений.

4. Теперь откройте и измените основной файл конфигурации, определите параметры DHCP-сервера:

sudo vi /etc/dhcp/dhcpd.conf 

Установите следующие глобальные параметры в верхней части файла, они будут применяться ко всем объявлениям ниже (укажите значения, применимые к вашему сценарию):

option domain-name "tecmint.lan";
option domain-name-servers ns1.tecmint.lan, ns2.tecmint.lan;
default-lease-time 3600; 
max-lease-time 7200;
authoritative;

5. Теперь определите подсеть; здесь мы настроим DHCP для сети LAN 192.168.10.0/24 (используйте параметры, соответствующие вашему сценарию).

subnet 192.168.10.0 netmask 255.255.255.0 {
        option routers                  192.168.10.1;
        option subnet-mask              255.255.255.0;
        option domain-search            "tecmint.lan";
        option domain-name-servers      192.168.10.1;
        range   192.168.10.10   192.168.10.100;
        range   192.168.10.110   192.168.10.200;
}

Шаг 3. Настройте статический IP-адрес на клиентском компьютере DHCP

6. Чтобы назначить фиксированный (статический) IP-адрес определенному клиентскому компьютеру, добавьте раздел ниже, где вам нужно явно указать его MAC-адреса и IP-адрес, который будет назначен статически:

host centos-node {
	 hardware ethernet 00:f0:m4:6y:89:0g;
	 fixed-address 192.168.10.105;
 }

host fedora-node {
	 hardware ethernet 00:4g:8h:13:8h:3a;
	 fixed-address 192.168.10.106;
 }

Сохраните файл и закройте его.

7. Затем запустите на время службу DHCP и включите ее автоматический запуск при следующей загрузке системы, например:

------------ SystemD ------------ 
sudo systemctl start isc-dhcp-server.service
sudo systemctl enable isc-dhcp-server.service


------------ SysVinit ------------ 
sudo service isc-dhcp-server.service start
sudo service isc-dhcp-server.service enable

8. Далее не забудьте разрешить службу DHCP (демон DHCPD прослушивает порт 67/UDP) на брандмауэре, как показано ниже:

sudo ufw allow  67/udp
sudo ufw reload
sudo ufw show

Шаг 4. Настройка клиентских компьютеров DHCP

9. На этом этапе вы можете настроить компьютеры клиентов в сети на автоматическое получение IP-адресов от DHCP-сервера.

Войдите на клиентские компьютеры и отредактируйте файл конфигурации интерфейса Ethernet следующим образом (запишите имя/номер интерфейса):

sudo vi /etc/network/interfaces

И определите параметры ниже:

auto  eth0
iface eth0 inet dhcp

Сохраните файл и выйдите. И перезапустите сетевые службы следующим образом (или перезагрузите систему):

------------ SystemD ------------ 
sudo systemctl restart networking

------------ SysVinit ------------ 
sudo service networking restart

Альтернативно, используйте графический интерфейс на настольном компьютере для выполнения настроек, установите для параметра «Метод» значение «Автоматический» (DHCP), как показано на снимке экрана ниже (рабочий стол Fedora 25).

На этом этапе, если все параметры настроены правильно, ваш клиентский компьютер должен автоматически получать IP-адреса от DHCP-сервера.

Вот и все! В этом уроке мы показали вам, как настроить DHCP-сервер в Ubuntu/Debian. Поделитесь с нами своими мыслями через раздел обратной связи ниже. Если вы используете дистрибутив на основе Fedora, узнайте, как настроить DHCP-сервер в CentOS/RHEL.