32
Проверка того, что клиент, находящийся в состоянии “Инициализации
перезагрузки”, расположен в нужной (корректной) сети, осуществляется
путём сравнения значения в поле “IP-адрес агента/ретранслятора”
(giaddr), значения в субполе параметра “Запрошенный IP-адрес” со значе-
ниями, найденными в базе данных. Если DHCP-сервер обнаружит, что
клиент расположен с другой сети (то есть в результате сравнения
приме-
няемой маски локальной подсети или маски удалённой подсети (если по-
ле “IP-адрес агента/ретранслятора” (giaddr) не нулевое) со значением па-
раметра “Запрошенный IP-адрес” действительно обнаружено несовпаде-
ние), то серверу целесообразно направить клиенту DHCPNAK-
сообщение.
Если сеть “корректна”, то DHCP-серверу целесообразно проверить, явля-
ется ли заявленный клиентом его IP-адрес корректным. Если нет, то
DHCP-серверу целесообразно передать DHCPNAK-сообщение клиенту.
Если DHCP-сервер не обладает данными об этом клиенте, то он обязан
“сохранить молчание”, но он может направить предупреждение сетевому
администратору. Такой режим функционирования является обязательным
в целях “мирного сосуществования” DHCP-серверов, подключённых к
общей “шине”.
Если в DHCPREQUEST-сообщении поле “IP-адрес агента/ретранслятора”
(giaddr) содержит значение “0x0”, то
клиент подключён к одной и той же
подсети, что и сервер. Сервер обязан передавать DHCPNAK-сообщение в
широковещательном режиме с адресом назначения “0xffffffff”, так как
клиент может не иметь корректного сетевого адреса или маски подсети и
может быть не способен отвечать на ARP-запросы.
Если в DHCPREQUEST-сообщении поле “IP-адрес агента/ретранслятора”
(giaddr) содержит не
нулевое значение, то клиент расположен в другой
подсети. Сервер обязан в DHCPNAK-сообщении установить широкове-
щательный бит в значение “1” (рис.2), и поэтому агент/ретранслятор бу-
дет ретранслировать DHCPNAK-сообщение клиенту в широковещатель-
ном режиме, так как клиент может не иметь корректного сетевого адреса
или маски подсети и может быть не способен отвечать
на ARP-запросы;
# DHCPREQUEST-сообщение, сформированное в состоянии “Обновления”
(Renewing):
Значение “Идентификатор сервера” и параметр “Запрошенный IP-адрес”
не должны указываться в этом сообщении; поле “IP-адрес клиента”
(ciaddr) должно содержать IP-адрес клиента. В такой ситуации считается,
что клиент полностью настроен, и он старается продлить свой срок арен-
ды. Данное сообщение будет передаваться с однонаправленным адресом,
и поэтому
агенты/ретрансляторы не будут участвовать в этой передаче.