Процесс DHCP обычно включает следующие шаги:
-
Клиент отправляет сообщение DHCP Discover на DHCP-сервер. Это сообщение содержит MAC-адрес устройства и запрошенный IP-адрес.
-
DHCP-сервер отправляет сообщение DHCP Offer в ответ на запрос клиента. Это сообщение содержит такую информацию, как доступные IP-адреса, маски подсети и адреса шлюзов.
-
После получения сообщения «Предложение DHCP» клиент выбирает лучшее предложение DHCP, отправляет сообщение «Запрос DHCP» на сервер DHCP и запрашивает назначение IP-адреса.
-
После получения запроса от клиента DHCP-сервер отправляет сообщение DHCP Ack, чтобы подтвердить, что IP-адрес был выделен клиенту. В то же время он также информирует клиента о сроке аренды, то есть времени, в течение которого клиент может использовать IP-адрес.
-
После того, как клиент получит сообщение DHCP Ack, он завершает получение IP-адреса и начинает подключаться к сети.
Когда устройство повторно подключается к сети, DHCP-сервер проверяет, соответствует ли MAC-адрес устройства ранее назначенному IP-адресу. Если есть совпадение, DHCP-сервер переназначит этот IP-адрес устройству. В противном случае DHCP-сервер назначит новый IP-адрес. Этот процесс гарантирует, что устройство получит свой первоначально назначенный IP-адрес после повторного подключения к сети, что поможет устройству продолжить доступ к другим устройствам в сети.
DHCP — это протокол для устройств в локальной сети для получения IP-адреса, и он использует протокол UDP для связи. DHCP-сервер прослушивает клиентские DHCP-запросы на UDP-порту 67 и использует UDP-порт 68 для назначения IP-адресов клиентам. Некоторые ключевые типы сообщений, используемые в связи DHCP, включают обнаружение DHCP, предложение DHCP, запрос DHCP, подтверждение DHCP, и эти типы сообщений определены в RFC2131. Как запросы DHCP, так и ответы выполняются с использованием широковещательных передач UDP, поскольку широковещательные рассылки позволяют всем устройствам получать сообщения. В процессе связи сервер DHCP назначит клиенту соответствующую информацию о конфигурации сети, такую как IP-адрес, маска подсети и шлюз по умолчанию, чтобы клиент мог получить доступ к сети и нормально общаться.