Я запускаю isc-dhcp-server на Ubuntu 18.04. Клиенты без резервирования DHCP могут получить IP-адрес, маску подсети, шлюз по умолчанию и DNS-серверы из пула без проблем.
Как только я определю резервирование, клиент правильно получит зарезервированный IP-адрес, маску подсети и DNS-серверы, однако шлюз по умолчанию будет отсутствовать, как показано на этом снимке экрана.
Вот мой файл dhcpd.conf для справки.
ddns-update-style none;
authoritative;
option domain-name "test.lan";
option domain-name-servers 10.127.253.236,10.127.253.237;
default-lease-time 86400;
max-lease-time 86400;
failover peer "dhcp-failover" {
primary;
address 10.127.253.236;
port 647;
peer address 10.127.253.237;
peer port 647;
max-response-delay 60;
max-unacked-updates 10;
mclt 3600;
split 128;
load balance max seconds 3;
}
subnet 10.127.253.224 netmask 255.255.255.240 {
pool {
failover peer "dhcp-failover";
option routers 10.127.253.225;
option subnet-mask 255.255.255.240;
range 10.127.253.226 10.127.253.238;
}
ignore client-updates;
}
##############################
## START OF IP RESERVATIONS ##
##############################
host MacBook-pro {
hardware ethernet f0:18:98:35:29:6c;
fixed-address 10.127.253.227;
}
решение1
Чтобы назначить хосту определенный адрес, этот адрес должен находиться в подсети, но не в диапазоне.
Фиксированный адрес не назначается механизмом пула и, следовательно, не использует возможности этого пула.
Параметры маршрутизаторов и маски подсети относятся к пулу, а не к подсети.
Самый простой способ — назначить хосту адрес 226, уменьшить пул, начав с 227, и переместить параметры в подсеть:
subnet 10.127.253.224 netmask 255.255.255.240 {
option routers 10.127.253.225;
option subnet-mask 255.255.255.240;
pool {
failover peer "dhcp-failover";
range 10.127.253.227 10.127.253.238;
}
ignore client-updates;
}
host MacBook-pro {
hardware ethernet f0:18:98:35:29:6c;
fixed-address 10.127.253.226;
}