ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)

Что такое DHCP-сервер. Настройка DHCP на Debian

Что такое DHCP-сервер?

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

Существует две версии DHCP: v1 и v2. Версия 1 предоставляла IP-адреса только хостам, а версия 2, которая используется в операционной системе Microsoft Windows 2000 и 2003 Server, предлагает больше возможностей. Хотя оба работают по одной и той же концепции, они имеют разные реализации конкретных опций поставщика (VSOP), классов пользователей, периодов аренды и т. д.

Самым большим преимуществом использования DHCP по сравнению со статической адресацией является простота обслуживания, когда ваша сеть растет или сокращается. У вас также есть возможность централизованно управлять своими IP-адресами, что является дополнительным преимуществом по сравнению со статической адресацией. База данных DHCP может быть расположена на DCE NetServer под управлением Windows 2000/2003 Server или размещена на отдельном компьютере с помощью службы динамического DNS, такой как ddclient (решение на основе Perl).

 

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

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

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

DHCP-сервер, который получает широковещательный пакет «DHCP Discover» от нового или существующего ПК в своей подсети/сегменте LAN, должен предоставить предложение IP-адресов для этой подсети. Предложение содержится в пакете “DHCP Offer” и содержит такие сведения, как диапазон, продолжительность аренды и поля опций, а также другие опции конфигурации. Этот ответ также будет содержать параметры конфигурации TCP/IP для каждого хоста, включая: IP-адрес, маску подсети, шлюз по умолчанию (если есть), продолжительность аренды, DNS-серверы (если есть), имя домена и т. Д.

Затем клиент отправляет пакет DHCPREQUEST обратно на сервер в качестве положительного подтверждения предложения IP-адреса. Этот пакет также будет содержать свой аппаратный адрес (MAC) вместе с другими параметрами конфигурации, такими как DNS-серверы, имя домена и т. д.

Когда DHCP-сервер получает этот запрос, он отмечает пул адресов этого клиента в своей базе данных как «назначенный» и отвечает пакетом подтверждения (DHCPACK), который включает всю вышеуказанную информацию, а также любые определенные параметры, настроенные на этом сервере. Затем клиент настраивает свой сетевой интерфейс, используя эту информацию. Он сохранит продолжительность аренды и параметры, указанные администратором, в энергонезависимой ОЗУ, чтобы они были доступны в следующий раз при перезапуске системы, а существующие клиенты не должны запрашивать DHCP-сервер при каждом перезапуске.

К одному или нескольким хостам с уникальным локальным аппаратным адресом все время. Не на один или несколько хостов с разными глобальными IP-адресами при каждой загрузке. Это означает, что управление статическими адресами отдельных систем нелегко автоматизировать с помощью каких-либо клиентских программ DHCP: для этого вам нужно написать собственное программное обеспечение (в оболочке или Perl-скрипте). Большинство из них используют инструменты Berkeley NetUtils, которые можно найти здесь: https://netutils.com или продукты Microsoft, такие как команда netsh и утилита netshell для управления статической адресацией.

Эта статья покажет вам, как настроить DHCP-сервер с помощью пакета служебных программ DHCP-сервера ISC: DHCPD. Эта статья предназначена для серверов на базе Debian, работающих под управлением следующих ОС: Debian 6, 7, 8, 9,10.

 

Предпосылки

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

В этом руководстве предполагается, что вы, по крайней мере, знакомы с интерфейсом командной строки (CLI) ОС Linux. Если вы не знакомы с Linux CLI, ознакомьтесь с ним или попросите друга помочь настроить ваш DHCP-сервер вручную.

Поскольку это руководство предназначено для новичков, мы предполагаем, что в вашей системе еще не включен брандмауэр, поэтому вы можете выходить в Интернет из локальной сети. Это необходимо для загрузки и установки необходимых пакетов для вашего сервера.

 

Установка DHCP-сервера

Во-первых, мы должны убедиться, что в вашем дереве пакетов установлены последние версии программного обеспечения. Для этого введите в терминале следующую команду:

sudo apt-get update -y

Обновление вашей системы

Команда apt-get update обновит базу данных информации о пакетах, чтобы убедиться, что вы используете новейшее программное обеспечение.

-y флаг автоматически подтвердит любые запросы/подтверждения рекомендуемых действий, таких как продолжение любых доступных обновлений.

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

