Функционирование протокола DHCP
Протокол DHCP использует четырехэтапный процесс для конфигурации своего клиента. Если у компьютера несколько сетевых адаптеров, то каждый из них конфигурируется отдельно и ему назначается уникальный IP-адрес.
Этапы конфигурирования протокола DHCP:
1.Запрос аренды Клиент инициализирует ограниченную версию протокола TCP/IP и посылает широковещательный запрос для поиска DHCP-сервера и информации об IP-адресации.Запрос на аренду посылается в сообщении , которое содержит аппаратный адрес сетевого адаптера клиента и имя его компьютера. Процесс получения аренды начинается следующих случаях:
- протокол TCP/IP инициализируется в первый раз как клиент протокола DHCP,
- клиенту отказано в запрашиваемом IP-адресе, возможно из-за отмены аренды сервером протокола DHCP,
- клиент уже арендовал IP-адрес, затем отказался от него, в данный момент ему нужна новая аренда.
2.Предложение аренды .Серверы протокола DHCP, принимающие запрос и имеющие свободную конфигурацию для клиента, посылают широковещательное предложение, содержащее: аппаратный адрес сетевого адаптера клиента, предлагаемый IP-адрес, маску подсети, срок аренды, идентификатор сервера (IP-адрес DHCP-сервера) . DHCP-сервер резервирует предложенный IP-адрес, чтобы он не попал другому DHCP-клиенту. DHCP-клиент выбирает IP-адрес из первого полученного предложения. DHCP-клиент ждет предложений в течение 1с. Если их нет, он посылает широковещательные запросы через 9, 13, 16с и один раз со случайным интервалом в диапазоне от 0 до 1000мс. Если предложение не получено, то клиент повторяет попытки каждые 5 минут.
3.Выбор аренды .Получив предложение хотя бы от одного сервера DHCP, клиент посылает широковещательное сообщение о том, что выбор сделан на основе этого предложения,которое содержит идентификатор сервера (IP-адрес), предложение которого было выбрано. Все остальные DHCP-серверы отзывают свои предложения, чтобы их IP-адреса были доступны для следующего запроса.
4.Подтверждение аренды .DHCP-сервер, приняв это сообщение, посылает широковещательное подтверждение клиенту, которое содержит выданный в аренду IP-адрес и другую конфигурационную информацию. Когда DHCP-клиент получает подтверждение, протокол TCP/IP полностью инициализируется и рассматривается в качестве клиента протокола DHCP. Клиент сохраняет IP-адрес, маску подсети и другую информацию об IP-адресе в разделе реестра ( adapter - имя сетевого адаптера ) HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services \adapter\Parameters\Tcpip
Все клиенты DHCP пытаются обновить аренду по истечении половины ее срока при каждом перезапуске системы. Для этого клиент посылает сообщение на DHCP-сервер, предоставивший аренду. Если DHCP-сервер доступен, то он обновляет аренду и посылает клиенту подтверждение с указанием времени новой аренды и , возможно обновленными параметрами конфигурации.
Если клиент не может связаться с DHCP-сервером, генерируется сообщение о том, что аренда не была обновлена . Следующие попытки обновления проискодит по истечении 87,5% времени аренды. Сервер DHCP отвечает или сообщением “аренда обновлена” или сообщением,предлагающим арендовать другой IP-адрес. Если аренда истекла или получено сообщение о отказе аренды, DHCP-клиент должен немедленно отказаться от использования IP-адреса и попытаться арендовать новый IP-адрес.
При создании сервера DHCP для каждой подсети создается уникальный диапазон адресов под названием DHCP scope.
База данных DHCP автоматически сохраняется каждые 60 минут. Если Windows NT Server обнаружит повреждение базы данных, то он автоматически восстановит ее по резервной копии.
Резервные копии хранятся в каталоге \systemroot\System32\Dhcp\Backup\Jet
Файлы базы данных хранятся в каталоге \system\System32\Dhcp. Их не следут перемещать или исправлять.
Файлы:
Dhcp.mdb - Файл базы данных протокола DHCP
Dhcp.tmp - Временный файл для хранения информации базы данных в течение работы сервиса DHCPServer
Jet.log и Jet*.log - Журнал всех транзакций, выполненных с базой данных. При необходимости используется
протоколом DHCP для восстановления данных
System.mdb - Используется протоколом DHCP для хранения информации о структуре базы данных
Протокол ARP.
Протокол ARP
Для того чтобы установить соединение, узлам должны быть известны адреса сетевых адаптеров других узлов. Разрешение адреса (address resolution) - это процесс определения аппаратного адреса сетевого адаптера по его IP-адресу. Протокол ARP (Address Resolution Protocol) - часть уровня Интернета модели TCP/IP - позволяет определять адреса сетевых адаптеров узлов, расположенных в одной физической сети.
Протокол ARP нужен для получения адресов сетевых адаптеров TCP/IP-узлов в сетях, поддерживающих широковещание. Он использует широковещательные запросы, содержащие IP-адрес получателя, чтобы выяснить адрес сетевого адаптера этого узла или адрес необходимого шлюза.
Получив адрес сетевого адаптера, ARP сохраняет его вместе с соответствующим IP-адресом в своем кэше. Протокол ARP всегда сначала ищет адреса IP и сетевого адаптера в кэше перед формированием широковещательного ARP-запроса.
Обратное разрешение адреса (reverse address resolution) - отображение адреса сетевого адаптера узла в его IP-адрес. Microsoft TCP/IP этот механизм не поддерживает.
Примечание Протокол ARP описан в RFC 826.