Ответ
DHCP (Dynamic Host Configuration Protocol) — это сетевой протокол для автоматической выдачи IP-адресов и других сетевых параметров (маска, шлюз, DNS-серверы) клиентским устройствам. В инфраструктуре DevOps он используется для автоматизации настройки виртуальных машин, контейнеров и физических серверов.
Принцип работы (DORA):
- Discover: Клиент, заходя в сеть, отправляет широковещательный запрос
DHCPDISCOVERс вопросом "Есть ли DHCP-сервер?" - Offer: DHCP-сервер отвечает
DHCPOFFER, предлагая свободный IP-адрес из своего пула. - Request: Клиент принимает предложение и отправляет
DHCPREQUESTзапрос на аренду этого адреса. - Acknowledge: Сервер подтверждает аренду пакетом
DHCPACK, передавая клиенту полную конфигурацию.
Пример настройки и диагностики в Linux:
# Проверить полученную конфигурацию
ip addr show eth0
# Или
dhclient -v eth0 # Принудительно запросить адрес
# Посмотреть аренды на сервере (ISC DHCP Server)
cat /var/lib/dhcp/dhcpd.leases
# Пример конфигурации сервера (dhcpd.conf)
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200;
option routers 192.168.1.1;
option domain-name-servers 8.8.8.8, 1.1.1.1;
default-lease-time 600;
max-lease-time 7200;
}
В DevOps-практике:
- В облачных средах (AWS VPC, GCP) DHCP встроен и управляется самой платформой.
- Для инфраструктуры в bare-metal или частном облаке часто используется
dnsmasqилиisc-dhcp-server. - Важно резервировать (static lease) IP-адреса для критичных серверов (например, DNS, шлюзов), чтобы их адреса не менялись.