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

Установите DHCP-сервер в Ubuntu 16.04.

DHCP, аббревиатура от Dynamic Host Control Pпротокол, представляет собой сетевой протокол, который автоматически назначает IP-адреса клиентским системам в сети. Это упрощает утомительную задачу ручного назначения IP-адресов в большой сети, состоящей из сотен систем. Мы можем определить диапазон IP (областей) на DHCP-сервере и распределить их по сети. Клиентские системы в сети автоматически получат IP-адрес.

В этом руководстве мы увидим, как установить DHCP-сервер на сервере Ubuntu 16.04 LTS и настроить DHCP-клиенты.

Установите DHCP-сервер на сервере Ubuntu 16.04 LTS.

Для целей этого руководства я буду использовать следующую систему в качестве DHCP-сервера.

Мой DHCP-сервер:

  • ОС — Ubuntu 16.04 LTS, 64-разрядная версия.
  • IP-адрес - 192.168.1.105/24.
  • Имя хоста — ubuntuserver.ostechnix.lan

Откройте терминал и выполните следующую команду для установки DHCP-сервера:

sudo apt-get install isc-dhcp-server

DHCP-сервер установлен. Теперь пойдем дальше и настроим его в соответствии с нашими потребностями.

Настроить DHCP-сервер

Файл конфигурации DHCP-сервера по умолчанию - /etc/default/isc-dhcp-server. Нам нужно отредактировать и изменить его в соответствии с нашими требованиями.

Если на вашем DHCP-сервере установлено несколько сетевых карт, вам необходимо указать, на каком интерфейсе DHCP-сервер должен обслуживать DHCP-запросы.

Поскольку на моем сервере только один сетевой адаптер, я назначил 'enp0s3' в качестве интерфейса прослушивания. Здесь enp0s3 — это имя сетевой карты.

Для этого отредактируйте файл конфигурации /etc/default/isc-dhcp-server:

sudo vi /etc/default/isc-dhcp-server

Назначаем сетевой интерфейс:

[...]
INTERFACES="enp0s3"

Если у вас несколько интерфейсов, укажите их через пробел, например «eth0 eth1».

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

Затем отредактируйте файл dhcpd.conf,

sudo vi /etc/dhcp/dhcpd.conf

Измените его, как показано ниже. Замените имя домена своими собственными значениями.

Введите имя домена и серверы доменных имен:

[...]

option definitions common to all supported networks...
 option domain-name "ostechnix.lan";
 option domain-name-servers ubuntuserver.ostechnix.lan;

[...]

Чтобы сделать этот сервер официальным DHCP для ваших клиентов, найдите и раскомментируйте следующую строку:

[...]
authoritative;
[...]

Прокрутите немного вниз и определите подсеть, диапазон IP-адресов, домен и серверы доменных имен, как показано ниже.

[...]
A slightly different configuration for an internal subnet.
 subnet 192.168.1.0 netmask 255.255.255.0 {
 range 192.168.1.20 192.168.1.30;
 option domain-name-servers ubuntuserver.ostechnix.lan;
 option domain-name "ostechnix.lan";
 option routers 192.168.1.1;
 option broadcast-address 192.168.1.255;
 default-lease-time 600;
 max-lease-time 7200;
 }
[...]

Как вы видите в приведенной выше конфигурации, я назначил диапазон IP-адресов от 192.168.1.150 до 192.168.1.200. Таким образом, клиенты DHCP получат IP-адрес из этого диапазона. Но что, если вы хотите назначить конкретный IP-адрес (фиксированный IP-адрес) конкретному клиенту? Это тоже легко. Вы можете легко назначить конкретный IP-адрес клиенту вашей сети, добавив MAC-идентификатор этого клиента с фиксированным IP-адресом, как показано ниже.

Например, предположим, что мы хотим назначить IP 192.168.1.160 клиенту с MAC-идентификатором 00:22:64:4f:e9:3a. Чтобы узнать IP и MAC-адреса, используйте команду 'ifconfig'.

ifconfig

Пример вывода:

Посмотрите подчеркнутые слова. Это IP и MAC адреса.

Назначьте фиксированный IP-адрес и MAC-идентификатор клиента, как показано ниже.

[...]
host ubuntu-client {
 hardware ethernet 08:00:27:13:14:d5;
 fixed-address 192.168.1.160;
 }
[...]

После того, как вы изменили все настройки в соответствии с вашими требованиями, сохраните и закройте файл.

Теперь перезапустите службу DHCP:

sudo systemctl restart isc-dhcp-server

Убедитесь, что вы не оставили неиспользуемых записей в файле dhcpd.conf. Если есть неиспользуемые или ненужные строки, просто закомментируйте их. В противном случае служба DHCP не запустится.

Давайте проверим, запущена ли наша служба DHCP или нет с помощью команды:

sudo systemctl status isc-dhcp-server

Пример вывода:

Как вы видите на скриншоте выше, DHCP-сервер работает!

Чтобы запустить или остановить службу DHCP, используйте следующие команды:

sudo systemctl start isc-dhcp-server
sudo systemctl stop isc-dhcp-server

На этом этапе у вас будет работающий DHCP-сервер. Часть настройки серверной части закончена. Давайте продолжим и настроим DHCP-клиентов.

Настройка DHCP-клиентов

Для целей этого руководства я буду использовать рабочий стол Ubuntu 16.04 LTS в качестве DHCP-клиента.

Мой DHCP-клиент:

  • ОС — Ubuntu 16.04 LTS для рабочего стола
  • IP-адрес - DHCP включен

Откройте «Сетевые подключения» либо из панели Unity, либо из меню.

В окне «Сетевые подключения» выберите карту Ethernet и нажмите Изменить.

Нажмите Настройки IPv4 и выберите параметр Автоматически (DHCP). Наконец нажмите Сохранить.

Теперь перезапустите свою клиентскую систему и проверьте IP-адрес вашей клиентской системы.

ifconfig

Пример вывода:

Вы увидите новый IP-адрес из диапазона IP, который мы определили на DHCP-сервере, назначенный вашей клиентской системе.

Как вы видите на снимке экрана выше, моей настольной системе Ubuntu 16.04 LTS с MAC-идентификатором 08:00:27:13:14:d5 назначен фиксированный IP-адрес ( 192.168.1.160) с DHCP-сервера. Помните, что мы упомянули эти значения в файле dhcpd.conf нашего DHCP-сервера.

Поздравляем! DHCP-сервер работает!!

Рекомендуем прочитать:

  • Как отслеживать использование DHCP-сервера

Статьи по данной тематике