sudo apt-get install isc-dhcp-server -y

 

Эта команда загрузит и установит пакет служебной программы DHCP-сервера из ваших репозиториев Debian. Этот процесс может занять несколько минут (в зависимости от производительности вашей системы), поэтому подождите, пока он не завершит свою задачу установки успешно.

 

Установка DHCP-сервера

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

После успешного завершения установки мы настроим DHCP-сервер.

Главный файл конфигурации DHCP dhcpd.conf находится в каталоге/etc/dhcp/. Перед внесением изменений рекомендуется создать резервную копию исходного файла. Мы скопируем его с новым именем, отредактируем файл, а затем переименуем его обратно в исходное имя после того, как мы закончим редактирование.

sudo cp /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf_backup

 

Теперь откройте файл для редактирования с помощью любого редактора:

sudo nano /etc/dhcp/dhcpd.conf

 

Чтобы настроить параметры DHCP, вам необходимо понять, что это такое:

Все строки параметров заканчиваются точкой с запятой (;), чтобы DHCPD знал, что эта строка завершена. В образце файла конфигурации есть много строк параметров DHCP.

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

Некоторые параметры могут иметь более одного значения. В этом случае между значениями должна быть точка с запятой. Некоторые параметры имеют только одно значение без точки с запятой, например: interface «eth0».

Вот некоторые общие параметры конфигурации, которые вы можете настроить для своего DHCP-сервера

 

Настройка интерфейсов для прослушивания

Во-первых, давайте определим интерфейсы в нашей системе, которые мы хотим, чтобы DHCPD слушал. В этом примере eth0 подключен к Интернету, а eth1 подключен к нашей локальной сети. Мы изменим конфигурацию так, чтобы DHCPD прослушивал оба интерфейса.

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

Приведенная выше команда открывает и редактирует файл/etc/default/isc-dhcp-server.

Найдите на странице “INTERFACES =” и раскомментируйте его, удалив знак «#» перед ним. Должно получиться так: INTERFACES=”eth0 eth1″

Затем просто замените eth0 на свое устройство с интернет-интерфейсом (это может быть что угодно), чтобы оно выглядело так: INTERFACES=”eth1″

Сохраните файл, нажав Ctrl + X, затем нажмите Y, чтобы подтвердить сохранение, а затем нажмите Enter.

Наконец, после того, как вы внесли все изменения, сохраните их, а затем перезапустите DHCP, чтобы соответствующим образом применить любые новые конфигурации. Если все прошло успешно, статус службы должен показывать запущенный процесс DHCPD зеленым цветом с числом, указанным в скобках.

sudo systemctl перезапуск isc-dhcp-server
sudo systemctl status isc-dhcp-server

Глобальная конфигурация

Обратите внимание, что все используемые здесь параметры являются лишь примерами для описания функций различных линий и могут не работать в других дистрибутивах Linux. Всегда полезно регулярно читать файл dhcpd.conf и понимать, что делает каждая строка конфигурации. Возможно, вам даже понадобятся некоторые дополнительные конфигурации в зависимости от вашей сетевой среды, поэтому убедитесь, что вы знакомы с этими командами, прежде чем применять их в своей системе.

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

sudo nano  /etc/dhcp/dhcpd.conf

Объявление IP-подсети

Мы хотим, чтобы наш DHCP-сервер был авторитетным для всех IP-подсетей в нашей сети, и именно здесь мы определяем, что это за подсети. Он состоит из 4 значений, разделенных пробелами: сетевая маска, IP-адреса двух маршрутизаторов по обе стороны от него (шлюз) и, наконец, начальный и конечный адреса вашего сегмента локальной сети.

sudo nano  /etc/dhcp/dhcpd.conf

Настройка хоста с фиксированным IP

В некоторых случаях вы можете захотеть ограничить назначение IP-адресов от определенных клиентов, используя фильтрацию MAC-адресов или даже собственный идентификатор клиента. Например, система с MAC-адресом «00: 11: 1A: 2B: 3C: 4D» получит IP 192.166.88.99.

 

Заключение

Эта статья показывает вам базовую конфигурацию, которая поможет вам начать работу. Для получения подробной информации посетите вики-страницы isc-dhcp-server ( https://wiki.debian.org/DHCP_Server ).

Exit mobile version