Когда число компьютеров в доме становится равным двум или более, возникает логичное желание организовать их в локальную сеть, которая обеспечит удобное взаимодействие между отдельными машинами. В этом случае, используя возможности локальной сети, можно будет выходить в интернет через единое подключение, обмениваться файлами по сети, удаленно управлять отдельными компьютерами, печатать документы на общем принтере. Организовать подобную сеть очень просто на базе роутера или ADSL-модема со встроенным маршрутизатором. Для этого нужно лишь включить DHCP на сетевом адаптере каждого компьютера и запустить соответствующую службу на роутере или модеме, которые будут выполнять роль сервера.

Протокол DHCP (Dynamic Host Configuration Protocol) - протокол конфигурации, который позволяет компьютерам автоматически настраиваться на взаимодействие с другими компьютерами сети через сервер или маршрутизатор. Данный протокол был специально разработан для облегчения настройки и подключения к локальной сети.

  1. Прежде чем включить DHCP на сетевом адаптере убедитесь, что на роутере или ADSL-модеме включена служба «DHCP-сервер». Для этого зайдите в панель управления роутером через веб-интерфейс, используя логин и пароль администратора и в настройках сети проверьте, чтобы была установлена галочка напротив пункта «Автоматически назначать IP адреса». В том случае, если интерфейс устройства не русифицирован, ищите в настройках сети пункт Dynamic IP Address Mode, или что-то подобное. В крайнем случае обратитесь к руководству пользователя, чтобы найти соответствующую настройку.

    Если данная служба не активирована, то установите галочку на данном пункте, сохраните произведенные настройки и перезагрузите роутер или ADSL-модем.

  2. Проверьте, чтобы служба «DHCP-клиент» была запущена на каждом компьютере, который планируется подключить к сети. Для этого в операционных системах Windows Vista и Windows 7 введите команду services.msc в строку поиска, которая появляется над кнопкой «Поиск» после ее нажатия и нажмите клавишу Ввод (Enter) на клавиатуре.


    В открывшемся окне найдите службу «DHCP-клиент» и убедитесь, что ее состояние соотвествует «Работает» и значение типа запуска настроено как «Автоматически». Если это не так, то кликните правой кнопкой мыши по строке службы, выберите в появившемся меню пункт «Свойства» и в открывшемся окне для значения «Тип запуска» выберите из списка значение «Автоматически». Нажмите кнопку «Ок» для сохранения изменений и перезагрузите компьютер.


  3. Для того, чтобы включить DHCP на сетевом адаптере войдите в настройки сетевых подключений. Для этого в операционных системах Windows Vista и Windows 7 введите команду Ncpa.cpl в строку поиска, которая появляется над кнопкой «Поиск» после ее нажатия и нажмите клавишу Ввод (Enter) на клавиатуре.


    В операционной системе Windwows XP данную команду нужно ввести в поле ввода окна, которое появляется после нажатия сочетания клавиш Ctrl + R.

    Без командной строки в настройки сетевых подключений также возможно зайти через Панель управления.

    Найдите подключение, которое используется в вашей локальной сети и сделайте правый клик мышью на его значке. В появившемся контекстном меню выберите пункт «Свойства».


    Выберите «Протокол Интернета версии 4 (TCP/IPv4) и нажмите кнопку «Свойства».
dhcpd, ISC DHCP Server, Infoblox

