Назад | Перейти на главную страницу

Есть ли нижняя граница времени аренды DHCP?

В настоящее время я столкнулся с проблемой изменить значение параметра времени аренды DHCP на сервере и настроить клиента с тем же значением. Я использовал пакет dhcp-server и поместил следующую запись в файл /etc/dhcp/dhcpd.conf на сервере для времени аренды по умолчанию.

время аренды по умолчанию 60;

Однако, когда я запускаю службу dhcp на стороне клиента, клиенту по-прежнему требуется 300 секунд в качестве значения времени аренды dhcp. Я попытался заставить его работать, удалив файл /var/lib/dhcp/dhclient.leases на стороне клиента и перезапустил DHCP-сервер, но это не помогло. Он всегда получает 300 секунд в качестве значения времени аренды dhcp.

Как вы думаете, что может быть причиной этого? Как вы думаете, есть ли нижняя граница для значения опции времени аренды dhcp? N.B. Я знаю, что установка срока аренды DHCP на 60 секунд не имеет большого смысла с точки зрения того, что клиент должен обновлять информацию об аренде максимум за 60 секунд, и это увеличивает сетевой трафик. Но я экспериментировал с различными параметрами конфигурации и был бы признателен, если бы кто-нибудь сказал мне, можно ли установить время аренды DHCP на уровне 60 секунд. Если нет, то почему?

Минимальное время аренды составляло 1 час (см. RFC1541). В более поздних версиях спецификации не существует официального минимального срока аренды, и предполагается, что клиент откажется от аренды, если ему не нравится время аренды. Так что этот клиент, возможно, сломан.

Вы должны установить срок аренды в /etc/dhcp/dhcpd.conf как это

default-lease-time 60;
max-lease-time 60;
min-lease-time 60; 

По умолчанию минимальное время аренды является 300 с. Причина, по которой вы видите 300 в wirehark.

В Спецификация DHCP RFC 2131 - заменяет RFC 1541 использует 4-октетное / 32-битное значение для представления времени аренды в секундах - поэтому 0 - это ноль секунд (я бы не советовал не использовать это), 1 - одна секунда, а 0xffffffff - бесконечность - хотя 0xfffffffe нет и на самом деле оказывается чуть меньше 136,2 года.