DHCP
Материал из VTK Wiki
Протокол DHCP (Dynamic Host Configuration Protocol) предназначен для автоматической настройки параметров протокола IP (адрес, маска, шлюз, DNS-серверы и многое другое) на машинах в локальной сети.
Основное предназначение этого протокола - упростить жизнь сетевого администратора и снять с рядового пользователя обязанность ковыряться в параметрах сетевых протоколов. Все сетевые настройки для клиентских компьютеров при этом делаются администратором сети в едином месте, на DHCP-сервере.
Для работы протокола DHCP-сервер должен находиться в том же сетевом сегменте, что и пользователи сети. Между ними не должно быть маршрутизаторов. Администратор сети описывает на DHCP-сервере все настройки своих пользователей: выделяет им диапазон IP-адресов для раздачи, задает прочие параметры, такие как маску, основной шлюз, адреса DNS и прочие сетевые параметры. Пользователи со своей стороны не должны ничего настраивать - достаточно указать в настройках галочку "Получать адрес автоматически".
В ходе загрузки компьютера или активизации сетевого соединения компьютер пользователя опрашивает сеть широковещательным запросом, нет ли в ней DHCP-серверов. Если сервер находится - он отвечает компьютеру пользователя пакетом с информацией о себе, назначает ему незанятый IP-адрес из выделенного администратором диапазона и передает ему все настройки сетевых протоколов.
Простые варианты реализации DHCP-сервера этим и ограничиваются. На более серьезных его вариантах администратор может задавать множество дополнительных параметров, например, фиксировать IP-адрес за определенный компьютером в сети (чтобы он при каждом включении получал именно его, а никто другой его получить не мог).
Если в сегменте сети есть несколько серверов DHCP - это может вызвать проблемы. Машина пользователя в этом случае выбирает сервер самостоятельно, и делает это не всегда правильно. Важно, чтобы в таком случае не пересекались диапазоны выдаваемых адресов с разных серверов, поскольку иначе возможна ситуация, когда два компьютера в сети получат одинаковые адреса.
Также важно, чтобы выдаваемый диапазон адресов не пересекался с имеющимися в сети фиксированными IP, прописанными на машинах жестко (например, на серверах или на сетевых устройствах).
Если сеть состоит из нескольких сегментов, разделенных маршрутизаторами - необходим DHCP-сервер в каждом сегменте, поскольку начальный широковещательный запрос клиента через маршрутизаторы не проходит. Возможная альтернатива такому подходу - установка в каждом "бессерверном" сегменте DHCP-ретранслятора (Relay Agent) для переадресации запросов от пользователей сегмента на основной DHCP-сервер. В такой роли могут выступать и некоторые маршрутизаторы.
В наши дни DHCP-сервером может служить как программный продукт, так и аппаратное устройство. Так, например, очень простой, но вполне рабочий DHCP-сервер встроен в службу Internet Connection Sharing, присутствующую в составе Windows XP Professional, а полноценные DHCP-серверы входят в комплект поставки всех серверных сборок Windows, а также в Kerio Winroute Firewall, WinGate, UserGate и во многие другие пакеты программ для организации Интернет-шлюзов. Аппаратный DHCP-сервер встраивается почти во все современные маршрутизаторы, например, он есть в D-Link DSL-500T.