Устранение ошибки DHCP: получение DHCPNAK клиентом от DHCP-сервера
- Клиент не может получить IP-адрес и циклически сбрасывает сетевой интерфейс в состояние
169.254.X.X(APIPA). - В дампе сетевого трафика регистрируется ответ сервера:
DHCP Message Type: DHCPNAK (Negative Acknowledgment). - В системном журнале ISC-DHCP / Kea / Windows DHCP появляется запись:
DHCPREQUEST for 192.168.1.50 from 00:11:22:33:44:55 via eth0: wrong network. - Сброс сетевых подключений при перемещении ноутбуков между Wi-Fi сегментами или VLAN.
1. Анализ трассировки DHCP обмена через tcpdump
tcpdump -envv -i any port 67 or port 68Обратите внимание на поле Requested IP Address в DHCPREQUEST от клиента и сопоставьте его с подсетью интерфейса/VLAN.
2. Очистка устаревшей аренды на стороне клиента
# В среде Windows:
ipconfig /release
ipconfig /renew
# В среде Linux:
sudo dhclient -r && sudo dhclient -v eth03. Проверка настроек авторитативности на сервере (ISC-DHCP)
Если сервер обслуживает сегмент, он должен отвечать NAK на запросы чужих сетей для быстрого сброса клиентов:
# /etc/dhcp/dhcpd.conf
authoritative;
subnet 10.10.20.0 netmask 255.255.255.0 {
range 10.10.20.100 10.10.20.200;
option routers 10.10.20.1;
}4. Проверка корректности ретрансляции (DHCP Relay) на L3-коммутаторе
Убедитесь, что IP helper-address привязан к правильному SVI/VLAN интерфейсу и отправляет верный GIADDR.
Частые вопросы (FAQ)
В каких случаях DHCP-сервер отправляет сообщение DHCPNAK?
Сервер отправляет NAK, если клиент запрашивает IP-адрес, который не входит в пул данной подсети (например, клиент перешел из другого VLAN со старой арендой), либо если срок аренды истек и адрес уже занят другим хостом.
Почему отключение флага 'authoritative' может помочь при проблемах?
Если сервер не помечен как authoritative, он будет просто молча игнорировать некорректные DHCPREQUEST чужих сетей вместо отправки NAK. Клиент будет ждать ответа по таймауту, после чего начнет цикл DORA заново (DHCPDISCOVER).
Как ведет себя клиент при получении DHCPNAK?
Клиент немедленно сбрасывает запрошенный IP-адрес, переходит в состояние INIT и отправляет широковещательный запрос DHCPDISCOVER для получения нового корректного пула адресов.
Может ли Rogue DHCP сервер слать DHCPNAK легитимным клиентам?
Да. Неавторизованный DHCP-сервер с включенным режимом authoritative может заблокировать работу всей сети, рассылая NAK всем клиентам на любые их запросы. Для защиты используйте DHCP Snooping.