TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security)
Шрифт:
Клиент отсылает сообщение с нулевым значением в поле имени загружаемого файла, когда нет необходимости в файле загрузки или когда можно использовать предопределенные значения по умолчанию.
11.7.7 Область для разработчиков
Первоначально область для разработчиков (vendor specific area) использовалась в сообщениях для пересылки сведений, специфичных для конкретной реализации. Однако в начале применения BOOTP эта область оставалась свободной, хотя большой объем информации (например, маска подсети или адрес маршрутизатора
11.7.8 Ответ безадресному клиенту
Если клиент не заполнил поле предварительно заданного IP-адреса, такой адрес присваивается сервером. Простейшим способом возврата ответа клиенту в этом случае будет такой:
■ Применение заголовка IP с новым IP-адресом в качестве адреса назначения
■ Заключение датаграммы в кадр, адресованный на физический адрес клиента
Однако некоторые старые клиенты неспособны принимать датаграммы IP с явно указанным IP-адресом, пока не будут сконфигурированы на этот адрес. Данная проблема называется "яйцо или курица" (что было раньше? — Прим. пер.).
Такие клиенты могут принимать датаграммы на порт назначения 68 и с широковещательным IP-адресом 255.255.255.255. Новые клиенты BOOTP предпочитают прием ответа по широковещательному IP-адресу посредством установки в 1 флага широковещательной рассылки (находится в поле флагов) при отправке своего запроса.
11.7.9 Счетчик секунд
Когда клиент отсылает первый запрос на загрузку данных, поле счетчика секунд имеет нулевое значение. Если на запрос не приходит ответа, по завершении тайм-аута клиент снова отправляет запрос, изменяя значение в поле счетчика секунд. Для тайм-аута клиент использует случайный интервал, увеличивающийся до значения 60 с.
Данное поле не имеет специального назначения. Его содержимое может проверять сервер или сетевой монитор для определения длительности ожидания клиентом загрузки по сети. Сервер может использовать значения из поля счетчика секунд для ранжирования запросов по приоритетам, однако в настоящее время в большинстве реализаций это поле игнорируется.
11.8 Возможности DHCP
DHCP существенно расширяет возможности BOOTP. К наиболее значимым изменениям относятся:
■ Упрощение администрирования
■ Автоматизация конфигурирования
■ Поддержка перемещений или изменений сети
■ Возможность запроса клиентом значений определенных параметров
■ Новые типы сообщений DHCP, обеспечивающие более надежное соединение между клиентом и сервером
Еще одним примечательным свойством является возможность клиента BOOTP получить доступ к серверу DHCP, т.е. обеспечивается обратная совместимость.
11.8.1 Администрирование и автоматизация конфигурирования
DHCP позволяет существенно снизить объем администрирования для конфигурирования системы. При необходимости можно просто указать блок IP-адресов, из которого сервер DHCP будет присваивать адреса клиентам в локальной сети. Это легко может сделать администратор системы, освободив время для ввода данных о других критических параметрах (например, маски подсети, адресов DNS или адресов маршрутизаторов по умолчанию для данной локальной сети). Если необходимо, администратор может указать дополнительные конфигурационные параметры.
Протокол позволяет серверу автоматически присвоить клиенту IP-адрес из выделенного блока и послать ему заданный набор параметров.
В DHCP наследуется способность BOOTP предоставлять подробные или только определенные конфигурационные данные, а также идентификация загружаемого образа программного обеспечения. Недостатком BOOTP было то, что клиент не мог управлять получаемым им набором параметров. DHCP позволяет клиенту запрашивать только заданный набор таких параметров.
11.8.2 Перемещения и изменения
Что произойдет, если пользователь переместит компьютер в другое место, подключив его к иной сети или подсети? Во время загрузки компьютер, использующий DHCP, автоматически изменит свой IP-адрес и маску подсети, а также при необходимости — маршрутизатор по умолчанию и DNS. Без DHCP все эти изменения приходилось выполнять вручную.
11.9 Механизмы DHCP
11.9.1 Присваивание IP-адресов
В DHCP поддерживаются три типа присвоения адресов:
■ Ручное, когда IP-адрес вводится на сервере и назначается клиенту постоянно
■ Автоматическое, когда IP-адрес выбирается сервером из пула доступных адресов и назначается клиенту постоянно
■ Динамическое, когда IP-адрес присваивается клиенту на ограниченный срок или до завершения его использования данным клиентом
Например, пользователь мобильного компьютера может подключаться к сети в случайные моменты времени, и ему нет надобности присваивать постоянный IP-адрес или адрес на длительный срок.
11.9.2 Аренда адресов
Процесс выделения адресов предполагает запрос клиентом IP-адреса на определенный период времени (возможно, что и навсегда). Сервер предоставляет клиенту адрес в аренду, указывая период использования данного адреса. Клиент должен периодически обновлять свои права на аренду, иначе через заданный интервал времени он потеряет это право. Потерянный адрес можно использовать повторно (например, для другого клиента. — Прим. пер.).
Для продления аренды адреса клиент идентифицирует свои права. При первичном выделении адреса клиенту через поле идентификатора клиента DHCP присваивается определенное значение, которое и будет применяться во всех последующих взаимодействиях с сервером. Иначе аренда идентифицируется типом оборудования клиента, аппаратным адресом и присвоенным IP-адресом,
11.9.3 Связывание
Сервер DHCP хранит таблицу соответствия между клиентами и их конфигурационными параметрами. Связывание заключается в назначении каждому клиенту IP-адреса и набора конфигурационных параметров.