Поднимем же отказоустойчивый DHCP сервер на FreeBSD! Просто и быстро.
Имеем 2 сервера: dhcp-primary.example.com и dhcp-secondary.example.com
На обоих установим DHCP.
Из пакетов:
# pkg install -g "isc-dhcp43-server-*"
Или из портов:
# cd /usr/ports/net/isc-dhcp43-server && make install clean
Конфиг на первом будет такой:
failover peer “failover-partner” {
primary;
address dhcp-primary.example.com;
port 519;
peer address dhcp-secondary.example.com;
peer port 520;
max‐response‐delay 60;
max‐unacked‐updates 10;
mclt 3600;
split 128;
load balance max seconds 3;
}
На втором:
failover peer “failover-partner” {
secondary;
address dhcp-secondary.example.com;
port 520;
peer address dhcp-primary.example.com;
peer port 519;
max‐response‐delay 60;
max‐unacked‐updates 10;
load balance max seconds 3;
}
Параметр mclt (Maximum Client Lead Time) должен быть указан только на первом сервере. Более подробно смотрите мануал по dhcpd.conf
Добавляем пул failover в описанную подсеть:
subnet 10.100.100.0 netmask 255.255.255.0 {
option domain-name-servers 10.0.0.53;
option routers 10.100.100.1;
pool {
failover peer “failover-partner”;
range 10.100.100.20 10.100.100.254;
}
}
7) Конфигурируем OMAPI и определяем секретный ключ.
Вставляем это (с Вашим ключем) в dhcpd.conf на обоих серверах:
omapi-port 7911;
omapi-key omapi_key;
key omapi_key {
algorithm hmac-md5;
secret Ofakekeyfakekeyfakekey==;
}
Сгенерировать ключ можно так:
# dnssec‐keygen ‐a HMAC‐MD5 ‐b 512 ‐n USER DHCP_OMAPI
Перезапускаем службы DHCP на обоих серверах
# service isc-dhcp-server restart
И проверяем. Выключаем любой из них, все будет и далее работать.