- Как настроить DHCP-сервер в Ubuntu
- Установка сервера DHCP
- Настройка сервера DHCP
- Определение подсети
- Глобальная конфигурация DHCP
- Управление Службой DHCP
- Настройка клиента DHCP
- Список арендованных адресов
- Похожие записи:
- Установка и базовая настройка DHCP сервера на Ubuntu
- Установка и настройка
- Возможные проблемы
- Not configured to listen on any interfaces!
- Читайте также
Как настроить DHCP-сервер в Ubuntu
DHCP (Dynamic Host Control Protocol), как вы все знаете, является сетевым протоколом, который автоматически назначает IP-адреса клиентским машинам в сети. Он устраняет утомительную работу по ручному назначению IP-адресов каждой машине в большой сети. Кроме того, он устраняет конфликты, возникающие из-за ошибочного назначения одного и того же IP-адреса нескольким машинам. Мы можем определить диапазоны IP-адресов в конфигурации DHCP-сервера. Наряду с IP-адресом мы можем определить и другую информацию, такую как маска подсети, шлюз по умолчанию, информация о DNS-сервере и т.д., и эта информация затем распространяется среди клиентских машин в сети.
В этой статье мы рассмотрим, как установить DHCP-сервер в Ubuntu и настроить одного клиента на автоматическое получение IP-адреса с этого DHCP-сервера.
Установка сервера DHCP
Прежде чем приступить к установке DHCP-сервера, сначала обновите пакеты, выполнив следующую команду в Терминале:
Затем выполните следующую команду в Терминале для установки DCHP-сервера:
sudo apt-get install isc-dhcp-server -y
Подождите некоторое время до завершения установки.
Настройка сервера DHCP
После завершения установки DHCP-сервера перейдем к его настройке. IP-адрес нашего DHCP-сервера — 192.168.110.1. Чтобы узнать IP-адрес вашего DHCP-сервера, введите следующую команду в терминале:
Файл конфигурации DHCP находится по адресу /etc/dhcp/dhcpd.conf. Мы можем открыть этот файл, выполнив следующую команду в Терминале
sudo nano /etc/dhcp/dhcpd.conf
Определение подсети
Добавьте следующие строки в конфигурационный файл для определения подсети, диапазона IP-адресов, домена и серверов доменных имен, как показано ниже:
Чтобы определить подсеть, добавьте следующие строки:
subnet 192.168.153.0 netmask 255.255.255.0
При определении информации о подсети (диапазон, шлюз по умолчанию, сервер доменных имен), обязательно заканчивайте строки точкой с запятой (;) и заключайте их в фигурные скобки < >.
Чтобы указать диапазон арендуемых адресов, добавьте следующую строку. Диапазон определяет набор пула IP-адресов, из которого IP-адреса выделяются клиентам DHCP
range 192.168.110.5 192.168.1.10;
Чтобы указать шлюз по умолчанию, добавьте следующую строку:
option routers 192.168.110.1;
Чтобы указать серверы доменных имен, добавьте следующую строку:
option domain-name-servers 1.1.1.1, 1.0.0.1;
Внесите изменения в соответствии с параметрами вашей сети.
Глобальная конфигурация DHCP
Ниже приведены основные шаги, необходимые для настройки глобальных параметров для установки DHCP-сервера.
1. Чтобы задать время аренды по умолчанию и максимальное время аренды, найдите параметры default-lease-time и max-lease-time в файле config и измените их значения.
default-lease-time 600; max-lease-time 7200;
2. Если у вас несколько интерфейсов, вам нужно определить, какой интерфейс DHCP-сервер должен использовать для обслуживания DHCP-запросов. В конфигурационном файле найдите и отредактируйте значение INTERFACESv4 и измените его на интерфейс, который мы хотим использовать для обслуживания запросов.
3. Чтобы сделать DHCP-сервер официальным DHCP-сервером для клиентов, откомментируйте следующую строку в конфигурационном файле (убрав символ #):
Это базовая конфигурация, необходимая для запуска DHCP-сервера. После завершения работы сохраните и закройте конфигурационный файл.
Управление Службой DHCP
После завершения настройки вы можете использовать следующие команды для управления DHCP-сервером:
Чтобы убедиться, что служба работает нормально, проверьте статус службы DHCP, выполнив следующую команду в терминале:
sudo systemctl status isc-dhcp-server.service
Ниже приведен снимок экрана, показывающий состояние DHCP-сервера. Вы можете увидеть активный (работающий), выделенный зеленым цветом, подтверждающий, что DHCP-сервер работает нормально:
Есть еще несколько команд, которые мы можем использовать для запуска, остановки и перезапуска службы DHCP.
Внимательно проверяйте наличие точки с запятой в конце строк конфигурации, в противном случае может возникнуть ошибка запуска isc-dhcp-server
Чтобы запустить службу DHCP, выполните следующую команду в терминале:
sudo systemctl start isc-dhcp-server.service
Чтобы остановить службу DHCP, выполните следующую команду в Терминале:
sudo systemctl stop isc-dhcp-server.service
Чтобы перезапустить службу DHCP, выполните следующую команду в Терминале:
sudo systemctl restart isc-dhcp-server.service
Настройка клиента DHCP
Нам потребуется настроить сетевые параметры клиентского компьютера для получения IP-адреса от DHCP-сервера. Здесь мы будем использовать другой Ubuntu 18.04 LTS в качестве клиентского компьютера.
На клиентском компьютере откройте приложение Настройки из меню Dash в Ubuntu.
Затем выберите вкладку Сеть в левой панели приложения Настройки. Затем откройте настройки адаптера, нажав на значок шестеренки перед ним. Убедитесь, что он включен.
Откроется окно настроек адаптера. Выберите вкладку IPv4 в верхнем меню. Затем выберите опцию Автоматически (DHCP). Затем нажмите Применить, чтобы сохранить изменения.
Затем перезапустите сетевые службы, выполнив следующую команду в Терминале:
sudo systemctl restart NetworkManager.service
Теперь запустите Терминал и введите следующую команду, чтобы найти IP-адрес системы.
Проверьте конфигурацию сети с помощью команды IP
Вы увидите IP-адрес, который будет из диапазона, определенного нами в конфигурации DHCP-сервера. Если клиент по-прежнему не получает IP-адрес от DHCP-сервера, перезагрузите систему.
Список арендованных адресов
Чтобы узнать, какие адреса были назначены клиентам сервером DHCP, откройте машину, которую вы настроили как сервер DHCP, и введите следующую команду в Terminal:
Аренда - это период времени, на который IP-адрес назначается компьютеру.
Из этого списка вы можете убедиться, что наш DHCP клиент с MAC: 00:0c:29:4b:f8:15 получил IP адрес 192.168.153.141 от DHCP сервера.
Теперь установка завершена, и у нас есть DHCP сервер. Теперь мы можем использовать этот DHCP-сервер для назначения IP-адресов.
Похожие записи:
Установка и базовая настройка DHCP сервера на Ubuntu
Опубликовано: 12.03.2023
Установка и настройка
Сервер DHCP в Ubuntu может быть реализован с помощью пакета isc-dhcp-server. Его можно установить из стандартных репозиториев системы. Выполняем обновления кэша пакетов и установку:
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 — время и максимальное время в секундах, на которое клиент получит адрес, по его истечению будет выполнено продление срока.
Проверить корректность конфигурационного файла можно командой:
dhcpd -t -cf /etc/dhcp/dhcpd.conf
Разрешаем автозапуск сервиса:
systemctl enable isc-dhcp-server
systemctl restart isc-dhcp-server
Добавляем правило в firewall:
iptables -I INPUT -p udp --dport 67 -j ACCEPT
Возможные проблемы
Not configured to listen on any interfaces!
Сервис dhcp не запускается, а в логе можно увидеть ошибки, на подобие:
No subnet declaration for ens18 (192.168.1.10).
.
** Ignoring requests on ens18. If this is not what
you want, please write a subnet declaration
in your dhcpd.conf file for the network segment
to which interface ens18 is attached. **
.
Not configured to listen on any interfaces
Причина: в конфигурационном файле описана подсеть, которая не настроена ни на одном из сетевых интерфейсов сервера.
Решение: конфигурация subnet должна включать только те подсети, в которых настроен сам сервер DHCP. Посмотреть сетевые настройки можно командой:
После чего необходимо проверить настройки в конфигурационном файле сервера dhcp.
Читайте также
Другие инструкции, связанные с DHCP: