#dhcp
Вопрос:
Я пишу крошечный DHCP — клиент для микроконтроллера, в котором у меня нет энергонезависимой памяти (которую я хочу использовать). Поэтому при сбросе/перезагрузке я не смогу узнать, каким был мой ранее полученный IP-адрес. Если этот сброс/перезагрузка были резкими (что возможно) Возможно, я не смогу освободить IP-адрес, который был мне предоставлен. Поэтому мой единственный вариант-отправить еще один пакет обнаружения и снова танцевать.
Правильно ли это делать, если я не могу сохранить IP-адрес и перейти сразу к этапу запроса позже?
Комментарии:
1. Учитывая, что первым выбором DHCP-сервера для ответа на обнаружение является существующая привязка клиента, которая не существовала бы, если бы вы смогли ее освободить…
Ответ №1:
То, что вы описываете, является правильным поведением клиента без памяти, и оно соответствует спецификации DHCP RFC 2131. Так что вы можете продолжить работу с DHCPDISCOVER. Освобождение IP-адреса необходимо только в том случае, если вы хотите, чтобы DHCP-сервер забыл о вашей аренде. Обычно вы бы этого не хотели, и получение того же IP-адреса, что и в прошлый раз, нормально.