Энциклопедичный YouTube

  • 1 / 5

    Стандарт протокола DHCP был принят в октябре 1993 года . Действующая версия протокола (март 1997 года) описана в RFC 2131 . Новая версия DHCP, предназначенная для использования в среде IPv6 , носит название DHCPv6 и определена в RFC 3315 (июль 2003 года).

    Распределение IP-адресов

    Протокол DHCP предоставляет три способа распределения IP-адресов :

    • Ручное распределение. При этом способе сетевой администратор сопоставляет аппаратному адресу (для Ethernet сетей это MAC-адрес) каждого клиентского компьютера определённый IP-адрес. Фактически, данный способ распределения адресов отличается от ручной настройки каждого компьютера лишь тем, что сведения об адресах хранятся централизованно (на сервере DHCP), и потому их проще изменять при необходимости.
    • Автоматическое распределение. При данном способе каждому компьютеру на постоянное использование выделяется произвольный свободный IP-адрес из определённого администратором диапазона.
    • Динамическое распределение. Этот способ аналогичен автоматическому распределению, за исключением того, что адрес выдаётся компьютеру не на постоянное пользование, а на определённый срок. Это называется арендой адреса . По истечении срока аренды IP-адрес вновь считается свободным, и клиент обязан запросить новый (он, впрочем, может оказаться тем же самым). Кроме того, клиент сам может отказаться от полученного адреса.

    Некоторые реализации службы DHCP способны автоматически обновлять записи DNS , соответствующие клиентским компьютерам, при выделении им новых адресов. Это производится при помощи протокола обновления DNS, описанного в RFC 2136 .

    Опции DHCP

    Помимо IP-адреса, DHCP также может сообщать клиенту дополнительные параметры, необходимые для нормальной работы в сети. Эти параметры называются опциями DHCP . Список стандартных опций можно найти в RFC 2132 .

    Опции - строки переменной длины, состоящие из октетов. Первый октет - код опции, второй октет - количество следующих октетов, остальные октеты зависят от кода опции.

    Например, опция «DHCP Message Type» при отправке сообщения «Offer» будет выглядеть так: 0x35,0x01,0x02, где 0x35 - код опции «DHCP Message Type» , 0x01 - означает, что далее идет только один октет, 0x02 - значение «Offer».

    Некоторыми из наиболее часто используемых опций являются:

    • IP-адрес маршрутизатора по умолчанию;
    • адреса серверов DNS ;
    • имя домена DNS .

    Некоторые поставщики программного обеспечения могут определять собственные дополнительные опции DHCP (RFC 2132).

    Идентификация поставщика

    Опция существует, чтобы определить поставщика и функциональность клиента DHCP. Информация представляется строкой переменной длины, состоящей из символов или октетов, которые имеют значение, указанное поставщиком клиента DHCP. Один из методов позволяет DHCP клиенту оповещать сервер о том, что он использует определенный тип низкоуровневого обеспечения или прошивки для заполнения опции Vendor Class Identifier(VCI)(опция 60). Этот метод позволяет различать запросы клиентских машин и процессов. Значение опции VCI дает DHCP-серверу подсказку о любой необходимой дополнительной информации, которую необходимо отправить клиенту в ответ.

    Устройство протокола

    Протокол DHCP является клиент-серверным , то есть в его работе участвуют клиент DHCP и сервер DHCP. Передача данных производится при помощи протокола UDP . По умолчанию запросы от клиента делаются на 67 порт к серверу, сервер в свою очередь отвечает на порт 68 к клиенту, выдавая адрес IP и другую необходимую информацию, такую, как сетевую маску, шлюз по умолчанию и серверы DNS.

    Структура сообщений DHCP

    Все сообщения протокола DHCP разбиваются на поля, каждое из которых содержит определённую информацию. Все поля, кроме последнего (поля опций DHCP), имеют фиксированную длину.

    Поле Описание Длина (в байтах)
    op Тип сообщения. Например может принимать значения: BOOTREQUEST (1, запрос от клиента к серверу) и BOOTREPLY (2, ответ от сервера к клиенту). 1
    htype Тип аппаратного адреса. Допустимые значения этого поля определены в RFC 1700 «Assigned Numbers». Например, для MAC-адреса Ethernet 10 Мбит/с это поле принимает значение 1. 1
    hlen Длина аппаратного адреса в байтах. Для MAC-адреса Ethernet - 6. 1
    hops Количество промежуточных маршрутизаторов (так называемых агентов ретрансляции DHCP ), через которые прошло сообщение. Клиент устанавливает это поле в 0. 1
    xid Уникальный идентификатор транзакции, генерируемый клиентом в начале процесса получения адреса. 4
    secs Время в секундах с момента начала процесса получения адреса. Может не использоваться (в этом случае оно устанавливается в 0). 2
    flags Поле для флагов - специальных параметров протокола DHCP. 2
    ciaddr IP-адрес клиента. Заполняется только в том случае, если клиент уже имеет собственный IP-адрес и способен отвечать на запросы ARP (это возможно, если клиент выполняет процедуру обновления адреса по истечении срока аренды). 4
    yiaddr Новый IP-адрес клиента, предложенный сервером. 4
    siaddr IP-адрес сервера. Возвращается в предложении DHCP (см. ниже). 4
    giaddr IP-адрес агента ретрансляции, если таковой участвовал в процессе доставки сообщения DHCP до сервера. 4
    chaddr Аппаратный адрес (обычно MAC-адрес) клиента. 16
    sname Необязательное имя сервера в виде нуль-терминированной строки . 64
    file Необязательное имя файла на сервере, используемое бездисковыми рабочими станциями при удалённой загрузке. Как и sname , представлено в виде нуль-терминированной строки. 128
    options Поле опций DHCP . Здесь указываются различные дополнительные параметры конфигурации. В начале этого поля указываются четыре особых байта со значениями 99, 130, 83, 99 («волшебные числа»), позволяющие серверу определить наличие этого поля. Поле имеет переменную длину, однако DHCP-клиент должен быть готов принять DHCP-сообщение длиной в 576 байт (в этом сообщении поле options имеет длину 340 байт). переменная

    Пример процесса получения адреса

    Рассмотрим пример процесса получения IP-адреса клиентом от сервера DHCP. Предположим, клиент ещё не имеет собственного IP-адреса, но ему известен его предыдущий адрес - 192.168.1.100. Процесс состоит из четырёх этапов.

    Обнаружение DHCP

    Вначале клиент выполняет широковещательный запрос по всей физической сети с целью обнаружить доступные DHCP-серверы. Он отправляет сообщение типа DHCPDISCOVER , при этом в качестве IP-адреса источника указывается 0.0.0.0 (так как компьютер ещё не имеет собственного IP-адреса), а в качестве адреса назначения -широковещательный адрес 255.255.255.255.

    Клиент заполняет несколько полей сообщения начальными значениями:

    • В поле xid помещается уникальный идентификатор транзакции , который позволяет отличать данный процесс получения IP-адреса от других, протекающих в то же время.
    • В поле chaddr помещается аппаратный адрес (MAC-адрес) клиента.
    • В поле опций указывается последний известный клиенту IP-адрес. В данном примере это 192.168.1.100. Это необязательно и может быть проигнорировано сервером.

    Сообщение DHCPDISCOVER может быть распространено за пределы локальной физической сети при помощи специально настроенных агентов ретрансляции DHCP , перенаправляющих поступающие от клиентов сообщения DHCP серверам в других подсетях.

    Не всегда процесс получения IP адреса начинается с DHCPDISCOVER . В случае, если клиент ранее уже получал IP адрес и срок его аренды ещё не прошёл - клиент может пропустить стадию DHCPDISCOVER, начав с запроса DHCPREQUEST отправляемого с идентификатором сервера, который выдал адрес в прошлый раз. В случае же отсутствия ответа от DHCP сервера, выдавшего настройки в прошлый раз, клиент отправляет DHCPDISCOVER . Тем самым клиент начинает процесс получения с начала, обращаясь уже ко всем DHCP серверам в сегменте сети.

    Предложение DHCP

    Получив сообщение от клиента, сервер определяет требуемую конфигурацию клиента в соответствии с указанными сетевым администратором настройками. В данном случае DHCP-сервер согласен с запрошенным клиентом адресом 192.168.1.100. Сервер отправляет ему ответ (DHCPOFFER ), в котором предлагает конфигурацию. Предлагаемый клиенту IP-адрес указывается в поле yiaddr . Прочие параметры (такие, как адреса маршрутизаторов и DNS -серверов) указываются в виде опций в соответствующем поле.

    Это сообщение DHCP-сервер отправляет хосту, пославшему DHCPDISCOVER, на его MAC, при определенных обстоятельствах сообщение может распространяться как широковещательная рассылка. Клиент может получить несколько различных предложений DHCP от разных серверов; из них он должен выбрать то, которое его «устраивает».

    Запрос DHCP

    Выбрав одну из конфигураций, предложенных DHCP-серверами, клиент отправляет запрос DHCP (DHCPREQUEST ). Он рассылается широковещательно; при этом к опциям, указанным клиентом в сообщении DHCPDISCOVER, добавляется специальная опция - идентификатор сервера - указывающая адрес DHCP-сервера, выбранного клиентом (в данном случае - 192.168.1.1).

    Подтверждение DHCP

    Наконец, сервер подтверждает запрос и направляет это подтверждение (DHCPACK ) клиенту. После этого клиент должен настроить свой сетевой интерфейс, используя предоставленные опции.

    Вид сообщений

    Ниже приведены значения каждого поля для каждого из отправляемых в процессе сообщений DHCP.

    Обнаружение DHCP
    DHCPDISCOVER
    UDP Src=0.0.0.0 Dest=255.255.255.255
    OP HTYPE HLEN HOPS
    0x01 0x01 0x06 0x00
    XID
    0x3903F326
    SECS FLAGS
    0x0000 0x0000
    CIADDR
    0xC0A80164
    YIADDR
    0x00000000
    SIADDR
    0x00000000
    GIADDR
    0x00000000
    CHADDR
    0x0000001d6057ed80
    SNAME
    (пустое поле)
    FILE
    (пустое поле)
    OPTIONS
    Опция DHCP 53: обнаружение DHCP
    Предложение DHCP
    DHCPOFFER
    OP HTYPE HLEN HOPS
    0x02 0x01 0x06 0x00
    XID
    0x3903F326
    SECS FLAGS
    0x0000 0x0000
    CIADDR
    0x00000000
    YIADDR
    0xC0A80164
    SIADDR
    0xC0A80101
    GIADDR
    0x00000000
    CHADDR
    0x0000001d6057ed80
    SNAME
    (пустое поле)
    FILE
    (пустое поле)
    OPTIONS
    Опция DHCP 53: предложение DHCP
    Опция DHCP 1: маска подсети 255.255.255.0
    Опция DHCP 3: маршрутизатор 192.168.1.1
    Опция DHCP 51: срок аренды IP-адреса - 1 день
    Запрос DHCP
    DHCPREQUEST
    UDP Src=0.0.0.0 Dest=255.255.255.255
    OP HTYPE HLEN HOPS
    0x01 0x01 0x06 0x00
    XID
    0x3903F326
    SECS FLAGS
    0x0000 0x0000
    CIADDR
    0xC0A80164
    YIADDR
    0x00000000
    SIADDR
    0x00000000
    GIADDR
    0x00000000
    CHADDR
    0x0000001d6057ed80
    SNAME
    (пустое поле)
    FILE
    (пустое поле)
    OPTIONS
    Опция DHCP 53: запрос DHCP
    Опция DHCP 50: запрос адреса 192.168.1.100
    Опция DHCP 54: DHCP-сервер 192.168.1.1
    Подтверждение DHCP
    DHCPACK
    UDP Src=192.168.1.1 Dest=255.255.255.255
    OP HTYPE HLEN HOPS
    0x02 0x01 0x06 0x00
    XID
    0x3903F326
    SECS FLAGS
    0x0000 0x0000
    CIADDR
    0x00000000
    YIADDR
    0xC0A80164
    SIADDR
    0x00000000
    GIADDR
    0x00000000
    CHADDR
    0x0000001d6057ed80
    SNAME
    (пустое поле)
    FILE
    (пустое поле)
    OPTIONS
    Опция DHCP 53: подтверждение DHCP
    Опция DHCP 1:

    ». Для автоматической конфигурации компьютер-клиент на этапе конфигурации сетевого устройства обращается к так называемому серверу DHCP , и получает от него нужные параметры. Сетевой администратор может задать диапазон адресов, распределяемых сервером среди компьютеров. Это позволяет избежать ручной настройки компьютеров сети и уменьшает количество ошибок. Протокол DHCP используется в большинстве сетей TCP/IP.

    DHCP является расширением протокола BOOTP , использовавшегося ранее для обеспечения бездисковых рабочих станций IP-адресами при их загрузке. DHCP сохраняет обратную совместимость с BOOTP.

    История

    Стандарт протокола DHCP был принят в октябре 1993 года . Действующая версия протокола (март 1997 года) описана в RFC 2131 . Новая версия DHCP, предназначенная для использования в среде IPv6 , носит название DHCPv6 и определена в RFC 3315 (июль 2003 года).

    Распределение IP-адресов

    Протокол DHCP предоставляет три способа распределения IP-адресов :

    • Ручное распределение. При этом способе сетевой администратор сопоставляет аппаратному адресу (для Ethernet сетей это MAC-адрес) каждого клиентского компьютера определённый IP-адрес. Фактически, данный способ распределения адресов отличается от ручной настройки каждого компьютера лишь тем, что сведения об адресах хранятся централизованно (на сервере DHCP), и потому их проще изменять при необходимости.
    • Автоматическое распределение. При данном способе каждому компьютеру на постоянное использование выделяется произвольный свободный IP-адрес из определённого администратором диапазона.
    • Динамическое распределение. Этот способ аналогичен автоматическому распределению, за исключением того, что адрес выдаётся компьютеру не на постоянное пользование, а на определённый срок. Это называется арендой адреса . По истечении срока аренды IP-адрес вновь считается свободным, и клиент обязан запросить новый (он, впрочем, может оказаться тем же самым). Кроме того, клиент сам может отказаться от полученного адреса.

    Некоторые реализации службы DHCP способны автоматически обновлять записи DNS , соответствующие клиентским компьютерам, при выделении им новых адресов. Это производится при помощи протокола обновления DNS, описанного в RFC 2136 .

    Опции DHCP

    Помимо IP-адреса, DHCP также может сообщать клиенту дополнительные параметры, необходимые для нормальной работы в сети. Эти параметры называются опциями DHCP . Список стандартных опций можно найти в RFC 2132 .

    Некоторыми из наиболее часто используемых опций являются:

    • IP-адрес маршрутизатора по умолчанию;
    • адреса серверов DNS ;
    • имя домена DNS .

    Некоторые поставщики программного обеспечения могут определять собственные, дополнительные опции DHCP.

    Устройство протокола

    Протокол DHCP является клиент-серверным , то есть в его работе участвуют клиент DHCP и сервер DHCP. Передача данных производится при помощи протокола UDP , при этом сервер принимает сообщения от клиентов на порт 67 и отправляет сообщения клиентам на порт 68.

    Структура сообщений DHCP

    Все сообщения протокола DHCP разбиваются на поля, каждое из которых содержит определённую информацию. Все поля, кроме последнего (поля опций DHCP), имеют фиксированную длину.

    Поле Описание Длина (в байтах)
    op Тип сообщения. Например может принимать значения: BOOTREQUEST (1, запрос от клиента к серверу) и BOOTREPLY (2, ответ от сервера к клиенту). 1
    htype Тип аппаратного адреса. Допустимые значения этого поля определены в RFC 1700 «Assigned Numbers». Например, для MAC-адреса Ethernet 10 Мбит/с это поле принимает значение 1. 1
    hlen Длина аппаратного адреса в байтах. Для MAC-адреса Ethernet - 6. 1
    hops Количество промежуточных маршрутизаторов (так называемых агентов ретрансляции DHCP ), через которые прошло сообщение. Клиент устанавливает это поле в 0. 1
    xid Уникальный идентификатор транзакции, генерируемый клиентом в начале процесса получения адреса. 4
    secs Время в секундах с момента начала процесса получения адреса. Может не использоваться (в этом случае оно устанавливается в 0). 2
    flags Поле для флагов - специальных параметров протокола DHCP. 2
    ciaddr IP-адрес клиента. Заполняется только в том случае, если клиент уже имеет собственный IP-адрес и способен отвечать на запросы ARP (это возможно, если клиент выполняет процедуру обновления адреса по истечении срока аренды). 4
    yiaddr Новый IP-адрес клиента, предложенный сервером. 4
    siaddr IP-адрес сервера. Возвращается в предложении DHCP (см. ниже). 4
    giaddr IP-адрес агента ретрансляции, если таковой участвовал в процессе доставки сообщения DHCP до сервера. 4
    chaddr Аппаратный адрес (обычно MAC-адрес) клиента. 16
    sname Необязательное имя сервера в виде нуль-терминированной строки . 64
    file Необязательное имя файла на сервере, используемое бездисковыми рабочими станциями при удалённой загрузке. Как и sname , представлено в виде нуль-терминированной строки. 128
    options Поле опций DHCP . Здесь указываются различные дополнительные параметры конфигурации. В начале этого поля указываются четыре особых байта со значениями 99, 130, 83, 99 («волшебные числа»), позволяющие серверу определить наличие этого поля. Поле имеет переменную длину, однако DHCP-клиент должен быть готов принять DHCP-сообщение длиной в 576 байт (в этом сообщении поле options имеет длину 340 байт). переменная

    Пример процесса получения адреса

    Рассмотрим пример процесса получения IP-адреса клиентом от сервера DHCP. Предположим, клиент ещё не имеет собственного IP-адреса, но ему известен его предыдущий адрес - 192.168.1.100. Процесс состоит из четырёх этапов.

    Обнаружение DHCP

    Вначале клиент выполняет широковещательный запрос по всей физической сети с целью обнаружить доступные DHCP-серверы. Он отправляет сообщение типа DHCPDISCOVER , при этом в качестве IP-адреса источника указывается 0.0.0.0 (так как компьютер ещё не имеет собственного IP-адреса), а в качестве адреса назначения - широковещательный адрес 255.255.255.255.

    Клиент заполняет несколько полей сообщения начальными значениями:

    • В поле xid помещается уникальный идентификатор транзакции , который позволяет отличать данный процесс получения IP-адреса от других, протекающих в то же время.
    • В поле chaddr помещается аппаратный адрес (MAC-адрес) клиента.
    • В поле опций указывается последний известный клиенту IP-адрес. В данном примере это 192.168.1.100. Это необязательно и может быть проигнорировано сервером.

    Сообщение DHCPDISCOVER может быть распространено за пределы локальной физической сети при помощи специально настроенных агентов ретрансляции DHCP , перенаправляющих поступающие от клиентов сообщения DHCP серверам в других подсетях.

    Предложение DHCP

    Получив сообщение от клиента, сервер определяет требуемую конфигурацию клиента в соответствии с указанными сетевым администратором настройками. В данном случае DHCP-сервер согласен с запрошенным клиентом адресом 192.168.1.100. Сервер отправляет ему ответ (DHCPOFFER ), в котором предлагает конфигурацию. Предлагаемый клиенту IP-адрес указывается в поле yiaddr . Прочие параметры (такие, как адреса маршрутизаторов и DNS -серверов) указываются в виде опций в соответствующем поле.

    Это сообщение DHCP-сервер отправляет хосту, пославшему DHCPDISCOVER, на его MAC, при определенных обстоятельствах сообщение может распространяться как широковещательная рассылка. Клиент может получить несколько различных предложений DHCP от разных серверов; из них он должен выбрать то, которое его «устраивает».

    Запрос DHCP

    Выбрав одну из конфигураций, предложенных DHCP-серверами, клиент отправляет запрос DHCP (DHCPREQUEST ). Он рассылается широковещательно; при этом к опциям, указанным клиентом в сообщении DHCPDISCOVER, добавляется специальная опция - идентификатор сервера - указывающая адрес DHCP-сервера, выбранного клиентом (в данном случае - 192.168.1.1).

    Подтверждение DHCP

    Наконец, сервер подтверждает запрос и направляет это подтверждение (DHCPACK ) клиенту. После этого клиент должен настроить свой сетевой интерфейс, используя предоставленные опции.

    Вид сообщений

    Ниже приведены значения каждого поля для каждого из отправляемых в процессе сообщений DHCP.

    Обнаружение DHCP
    DHCPDISCOVER
    UDP Src=0.0.0.0 Dest=255.255.255.255
    OP HTYPE HLEN HOPS
    0x01 0x01 0x06 0x00
    XID
    0x3903F326
    SECS FLAGS
    0x0000 0x0000
    CIADDR
    0x00000000
    YIADDR
    0x00000000
    SIADDR
    0x00000000
    GIADDR
    0x00000000
    CHADDR
    0x0000001d6057ed80
    SNAME
    (пустое поле)
    FILE
    (пустое поле)
    OPTIONS
    Опция DHCP 53: обнаружение DHCP
    Предложение DHCP
    DHCPOFFER
    OP HTYPE HLEN HOPS
    0x02 0x01 0x06 0x00
    XID
    0x3903F326
    SECS FLAGS
    0x0000 0x0000
    CIADDR
    0x00000000
    YIADDR
    0xC0A80164
    SIADDR
    0xC0A80101
    GIADDR
    0x00000000
    CHADDR
    0x0000001d6057ed80
    SNAME
    (пустое поле)
    FILE
    (пустое поле)
    OPTIONS
    Опция DHCP 53: предложение DHCP
    Опция DHCP 1: маска подсети 255.255.255.0
    Опция DHCP 3: маршрутизатор 192.168.1.1
    Запрос DHCP
    DHCPREQUEST
    UDP Src=0.0.0.0 Dest=255.255.255.255
    OP HTYPE HLEN HOPS
    0x01 0x01 0x06 0x00
    XID
    0x3903F326
    SECS FLAGS
    0x0000 0x0000
    CIADDR
    0x00000000
    YIADDR
    0x00000000
    SIADDR
    0x00000000
    GIADDR
    0x00000000
    CHADDR
    0x0000001d6057ed80
    SNAME
    (пустое поле)
    FILE
    (пустое поле)
    OPTIONS
    Опция DHCP 53: запрос DHCP
    Опция DHCP 50: запрос адреса 192.168.1.100
    Опция DHCP 54: DHCP-сервер 192.168.1.1
    Подтверждение DHCP
    DHCPACK
    UDP Src=192.168.1.1 Dest=255.255.255.255
    OP HTYPE HLEN HOPS
    0x02 0x01 0x06 0x00
    XID
    0x3903F326
    SECS FLAGS
    0x0000 0x0000
    CIADDR
    0x00000000
    YIADDR
    0xC0A80164
    SIADDR
    0x00000000
    GIADDR
    0x00000000
    CHADDR
    0x0000001d6057ed80
    SNAME
    (пустое поле)
    FILE
    (пустое поле)
    OPTIONS
    Опция DHCP 53: подтверждение DHCP
    Опция DHCP 1: маска подсети 255.255.255.0
    Опция DHCP 3: маршрутизатор 192.168.1.1
    Опция DHCP 51: срок аренды IP-адреса - 1 день
    Опция DHCP 54: DHCP-сервер 192.168.1.1

    Прочие сообщения DHCP

    Помимо сообщений, необходимых для первоначального получения IP-адреса клиентом, DHCP предусматривает несколько дополнительных сообщений для выполнения иных задач.

    Отказ DHCP

    Если после получения подтверждения (DHCPACK) от сервера клиент обнаруживает, что указанный сервером адрес уже используется в сети, он рассылает широковещательное сообщение отказа DHCP (DHCPDECLINE ), после чего процедура получения IP-адреса повторяется. Использование IP-адреса другим клиентом можно обнаружить, выполнив запрос ARP .

    Отмена DHCP

    Если по каким-то причинам сервер не может предоставить клиенту запрошенный IP-адрес, или если аренда адреса удаляется администратором, сервер рассылает широковещательное сообщение отмены DHCP (DHCPNACK ). При получении такого сообщения соответствующий клиент должен повторить процедуру получения адреса.

    Освобождение DHCP

    Клиент может явным образом прекратить аренду IP-адреса. Для этого он отправляет сообщение освобождения DHCP (DHCPRELEASE ) тому серверу, который предоставил ему адрес в аренду. В отличие от других сообщений DHCP, DHCPRELEASE не рассылается широковещательно.

    Информация DHCP

    Сообщение информации DHCP (DHCPINFORM ) предназначено для определения дополнительных параметров TCP/IP (например, адреса маршрутизатора по умолчанию, DNS -серверов и т. п.) теми клиентами, которым не нужен динамический IP-адрес (то есть адрес которых настроен вручную). Серверы отвечают на такой запрос сообщением подтверждения (DHCPACK) без выделения IP-адреса.

    Реализации

    В настоящее время существуют реализации сервера DHCP для ОС Windows в виде отдельных программ, в том числе открытых , позволяющих выполнять роль сервера DHCP компьютерам под управлением несерверных версий данной ОС.

    Примечания

    См. также

    Ссылки

    • RFC 2131 - стандарт DHCP.
    • RFC 2132 - список стандартных опций DHCP.
    • RFC 2136 - DNS UPDATE.
    • RFC 3315 - стандарт DHCPv6.

    Привет, посетитель сайта сайт! Продолжаем изучать . В девятой части мы с вами будем разбираться с тем, как работает протокол DHCP (Dynamic Host Configuration Protocol) и зачем он вообще нужен? Эта запись как раз будет про назначение и возможности протокола DHCP, а также мы с вами рассмотрим DHCP опции и их назначение в протоколе . Как всегда, торопиться никуда не будем, сперва рассмотрим DHCP в общих чертах, а затем будем разбираться с частностями.

    9.1.1 Введение

    В курсах ICND1 и ICND2 протокол DHCP рассматривается очень поверхностно, да и в целом Cisco размазала информацию об этом протоколе на треки разных направлений и по разным уровням. Мы же рассмотрим DHCP довольно подробно и, пожалуй, рассмотренной информации хватит не только для того, чтобы ответить на вопросы по DHCP, которые могут встретиться на экзамене но и на вопросы, которые могут быть на экзамене CCNP R&S.

    9.1.2 Зачем нужен протокол DHCP и как он связан с протоколом IP?

    В теме мы говорили о , мы затронули самые основные моменты, касающиеся DHCP и его назначения, сейчас мы кратко вспомним то, что было рассмотрено ранее. Думаю, все прекрасно знают, что такой инструмент, как молоток, в основном используется для забивания гвоздей, то есть нам всем ясно зачем нужен молоток. Так давайте сперва выясним – зачем нам нужен протокол DHCP .

    Протокол DHCP (Dynamic Host Configuration Protocol) или протокол динамического конфигурирования хостов нужен для автоматизации процесса настройки в . Протокол DHCP с тем или иным успехом решает две глобальные задачи:

    1. Избавляет инженера от однотипной и монотонной работы по настройке , шлюзов, адресов DNS-серверов и других необходимых параметров для . При выполнении такой работы еще и легко ошибиться, ведь устройств может быть сотни, а то и тысячи.
    2. Протокол DHCP в какой-то мере, но не на 100%, защищает вашу сеть от такого неприятного явления как дублирование IP-адресов. При ручной настройке узлов компьютерной сети у вас может быть два подхода: либо вы ведете учет выданных IP-адресов и куда-нибудь записываете конфигурации ваших узлов, либо вы пускаете это дело на самотек и выдаете IP-адреса своим узлам, руководствуясь желанием своей левой пятки. В маленьких и очень маленьких сетях второй подход применим, а вот в больших сетях возникнут проблемы даже в том случае, когда вы будете вести строгий учет, проблемы возникнут именно с учетом, каждый новый IP-адрес в вашей учетной системе будет делать учет всё более сложным. Протокол DHCP позволяет избавиться от этого ручного учета , ведь DHCP-сервер будет запоминать те IP-адреса, которые он выдал, возможно, он будет запоминать даже кому он выдал тот или иной IP-адрес, чтобы затем выдать его вновь.

    В этой теме мы будем разбираться с протоколом DHCP в связке с , хотя стоит заметить, что рассматривать DHCP без протокола IP вообще нет никакого смысла, просто дело всё в том, что DHCPv6 имеет несколько другие задачи, но это совсем другая история. Вообще, протокол DHCP, как и многие другие протоколы (например, NAT), возник из-за недостатков IPv4, дело в том, что в IPv4 нет механизма по автоматическому назначению IP-адресов на интерфейсы, а вот в IPv6 такой механизм уже имеется. То есть DHCP расширяет возможности IPv4 и делает жизнь сетевого инженера более простой и приятной , правда этому инженеру придется изучать как этот DHCP работает.

    Также не стоит воспринимать DHCP, как протокол для выдачи , выдавать можно не только IP-адреса и маски, но еще и огромное множество параметров, параметры, которые DHCP-сервер может сообщать клиенту, называются опции, ниже мы о них поговорим, но сразу замечу, что мы разберемся только с механизмом работы опций, все опции перечислить я не смогу и более того, я их все не знаю, да и не очень хочется мне их знать, если честно.

    Протокол DHCP был стандартизован в 1993 году и является наследником протокола BOOTP, это мы увидим, когда познакомимся со структурой сообщений в DHCP, кстати говоря, по схожему принципу с DHCP работает протокол RARP, но он нам совсем неинтересен. DHCP описан в спецификации RFC 2131.

    9.1.3 Режимы работы DHCP сервера

    Куда важнее понимать режимы работы DHCP-сервера , чтобы он работал так, как вам хочется, а не так, как получается. Эта тема для нас не нова, поэтому здесь я буду краток.

    1. Ручное назначение статических IP-адресов.
    2. Автоматическое назначение статических адресов.
    3. Автоматическое распределение динамических адресов.

    Третий режим работы DHCP-сервера в списке самый популярный. Во всех трех режимах работы администратор должен сообщить серверу диапазоны или пулы IP-адресов, которые тот будет выдавать клиентскому оборудованию, каждый диапазон IP-адресов должен быть из одной подсети, то есть в одном диапазоне не может быть адресов из разных подсетей. Давайте дадим описание каждому из этих режимов.

    Ручной режим работы DHCP-сервера. Этот режим работы не очень сильно отличается от статической настройки клиентских устройств. Разница лишь в том, что администратор не бегает по всей сети и все настройки производит на DHCP-сервере. В таком режиме серверу нужно задать жесткое соответствие между IP-адресами и MAC-адресами. Устройство с одним конкретным мак-адресом всегда будет получать один и тот же IP-адрес, если в базе данных DHCP-сервера нет мак-адреса или для мак-адреса не задан IP-адрес, то клиент настройки не получит.

    Автоматическое назначение статических адресов. Главной особенностью работы этого режима является то, что сервер выдает IP-адрес клиенту не на определенное время (в DHCP это время называется временем аренды или lease time), а навсегда. DHCP-сервер выдает клиенту IP-адрес без вмешательства администратора, при первом обращение клиента сервер его запоминает и затем постоянно выдает этому клиенту один и тот же IP-адрес.

    Режим автоматического распределения динамических адресов. Это то, что нас больше всего интересует, самый гибкий и самый универсальный режим. В таком режиме сервер выдает IP-адрес клиенту не навсегда, а на строго определенное время, которое называется временем аренды, это время назначается администратором, когда время аренды будет истекать, клиент, если захочет, может его продлить, чтобы не менять IP-адрес. Тут стоит заметить, что в этом режиме адреса для клиентов тоже можно зафиксировать за конкретным клиентом, например, при помощи опции 82, но об этом позже.

    У третьего режима есть один очень существенный плюс, этот плюс заключается в повторном использование IP-адресов, вот не нужен клиенту уже IP-адрес, он и сообщает об этом серверу, сервер его освобождает, а затем он может выдать этот адрес другому клиенту.

    9.1.4 Опции DHCP протокола и зачем они нужны? Список стандартных DHCP опций

    Вы уже, наверное, поняли, что протокол DHCP относится к группе протоколов, работающих по , DHCP относится к прикладному уровню моделей и , а сообщения DHCP в UDP дейтаграммы, но сейчас речь не об этом. Сейчас нам нужно понять, что делает запрос к на получение параметров, необходимы для того, чтобы клиент мог получить полноценный доступ к , эти параметры называются DHCP опции . Если говорить грубо, то клиент просто сообщает серверу – какие опции ему необходимы, а сервер на основе каких-то своих критериев может принять решение – какие опции и с какими значениями нужно выдать клиенту, а может их вообще этому клиенту выдавать не нужно.

    При этом стоит заметить, что опции DHCP могут быть стандартными, а могут быть и не стандартными и тут первый камень преткновения. Не все реализации DHCP-серверов, как и не все программные реализации DHCP-клиентов, поддерживают весь список стандартных опций, некоторые реализации DHCP имеют свои нестандартные опции, которые не поддерживаются другими реализациями и это всё может внести хаос в упорядоченный мир DHCP. Дело в том, что клиент может получить опцию, а сервер, соответственно, ее выдать, только в том, случае, если и клиент, и сервер понимают эту опцию и умеют с ней работать, что, собственно, логично.

    Очевидная проблема, которая у вас может возникнуть: для подключения клиентского устройства к компьютерной сети нужна опция, с которой это устройство работать не умеет, ну вот не добавили поддержку этой опции производители и всё тут. Список стандартных DHCP опций описан в RFC 2132 . Более того, для каждой стандартной опции есть свой RFC, который описывает – зачем эта опция нужна и как она должна работать.

    Если говорить о самых часто используемых опциях DHCP , то вот вам небольшой список сейчас и в конце будет еще:

    • IP-адрес шлюза по умолчанию;
    • маска подсети;
    • адреса DNS-серверов;
    • имя домена DNS.

    Для передачи опций между клиентом и сервером в DHCP пакете есть специальное поле переменной длинны , которое так и называется – options. Это поле имеет переменную длину, но при этом все остальные поля DHCP сообщения фиксированные. Если учесть, что и DHCP-клиент, и DHCP-сервер должны уметь обработать пакет размером 576 байт (576 байт взято не с потолка, а из ограничений некоторых старых протоколов), а также знать размер других полей в пакете, то нетрудно будет посчитать, что поле options имеет минимальную длину 340 байт. При этом самое поле options начинается с фиксированной последовательности Magic Cookie, которая выглядит так: 0×63825363. Можно сказать и по-другому, Magic Cookie – это четыре байта со значениями 99, 130, 83, 99. Как это не назови, но по этой последовательности устройство понимает, что фиксированная часть пакета закончилась и начались DHCP опции .

    Кстати говоря, в DHCP пакете есть еще два необязательных поля, то есть в пакете есть пространство, вместо которого можно передавать опции – это поля file (64 байта) и snmae (128 байт). Что еще можно добавить про опции DHCP? Каждая стандартная опция имеет уникальный номер от 0 до 255, вернее правильнее будет говорить код, а не номер. У каждой опции есть размер, при этом у некоторых опций определен не строго фиксированный размер, а какие-то границы, в которых опция может плавать. Более подробную информацию о DHCP опциях вам придется смотреть в специальных RFC, дело всё в том, что некоторые опции должны начинаться, например, с нуля, некоторые опции нельзя использовать вместе, есть еще ряд других особенностей, в которые углубляться нам смысла сейчас нет.

    Осталось лишь сказать, что поле опций в DHCP пакете всегда должно заканчиваться опцией с кодом 255 , по этой опции устройства понимают, что это конец, больше опций не будет, да и сам DHCP пакет на этом закончился.

    9.1.6 Список самых часто используемых DHCP опции

    Ниже вы найдете таблицу, в которой перечислены самые часто используемые опции в DHCP , вероятность с ними столкнуться очень велика и я бы рекомендовал ознакомится с ними подробнее в соответствующих RFC.

    Код Название Длина Описание опции
    1 Subnet Mask 4 Маска подсети
    3 Router x4 Перечисление доступных маршрутизаторов. Или проще говоря, IP-адреса доступных шлюзов по умолчанию, в сети их может быть несколько.
    6 Name Server x4 Перечисление доступных DNS серверов
    12 Host Name 1+ Символьное имя узла
    23 Default IP TTL 1 Позволяет задать TTL, которое обязан будет использовать клиент при отправке пакетов в сеть. При помощи этой опции можно ограничить доступ пользователям в сеть Интернет.
    26 Interface MTU 2 Если вам нужно чтобы все узлы использовали одинаковый MTU, то вот опция.
    33 Static IP Route x8 Вы же помните, что когда-то сети были классовыми, изначально это поле было для выдачи маршрутов узлам в классовых сетях, поэтому для маски здесь место не нашлось. Сейчас, в эпоху VLSM и CIDR, при помощи этой опции можно выдавать узлам статические маршруты к удаленным сетям с маской /32.
    35 ARP Cache Timeout 4 У протокола ARP есть кэш, каждая операционная система хранит ARP кэш разное время, чтобы упорядочить этот хаос есть 35 опция DHCP, которая заставляет все узлы хранит ARP-записи одинаковое количество времени.
    50 Requested IP Address 4 Эту опцию использует клиент для того, чтобы сообщить серверу о том, какой IP-адрес он хочет получить.
    55 Parameter Request List 1+ При помощи этой опции DHCP-клиент сообщает серверу список опций, которые ему хочется получить.
    61 Client Identifier 2+ DHCP-сервер ведет сопоставление IP и MAC-адресов, он запоминает какому мак-адресу какой IP был назначен. Но вместо мак-адресов можно использовать идентификатор клиента.
    66 TFTP Server Name 1+ Название опции говорит само за себя.
    82 Я не знаю, как эта опция называется, а в RFC смотреть лень. Все инженеры вокруг меня просто говорят восемьдесят вторая опция. С этой опцией мы будем знакомиться отдельно, кратким описанием тут не отделаешься.
    121 Classless Route 5+ Этой опцией можно выдавать маршруты по умолчанию в бесклассовых сетях.
    150 TFTP Server IP Address 4 Тут тоже всё ясно из названия.
    255 End 0 Если опции в пакете есть, то эта опция является обязательной, она означает, что других опций уже не будет и это конец DHCP пакета.

    9.1.7 Выводы

    Это было знакомство с протоколом DHCP и его основными особенностями , вы, наверное, заметили, что вся самая важная информация в DHCP передается в виде опций, поле опции является довольно гибким инструментом для динамической конфигурации хостов.

    Современному человеку жизнь не мила без всемирной паутины, а неполадки с интернет подключением — наши злейшие враги, с которыми ведется непримиримая борьба. Эта статья вооружит вас знаниями, как справиться с ситуацией, если при установке соединения выдается ошибка «DHCP не включен на сетевом адаптере».

    Что такое DHCP?

    DHCP — это сетевой протокол, который выполняет функцию автоматической настройки параметров сети TCP/IP, получая их по запросу от DHCP сервера.

    На практике это означает обмен определенными сообщениями между DHCP клиентом на устройстве и сервером во время установки сетевого подключения. В ходе коммуникации клиент получает новые или подтверждает старые значения таких параметров сети:

      IP адрес для устройства;

      маску подсети;

      IP адрес шлюза по умолчанию.

    DHCP: как работает?

    Сервер обрабатывает клиентские запросы и выдает в аренду на определенное время IP адреса из своего диапазона. Если время заканчивается, клиент либо продлевает срок аренды, либо освобождает адрес, что также происходит путем обмена специальными сообщениями. Все запросы сервер записывает в свою базу данных, чтобы избежать конфликта адресов, то есть не выделить один адрес двум узлам одновременно.

    Конфликт адресов все же может возникнуть, если на одном из устройств в сети IP присвоен вручную. При подключении нового компьютера, сервер может попытаться выдать ему адрес, который уже занят, в результате чего интернет соединение не будет установлено. Как решить эту проблему, будет рассмотрено далее.

    Протокол DHCP широко используется благодаря тому, что дает возможность легко добавлять новые компьютеры к сети и изменять параметры подключения на сервере вместо ручной перенастройки каждого устройства.

    Для использования протокола DHCP вам понадобится:

      настроить DHCP на маршрутизаторе, который будет играть роль DHCP сервера.

      запустить службу DHCP на ПК (она выполняет функцию клиента);

      в настройках сетевого адаптера выбрать опцию автоматического получения IP адреса.

    Рассмотрим каждый шаг детально.

    Как включить DHCP на роутере?

    Запустить на маршрутизаторе работу DHCP сервера нужно через веб-интерфейс. Вам потребуется выполнить следующие действия:


    Если сразу не получается открыть настройки роутера, попробуйте войти из другого браузера или из другого устройства. Самое радикальное и действенное решение проблемы — сброс настроек маршрутизатора. Чтобы его сделать, найдите маленькую кнопку с подписью «Reset» нажмите её чем-то тонким и удерживайте в течение 5-15 секунд. Важно иметь в виду: минус этого решения в том, что вам придется настраивать роутер полностью заново.

    Запуск и настройка на компьютере с Windows

    Чтобы включить DHCP на ПК под управлением Windows 7 или Windows 10, нужно выполнить похожий набор действий.

    Проверка службы

    Чтобы включить службу DHCP клиент на ПК, или убедиться, что она работает, откройте «Выполнить» (Win+R), напишите «services.msc».

    В открывшемся окне «Службы» найдите dhcp клиент, нажмите правой кнопкой и выберете «Свойства».

    Если вы видите, что служба работает и запускается автоматически, ничего менять не нужно.

    В случае отображения других параметров, запустите службу и поставьте автоматический запуск.

    Настраиваем сетевой адаптер

    Войдите в «Сетевые подключения» нажатием Win+R и вводом «ncpa.cpl».

    Откройте свойства вашей сети, TCP/IPv4.

    Выберете автоматическое получение IP адреса и адреса DNS-сервера, сохраните изменения.

    Аналогичные манипуляции можно провести из командной строки. Открываем «Выполнить» (Win+R), пишем «cmd».

    Команда для установки IP адреса автоматически:

    netsh interface ip set address «имя вашего подключения» dhcp

    Команда для установки адреса DNS сервера автоматически:

    netsh interface ip set dnsserver «имя вашего подключения» dhcp

    Имя подключения посмотрите в его свойствах.