Если у меня есть ПК с Windows, на котором запущен DHCP-сервер. Я ожидаю, что загрузка займет порядка нескольких минут. В моей сети будет множество других устройств от разных поставщиков, которые загрузятся за секунды.
Я не нашел "стандарта" для повторных попыток DHCP-клиента. Будет ли время ожидания этих устройств истекло до запуска DHCP-сервера Windows? Если да, то как лучше всего с этим справиться?
Уточнения: в нем нет клиентов Windows. Заказчиками являются встраиваемые промышленные устройства, такие как камеры, обогреватели и роботы.
Меня не беспокоит, что произойдет, если DHCP-сервер выйдет из строя. Это встроенные устройства, подключенные к одному источнику питания. Я хочу знать, что делать, когда "фабрика" утром включается.
Хорошо, у меня есть пара мыслей:
Вот мое рекомендуемое решение:
На рынке доступны блоки распределения питания с упорядочением питания. Обычно это двух- или трехступенчатые PDU с программируемыми задержками. С их помощью, когда они включены, они включат первую ступень, будут ждать указанное количество секунд, включат вторую ступень и т. Д. Вы можете подключить свой коммутатор и свой сервер к первой ступени, имея PDU подождите 5 минут, пока сервер завершит загрузку, а затем включите вторую ступень, на которой есть все остальные устройства.
Я могу придумать три сценария для DHCP-клиента Windows. Я не могу разговаривать с DHCP-клиентами, отличными от Windows, но должен предположить, что они работают одинаково.
А Бег DHCP-клиент Windows, имеющий активную аренду, пока DHCP-сервер недоступен: DHCP-клиент продолжит использовать текущий арендованный IP-адрес. Когда он достигнет фазы продления (T1), он попытается продлить существующий договор аренды. Если ему не удается связаться с DHCP-сервером, который может продлить существующую аренду, клиент продолжит попытки продлить аренду, пока не достигнет фазы повторного связывания (T2), где он попытается связаться с любым DHCP-сервером. Если таймер T2 истечет, клиент освободит свой IP-адрес.
DHCP-клиент Windows с активным арендованным перезагружен пока DHCP-сервер недоступен: DHCP-клиент продолжит использовать текущий арендованный IP-адрес. Когда он достигнет фазы продления (T1), он попытается продлить существующий договор аренды. Если ему не удается связаться с DHCP-сервером, который может продлить существующую аренду, клиент продолжит попытки продлить аренду, пока не достигнет фазы повторного связывания (T2), где он попытается связаться с любым DHCP-сервером. Если таймер T2 истекает, клиент освобождает свой IP-адрес. Предостережение здесь заключается в том, что, насколько я понимаю, DHCP-клиент должен освободить свой существующий IP-адрес, если ему не удается связаться с DHCP-сервером при перезагрузке, потому что он не может подтвердить, что ему разрешено продолжать использовать IP-адрес. Похоже, что это не относится к клиентам Windows, что меня немного озадачило. Во всяком случае, мои тесты с клиентами Windows показывают, что они действительно сохраняют свой арендованный IP-адрес при перезагрузке, когда DHCP-сервер недоступен.
Клиент DHCP для Windows, который не иметь существующую аренду: конечно, DHCP-клиент не сможет связаться с DHCP-сервером и назначит себе IP-адрес APIPA. Как сказал Нил Т. в своем ответе, DHCP-клиент, который не при активной аренде будет пытаться связаться с DHCP-сервером примерно каждые 5 минут.
Клиенты Windows обычно дают серверу около 60 секунд (плюс-минус), чтобы собрать все вместе. После этого они переходят в резервный режим, при котором устройства проверяют каждые 5 минут. Если 5 минут - это слишком долго, чтобы ждать, вы можете перезагрузить коммутатор, к которому они подключены. Даже горячая перезагрузка, если коммутатор имеет эту функцию, подойдет.
Есть ли причина, по которой этим клиентам нельзя предоставить статический IP-адрес? Хотя это «технически незаконно», я видел места, где некоторым устройствам назначались адреса в пространстве 192.168.0.0/16, а затем серверы DHCP были настроены на начало назначения адресов выше назначенных.
Если это неразумно, почему бы не установить срок аренды DHCP на две недели или более?