Здравия всем, дамы и господа, сегодня, как и обещал мы разберём установку и настройку dhcp-сервера на linux. Эти процессы не слишком сильно отличаются на CentOS8 и Debian.  Разберём оба варианта. Первые несколько пунктов будут одинаковы для обеих систем, когда начнутся различия, я уведомлю об этом.


Установка


Вы берёте ваш пакетный менеджер и просите его установить вам dhcp.
В CentOS8 это делается так:
yum install dhcp-server
А в debian так
apt install isc-dhcp-server
Вот собственно и всё, далее лишь настройка.


Файл конфигурации


Конфиг-файл у сервера выдачи адресов – прекрасная вещь, в которой разберётся даже ребёнок, если знает английский. Но здесь я не для того, чтобы говорить, как это легко, а чтобы наглядно поазать, как это делается.
В обеих системах файл конфигурации находится в одном и том же месте, а именно в директории “/etc/dhcp/”. Там находится файл dhcpd.conf. Именно он нам и нужен. Открыть его можно, как и любой текстовый файл в linux, с помощью утилиты nano. Для этого выполним команду
nano /etc/dhcp/dhcpd.conf


Debian


На системах, основанных на debian после введения предыдущей команды вы сразу попадаете в конфиг файл, который остаётся только редактировать.


CentOS8


Здесь вам придётся немного потанцевать с бубном, ведь единственное что будет в этом файле  это указание на то, что здесь ничего нет, а пример там.
А точнее:


Собственно, что нам нужно – это скопировать файл примера на место оригинального конфига.
cp /usr/share/doc/dhcp-server/dhcpd.conf.example /etc/dhcp/dhcpd.conf
cp – копирование
первый путь – копируемый файл
второй путь – целевой файл
Как вы могли заметить, расширение целевого файла отличается от изначального, ведь нам нужно заменить файл конфигурации, кстати здесь ответьте “y”.


Конфигурирование


Файлы конфигурации ничем не отличаются, по сему напишу это в одном абзаце.
Как я уже писал ранее, разобраться в конфигурироании dhcp не составит труда, ведь в файле уже приведены наиболее часто используемые опции, более того, они подписаны и объяснены, но… На английском, так что без него будет трудно, но я облегчу вам жизнь, объяснив основные опции, синтаксис и принцип работы. Начнем по порядку, а там ясно будет.
    1. Все строки, которые начинаются с “#” - это комментарии, если вам не нужна строка, то вместо того, чтобы её стереть вы можете её закомментировать
    2. option domain-name “example.org”; - эта опция отвечает за имя домена, а example.org в данном случае – домен, как не трудно догадаться, но здесь лучше поставить своё.
    3. option domain-name-servers 192.168.1.10; - здесь выбирается сервер разрешения доменных имён, о его настройке мы поговорим, тогда, когда я сам в полной мере это пойму, так как это отдельное “счастье”. Здесь, как можно догадаться, указывается ip адрес вашего DNS сервера.
    4. Default-lease-time 600; - время в секундах, на которое будет выдаваться ip адрес.
    5. Max-lease-time 7200; - максимальное время в секундах, на которое будет выдаваться ip.
    6. #ddns-update-style none; - эта опция включает/выключает автоматическое обновление dns записи при получении, этого мы коснёмся, когда будем разбирать настройку DNS. Как вы видите, строка закомментирована, а это значит, что она неактивна.
    7. #authoritative; - эта строка отвечает за определение сервера, как основного. Она закомментирована, а должно быть наоборот. Удаляем “#”.
    8. log-facility local7; - настройка логирования.
    9. Subnet 192.168.10.0 netmask 255.255.255.0 {    - Создание подсети и указание маски
range 192.168.10.10 192.168.10.50;   - диапазон раздаваемых адресов.
}
Так выглядит самая базовая настройка подсети. Выглядит логично, не так ли?
Если оставить всё так оно уже будет работать, но стоит рассказать ещё и про то, что у каждой подстети можно выставить свои настройки, выглядит это примерно так

Subnet 192.168.10.0 netmask 255.255.255.0 {
range 192.168.10.10 192.168.10.50;
option routers 192.168.10.1;   - ip-адрес маршрутизатора
option domain-search "itsnews.tech";   - имя домена
option domain-name-servers 192.168.10.1;    - адрес dns-сервера
}

С этими настройками ваша жизнь, конечно, заиграет новыми красками, но ведь можно выдавать ещё и статический адрес определённому компьютеру, делается это следующим образом:

host strife {
      hardware ethernet 00:00:00:00:00:00;
      fixed-address 192.168.10.105;
}

host denez {
       hardware ethernet 11:11:11:11:11:11;
       fixed-address 192.168.10.106;
}

То есть вы прописываете имя устройства, его mac-адрес и задаёте фиксированный ip, всё просто.


Запуск


Запуск демона dhcp, как и любого другого осуществляется командой

systemctl start dhcpd

Также нужно добавить демона в автозапуск

systemctl enable dhcpd


На этом, пожалуй всё. Конечно, как вы могли заметить в файле конфигурации dhcp есть ещё множество строк, но все они используются куда реже, а если они вам понадобятся, то английский вам в помощь, за сим откланяюсь.

Комментарии