- ИТ База знаний
- Полезно
- Навигация
- Серверные решения
- Телефония
- Корпоративные сети
- Настройка DHCP сервера на CentOS или Ubuntu
- Установка DHCP-сервера в CentOS и Ubuntu
- Настройка DHCP-сервера в CentOS и Ubuntu
- Настройка DHCP сервера в Linux
- Обнаружение DHCP (DHCPDISCOVER)
- Ответ DHCP — сервера (DHCPOFFER)
- Запрос DHCP-сервера (DHCPREQUEST)
- Подтверждение от DHCP-сервера (DHCPACK)
- Отказ от настроек, предоставленных DHCP-сервером (DHCPDECLINE)
- Отмена от DHCP-сервера (DHCPNAK)
- Освобождение адреса DHCP (DHCPRELEASE)
- Информация DHCP (DHCPINFORM)
- Клиент DHCP (dhclient) Linux
- Сервер DHCP на Linux
- Установка и настройка DHCP в Ubuntu
- Настройка DHCP сервера Linux
- Проверяем выдался ли адрес на машине из локальной сети
- Настройка совместной работы DHCP и DNS
- Настройка утилиты AppArmor для корректной работы DHCP
ИТ База знаний
Курс по Asterisk
Полезно
— Узнать IP — адрес компьютера в интернете
— Онлайн генератор устойчивых паролей
— Онлайн калькулятор подсетей
— Калькулятор инсталляции IP — АТС Asterisk
— Руководство администратора FreePBX на русском языке
— Руководство администратора Cisco UCM/CME на русском языке
— Руководство администратора по Linux/Unix
Навигация
Серверные решения
Телефония
FreePBX и Asterisk
Настройка программных телефонов
Корпоративные сети
Протоколы и стандарты
Настройка DHCP сервера на CentOS или Ubuntu
Раздаем IP — адреса на Linux
Привет! Сегодня мы хотим рассказать про то, как настроить DHCP-сервер и клиент в Linux CentOS и Linux Ubuntu. Поехали!
Мини — курс по виртуализации
Знакомство с VMware vSphere 7 и технологией виртуализации в авторском мини — курсе от Михаила Якобсена
Установка DHCP-сервера в CentOS и Ubuntu
Пакет DHCP-сервера доступен в официальных репозиториях основных дистрибутивов Linux, его установка довольно проста, просто выполните следующую команду:
После завершения установки настройте интерфейс, на котором вы хотите, чтобы демон DHCP обслуживал запросы, в файле конфигурации /etc/default/isc-dhcp-server или /etc/sysconfig/dhcpd.
Например, если вы хотите, чтобы демон DHCPD прослушивал eth0, установите его с помощью следующей настройки.
Сохраните файл и выйдите.
Настройка DHCP-сервера в CentOS и Ubuntu
Основной файл конфигурации DHCP находится по адресу /etc/dhcp/dhcpd.conf, который должен содержать настройки того, что делать, где делать и все сетевые параметры, предоставляемые клиентам.
Этот файл в основном состоит из списка операторов, сгруппированных в две широкие категории:
- Глобальные параметры: укажите, выполнять ли задачу, как выполнять задачу или какие параметры конфигурации сети предоставить DHCP-клиенту.
- Объявления: определить топологию сети, указать состояние клиентов, предложить адреса для клиентов или применить группу параметров к группе объявлений.
Теперь откройте и отредактируйте файл конфигурации для настройки вашего DHCP-сервера.
Начните с определения глобальных параметров, которые являются общими для всех поддерживаемых сетей, в верхней части файла. Они будут применяться ко всем объявлениям:
Затем вам необходимо определить диапазон для внутренней подсети и дополнительные настройки:
- subnet – сеть, в которой будут работать настройки;
- option routers – шлюз по-умолчанию;
- option subnet-mask – маска подсети;
- range – диапазон IP-адресов;
- option domain-name-servers – DNS-сервера;
- option domain-name – суффикс доменного имени;
- option broadcast-address — адрес сети для широковещательных запросов;
- default-lease-time, max-lease-time — время и максимальное время в секундах, на которое DHCP-клиент получит адрес;
Обратите внимание, что хосты, которым требуются специальные параметры конфигурации, могут быть перечислены в инструкциях хоста в cправке.
Теперь, когда вы настроили демон DHCP-сервера, вам нужно запустить службу на некоторое время и включить ее автоматический запуск при следующей загрузке системы, а также проверить, работает ли она, используя следующие команды.
Затем разрешите выполнение запросов к демону DHCP в брандмауэре, который прослушивает порт 67/UDP, запустив его.
Настройка клиентов DHCP
Наконец, вам нужно проверить, нормально ли работает сервер DHCP. Войдите на несколько клиентских компьютеров в сети и настройте их на автоматическое получение IP-адресов с сервера.
Измените соответствующий файл конфигурации для интерфейса, на котором клиенты будут автоматически получать IP-адреса.
Настройка клиента DHCP на CentOS
В CentOS конфигурационные файлы интерфейса находились в /etc/sysconfig/network-scripts/.
Добавьте следующие параметры:
Сохраните файл и перезапустите сетевой сервис (или перезагрузите систему).
Настройка DHCP-клиента в Ubuntu
В Ubuntu 16.04 вы можете настроить интерфейс в файле конфигурации /etc/network/interfaces.
Добавьте эти строчки:
Сохраните файл и перезапустите сетевой сервис (или перезагрузите систему).
В Ubuntu 18.04 сетевое управление контролируется программой Netplan. Вам нужно отредактировать соответствующий файл, например, в каталоге /etc/netplan/
Затем включите dhcp4 под конкретным интерфейсом, например, под ethernet, ens0, и закомментируйте статические настройки, связанные с IP:
Сохраните изменения и выполните следующую команду, чтобы применить изменения.
Для получения дополнительной информации смотрите справочные страницы dhcpd и dhcpd.conf.
Готово! В этой статье мы рассмотрели, как настроить DHCP-сервер в дистрибутивах CentOS и Ubuntu Linux.
Онлайн курс по Linux
Мы собрали концентрат самых востребованных знаний, которые позволят тебе начать карьеру администратора Linux, расширить текущие знания и сделать уверенный шаг к DevOps
Источник
Настройка DHCP сервера в Linux
Протокол динамического отделения адресов (DHCP) — это сетевой сервис, который позволяет компьютерам в сети автоматически выходить настройки с сервера вместо того, чтобы настраивать каждый сетевой хост вручную. Пк, настроенные быть клиентами DHCP, не управляют тем, какие настройки они получат от DHCP сервера, и эта наладка совершенно незаметна для пользователя компьютера.
Обнаружение DHCP (DHCPDISCOVER)
На первом этапе, заказчик выполняет широковещательный запрос по всей физической сети с целью обнаружить доступные DHCP-серверы. Он пускает сообщение типа DHCPDISCOVER, при этом в качестве IP-адреса источника указывается 0.0.0.0 (так как пк ещё не имеет собственного IP-адреса), а в качестве адреса назначения — широковещательный адрес 255.255.255.255. Помимо IP источника и назначения, клиент в данном сообщении посылает: уникальный идентификатор запроса, собственный MAC, и, возможно, прошлый присвоенный IP.
Ответ DHCP — сервера (DHCPOFFER)
Получив сообщение от покупателя, сервера определяют требуемую конфигурацию клиента в соответствии со своими указанными в конфигурационном файле опциями. Все сервера, получившие запрос, формируют ответ (DHCPOFFER), содержащий конфигурацию клиента, и пускают его клиенту на MAC-адрес. В ответе содержится следующая информация: IP, назначенный хосту, и прочие характеристики (такие, как адреса маршрутизаторов и DNS-серверов). Клиент получает ответы от всех серверов DHCP, ходовых в сети, из них он должен выбрать тот, который его «устраивает» (а устраивает его скорее всего тот, который пришел первоначальным).
Запрос DHCP-сервера (DHCPREQUEST)
Выбрав одну из конфигураций, предложенных DHCP-серверами, клиент пускает запрос DHCP (DHCPREQUEST). Он рассылается широковещательно. В сообщении содержится информация из сообщения DHCPDISCOVER + особая опция — идентификатор сервера — указывающая адрес DHCP-сервера. При этом, сервер, который не избран в качестве «устраивающего» тоже видит, что он не выбран.
Подтверждение от DHCP-сервера (DHCPACK)
Наконец, сервер подкрепляет запрос и направляет это подтверждение (DHCPACK) клиенту. После этого клиент должен настроить собственный сетевой интерфейс, используя предоставленные опции. При этом, кроме указанных сообщений, вероятны и другие.
Отказ от настроек, предоставленных DHCP-сервером (DHCPDECLINE)
Если после получения доказательства (DHCPACK) от сервера клиент обнаруживает, что указанный сервером адрес уже используется в сети, он распространяет широковещательное сообщение отказа DHCP (DHCPDECLINE), после чего процедура получения IP-адреса возобновляется.
Отмена от DHCP-сервера (DHCPNAK)
Если по каким-то причинам сервер не может предоставить покупателю запрошенный IP-адрес, или если аренда адреса удаляется администратором, сервер рассылает вещательное сообщение отмены DHCP (DHCPNAK). При получении такого сообщения соответствующий клиент обязан повторить процедуру получения адреса.
Освобождение адреса DHCP (DHCPRELEASE)
Клиент сможет явным образом прекратить аренду IP-адреса. Для этого он отправляет сообщение освобождения DHCP (DHCPRELEASE) этому серверу, который предоставил ему адрес в аренду.
Информация DHCP (DHCPINFORM)
Сообщение данных DHCP (DHCPINFORM) предназначено для определения дополнительных параметров TCP/IP (например, адреса (Почтовый адрес — условная кодификация места нахождения объекта в пространстве, применяемая для целей почтовой связи) маршрутизатора по умолчанию, DNS-серверов и т. п.) этими клиентами, которым не нужен динамический IP-адрес (то есть адрес которых настроен вручную). Серверы дают ответы на такой запрос сообщением подтверждения (DHCPACK) без выделения IP-адреса.
Клиент DHCP (dhclient) Linux
Для службы Linux в качестве DHCP-клиента необходимо установить пакет dhclient (в RedHat, возможно — dhcpcd). Этот клиент запрашивает у сервера параметры и применяет их к локальному хосту. dhclient использует конфигурационный файл /etc/dhclient.conf (время от времени /etc/dhcp/dhclient.conf или /etc/dhcp3/dhclient.conf). А так же, хранит информацию об арендованных метеопараметрах в файле /var/lib/dhcp/dhclient.leases. В общем случае, клиент (Клиент (от лат. cliens, множ. clientes) — в Древнем Риме свободный гражданин, отдавшийся под покровительство патрона и находящийся от него в зависимости) DHCP устанавливается разом с дистрибутивом ОС и создает файл конфигурации по умолчанию, который вполне работоспособен и не требует вмешательств. Для службы dhclient, необходимо в конфигурационных файлах сетевых интерфейсов вашего дистрибутива (на которых нужно получение сетевых параметров по DHCP), указать параметр BOOTPROTO=dhcp (для RedHat) и iface eth_№_ dhcp (для Deb).
Сервер DHCP на Linux
Для службы сервера необходимо установить пакет dhcp-server (в более старых версиях — dhcpd, время от времени пакет имеет имя dhcp3-server). После установки, в системе появиться привидение бес — dhcpd. Данный демон должен быть разрешен для запуска на необходимых уровнях исполнения ОС (команда в RedHat — /sbin/chkconfig dhcpd on, в Debian — /usr/sbin/update-rc.d dhcpd defaults). Так же, нужно, чтобы один из интерфейсов был настроен на статический адрес из той подсети, которую будет делить клиентам, иначе демон не будет работать корректно. После установки демон попробует запуститься, но у него ничего не получиться, потому что конфиг неверен.
Установка и настройка DHCP в Ubuntu
Обыкновенные сетевые настройки, получаемые DHCP-клиентом от DHCP-сервера, включают IP-адрес и сетевую маску, IP-адрес применяемого шлюза по умолчанию и IP-адрес используемых DNS-серверов. DHCP-сервер может также обеспечивать наладку таких свойств, как имя хоста, доменное имя, сервер времени и сервер печати.
Аппарат пакета DHCP-сервера
sudo apt-get install isc-dhcp-server
Редактирование файла /etc/default/isc-dhcp-server
Источник
Настройка DHCP сервера Linux
Устанавливаем DHCP:
Производим настройку — прежде всего, указываем параметры сети с которой будет работать сервер
Конфигурационный файл очень полный и содержит примеры конфигурации, добавляем наши параметры непосредственно после закомментированного примера (исключительно для удобства, место вставки строк значения не имеет)
subnet 192.168.11.76 netmask 255.255.255.0 <
range 192.168.11.71 192.168.11.75;
option domain-name-servers 192.168.11.76;
option domain-name-servers «server-gu.ru»;
option routers 192.168.11.11;
option broadcast-address ;
default-lease-time 7200;
max-lease-time 7200;
>
range — дипазон из которого будут динамически выдаваться адреса. Два указанных адреса в диапазон также включаются.
option domain-name-servers, option domain-name-servers — здесь приводятся данные сервера DNS, сконфигурированного на данной машине в рамках одной из предыдущих статей.
При использовании нескольких option domain-name-servers IP-адреса разделяются запятой.
Далее необходимо раскомментировать строку #authoritative;
Сделать это нужно после того как другой DHCP сервер (на роутере) выключен. После перезапуска службы DHCP сервер сможет отвергать запросы на повторное получеине IP-адресов и предлагать свои если использовавшиеся ранее адреса для выдачи более недоступны.
Перезапуск службы в продакшн довольно безопасен поскольку уже выданные адреса выдут выданы вновь при истечении срока lease — информация о них записывается во временные файлы.
Проверяем выдался ли адрес на машине из локальной сети
В командной строке пишем:
Видим, что ПК использует адрес за пределами диапазона, предусмотренного конфигурацией DHCP сервера — следовательно, он был выдан ранее роутером
Настройка совместной работы DHCP и DNS
Цель — обеспечить корректную работу DNS при выдаче машине нового адреса посредством DHCP (обычно для серверов используются статические IP адреса, однако необходимость в подобных настройках возникнуть может).
Как мы добьемся поставленной цели:
- Сгенерируем ключ, который позволит BIND принимать изменения
- Обновим конфигурационные файлы BIND и DHCPd чтобы пакеты могли взаимодействовать с ключом
- Убедимся в том, что BIND в состоянии писать информацию в собственные файлы
Трудность, которая появляется при подобной конфигурации — содержимое файлов DNS зон менять «руками» становится невозможно.
BIND предоставляет возможность произвести подобную настройку посредством утилиты RNDC
Ключ — «shared key» — доступен в файле /etc/bind/dndc.key, также мы можем создать свой ключ.
Предварительно смотрим помощь по утилите:
Ключ создан, идем в конфигурацию пакета и добавляем строку с include:
include «/etc/bind/dhcpd.key»
zone»server-gu.ru» <
type master;
file «/var/cache/bind/server-gu.ru.zone»;
allow-update < key «dhcp»; >;
>
Строкой, в которой указан путь к server-gu.ru.zone мы сменили расположение конфига поскольку в /etc/bind пользователь BIND писать информацию не может, а динамическое обновление файлов это подразумевает.
На каталог /var/cache/bind программный пакет, по умолчанию, имеет права r/w.
Те же две строки следует скорректировать/добавить для зоны обратного преобразования.
Перемещаем конфигурационный файл:
Проверяем наличие прав на запись и меняем пользователя на bind
В случае трудностей проверяем /var/log/deamon.log
Сервис перезапустился, проверяем
Поскольку DHCP также работает от имени одноименного пользователя — потребуется дополнительно разрешить получать доступ к ключу.
Настройка утилиты AppArmor для корректной работы DHCP
AppArmor — программное средство защиты файлов от изменения и доступа на уровне операционной системы.
Сейчас ограничимся тем, что убедимся, что пакет настроен для динамического обновления DHCP.
Необходимо добаввить в один из конфигурационных файлов строку с указанием на файл ключа:
Производим финальную настрйоку DHCP — редактируем строку с ddns-update-style и добавляем указание на файл ключа. Также добавляем поддерку ddns в настройки подсети.
ddns-update-style interim;
include «/etc/bind/dhcpd.key»
subnet 192.168.11.76 netmask 255.255.255.0 <
range 192.168.11.71 192.168.11.75;
option domain-name-servers 192.168.11.76;
option domain-name-servers «server-gu.ru»;
option routers 192.168.11.11;
option broadcast-address ;
default-lease-time 7200;
max-lease-time 7200;
ddns-domainname «server-gu.ru.»;
zone server-gu.ru. <
primary 192.168.11.76;
key «dhcpd»;
>
zone 11.168.192.in-addr.arpa. <
primary 192.168.11.76;
key «dhcpd»;
>
>
Чтобы проверить, что настроенная конфигурация работает корректно заставим другую машину (dncptest), находящуюся в сети, запросить и получить IP адрес — в это время на сервере будем отслеживать данные, которые записываются в логи
Запрашиваем новый адрес с dncptest и не видим в логе никакх ошибок, что говорит о том. что конфигурация корректна.
Проверяем DNS
Видим адрес из диапазона, предусмотренного range
Проверяем наличие временных файлов в которые пишутся данные об обновлении зон
Видим соответствие имени машины и А записи DNS
Команда удаляет временные файлы с расширением .jnl до нового динамического обновления
rndc freeze/thaw можно дополнять указанием конкретной зоны
Настройка DHCP сервера Linux на этом завершена. Читайте про конфигурацию DNS сервера на основе BIND9.
Источник