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

Установка Сервера

При установки возможно будет ошибка, это нормально.

apt install isc-dhcp-server

Настройка

Основной конфигурационный файл - /etc/dhcp/dhcpd.conf. Файл с слушающими портами /etc/default/isc-dhcp-server

Общий вид конфигурации DHCP сервера

# Общие параметры 
option domain-name "example.org"; 
option domain-name-servers 1.1.1.1 8.8.8.8; 
default-lease-time 600; 
max-lease-time 7200; 
log-facility local7; 
 
# Структура подсети 
subnet 10.5.4.0 netmask 255.255.255.224 { 
	range 10.5.4.26 10.5.4.30; 
	option routers 10.5.4.1; 
} 
subnet 192.168.1.0 netmask 255.255.255.0 {
	range 192.168.1.1 192.168.1.253;
	option routers 192.168.1.1;
	option domain-name "vm.local";
	option domain-name-servers 192.168.1.2;
	option ntp-servers 192.168.168.1.2;
}
 
# Резервирование адресов 
host fantasia { 
	hardware ethernet 08:00:07:26:c0:a5; 
	fixed-address 192.168.1.1; 
}

Общие параметры:

option domain-name "example.org"; 
option domain-name-servers 1.1.1.1 8.8.8.8; 
default-lease-time 600; 
max-lease-time 7200; 
log-facility local7; 

Параметры описанные в данном разделе, будут применены ко всем подсетям, если в них нет этих же параметров.

ПараметрЗначение
option domain-nameимя домена которое будет выдано клиентам
option ntp-serversNTP сервера для клиентов
option domain-name-serversDNS-сервера для клиентов
default-lease-timeвремя аренды ip адреса в сек
max-lease-timeмаксимальное время аренды в сек

Настройка подсети

Для раздачи адресов в конкретную сеть необходимо следующая конструкция (по одной для каждой подсети):

subnet 10.5.4.0 netmask 255.255.255.224 { 
	range 10.5.4.26 10.5.4.30; 
	option routers 10.5.4.1; 
} 
ПараметрЗначение
subnet 10.5.5.0 netmask 255.255.255.224IP адрес и маска подсети
range 10.5.5.26 10.5.5.30;Диапазон адресов выдаваемых клиентам
option routers 10.5.5.1;IP шлюза (gateway)

Для исключения некоторого адреса из диапазона можно указать несколько range:

range 192.168.1.1 192.168.1.100;
range 192.168.1.110 192.168.1.200;

!!! Важно Если DHCP сервер находится в другой сети относительно той в которую он должен раздавать адреса, необходимо удовлетворить следующие требования:

  1. На DHCP сервере должна быть подсеть, той сети в которой находится он сам (если в этой сети не планируется клиентов DHCP, то можно указать subnet без параметров диапазона адресов и шлюза).
  2. Сервер DHCP должен иметь сетевую доступность (ping) с шлюзом сети в которую планируется раздавать адреса.
  3. На шлюзе этой сети должна быть настроена пересылка DHCP запросов на сервер DHCP.

Резервирование адресов

Для резервирования адресов используется следующая конструкция:

host fantasia { 
	hardware ethernet 08:00:07:26:c0:a5; 
	fixed-address 192.168.1.1; 
}
ПараметрЗначение
host fantasia {Название хоста, вместо fantasia обычно указывается имя устройства которому выдается адрес
hardware ethernet 08:00:07:26:c0:a5;MAC адрес устройства, которому выдается адрес
fixed-address 192.168.1.1;Какой адрес мы будем выдавать этому устройству

Посмотреть MAC адрес устройства можно командой: ip -c add

Указание слушающих DHCP запросы интерфейсов

Для того что б сервер DHCP мог принимать DHCP запросы, необходимо в файле /etc/default/isc-dhcp-server указать в поле INTERFACESv4 интерфейсы на которые будут приходить запросы.

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

Логирование в отдельный файл

Добавить параметр

# /etc/dhcp/dhcpd.conf
 
log-facility local7; # local7 параметр

DHCP Cluster


master
	failover peer "DHCP_ClUSTER" {
					primary;
					address 10.1.10.21;
					port 647;
					peer address 10.1.10.22;
					peer port 647;
					max-response-delay 60;
					max-unacked-updates 10;
					mclt 3600;
					split 128;
					load balance max seconds 3;
	}
	
	subnet 10.1.0.0 netmask 255.255.0.0 {
					pool {
					option routers 10.1.30.1;
					option subnet-mask 255.255.255.0;
					failover peer "DHCP_CLUSTER";
					range 10.1.30.1 10.1.30.250;
					}

slave
	failover peer "DHCP_ClUSTER" {
					secondary;
					address 10.1.10.22;
					port 647;
					peer address 10.1.10.21;
					peer port 647;
	}
	
	subnet 10.1.0.0 netmask 255.255.0.0 {
					pool {
					option routers 10.1.30.1;
					option subnet-mask 255.255.255.0;
					failover peer "DHCP_CLUSTER";
					range 10.1.30.1 10.1.30.250;
					}
	}

Применение настроек

Для применения настроек необходимо перезагрузить службу isc-dhcp-server.

Настройка DHCP-Relay - пересылки DHCP запросов

Это как ip-helper-address на Cisco

Установка

Служба отвечающая за пересылку DHCP запросов называется: isc-dhcp-relay.

Настройка

Во время настройки появится окошко с псевдографикой 
  1. Сначала нужно вписать ip сервера на который будут пересылаться адреса.
  2. Дальше интерфейсы, на которых необходимо прослушивать DHCP трафик (указываются интерфейсы в сети в которые будут раздаваться адреса и интерфейс через который доступен DHCP сервер ) Если необходимо указать несколько интерфейсов, то они записываются через пробел.
  3. Дополнительные опции можно пропустить
  4. Если необходимо проверить действующие настройки сети или внести в них изменения нужен файл: etc/defaults/isc-dhcp-relay, который будет содержать следующие настройки:
cat /etc/default/isc-dhcp-relay
 
# Defaults for isc-dhcp-relay initscript
# sourced by /etc/init.d/isc-dhcp-relay
# installed at /etc/default/isc-dhcp-relay by the maintainer scripts
 
#
# This is a POSIX shell fragment
#
 
# What servers should the DHCP relay forward requests to?
SERVERS="192.168.1.1"
 
# On what interfaces should the DHCP relay (dhrelay) serve DHCP requests?
INTERFACES="ens3 ens4"
 
# Additional options that are passed to the DHCP relay daemon?
OPTIONS=""
  • SERVERS - отвечает за сервер на который пересылать запросы
  • INTERFACES - отвечает за интерфейсы на которых нужно слушать запросы и интерфейс ведущий к DHCP серверу
  • OPTIONS - содержит дополнительные настройки

Применение изменений

Для применения настроек необходимо перезагрузить службу isc-dhcp-relay.