DHCP — различия между версиями
(Новая страница: «==Алгоритм работы== right|Алгоритм получения IP адреса. * Клиент посылает в сво...») |
м (rollbackEdits.php mass rollback) |
||
| (не показано 5 промежуточных версий 3 участников) | |||
| Строка 1: | Строка 1: | ||
| + | [[Файл:Dhcp_model.png|right|DHCP в модели OSI и стеке TCP/IP.]] | ||
| + | |||
| + | '''DHCP''' (англ. ''Dynamic Host Configuration Protocol'' — протокол динамической настройки узла) — сетевой протокол, позволяющий компьютерам автоматически получать IP-адрес и другие параметры, необходимые для работы в сети. | ||
| + | |||
| + | Был предложен в 1993 г., и наиболее полное современное описание DHCP содержится в документе RFC 2131 (март 1997 г.). | ||
| + | |||
| + | DHCP является расширением протокола [[BOOTP]], использовавшегося ранее для обеспечения бездисковых рабочих станций IP-адресами при их загрузке, и сохраняет с ним обратную совместимость. | ||
| + | |||
| + | Цель DHCP {{---}} устранить два основных ограничения, накладывающихся на другие анагологичные протоколы, а именно: отсутствие поддержки динамического назначения IP-адресов и возможность передавать от сервера на станцию-клиент лишь небольшое число параметров конфигурации. | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | ==Архитектура== | ||
| + | |||
| + | [[Файл:Dhcp_arch.png|left|Архитектура DHCP.]] | ||
| + | |||
| + | Работа протокола DHCP базируется на классической схеме '''клиент-сервер'''. | ||
| + | |||
| + | * В роли '''клиентов''' выступают компьютеры сети, стремящиеся получить IP-адреса в так называемую аренду ('''lease'''). | ||
| + | |||
| + | * '''DHCP-серверы''' выполняют функции диспетчеров, которые выдают адреса, контролируют их использование и сообщают клиентам требуемые параметры конфигурации. | ||
| + | |||
| + | Сервер поддерживает пул свободных адресов и, кроме того, ведет собственную регистрационную базу данных. | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | ==Сообщения== | ||
| + | |||
| + | Взаимодействие DHCP-серверов с клиентами осуществляется путем обмена '''сообщениями'''. | ||
| + | |||
| + | Структура сообщения показана на рисунке, где в скобках указан размер поля в байтах. | ||
| + | |||
| + | Опишем подробнее поля: | ||
| + | |||
| + | [[Файл:Dhcp_message.gif|right|Сообщение DHCP.]] | ||
| + | |||
| + | {| class="wikitable" | ||
| + | !Поле | ||
| + | !Описание | ||
| + | |- | ||
| + | |op | ||
| + | |Тип сообщения (1 = BOOTREQUEST, 2 = BOOTREPLY) | ||
| + | |- | ||
| + | |htype | ||
| + | |Тип адреса оборудования | ||
| + | |- | ||
| + | |hlen | ||
| + | |Длина адреса оборудования | ||
| + | |- | ||
| + | |hops | ||
| + | |Используется ретранслирующим агентом | ||
| + | |- | ||
| + | |xid | ||
| + | |Идентификатор транзакции между сервером и клиентом | ||
| + | |- | ||
| + | |secs | ||
| + | |Время с момента выдачи DHCPREQUEST или начала обновления конфигурации | ||
| + | |- | ||
| + | |flags | ||
| + | |Флаги (первый бит маркирует широковещательные сообщения) | ||
| + | |- | ||
| + | |ciaddr | ||
| + | |IP-адрес клиента | ||
| + | |- | ||
| + | |yiaddr | ||
| + | |<Ваш> (клиентский) IP-адрес | ||
| + | |- | ||
| + | |siaddr | ||
| + | |IP-адрес следующего сервера, участвующего в загрузке | ||
| + | |- | ||
| + | |giaddr | ||
| + | |IP-адрес ретранслирующего агента | ||
| + | |- | ||
| + | |chaddr | ||
| + | |<Аппаратный> адрес клиента | ||
| + | |- | ||
| + | |sname | ||
| + | |Хост-имя сервера (опция) | ||
| + | |- | ||
| + | |file | ||
| + | |Имя загрузочного файла | ||
| + | |- | ||
| + | |options | ||
| + | |Поле дополнительных параметров | ||
| + | |} | ||
| + | |||
| + | В роли транспортного протокола для обмена DHCP-сообщениями выступает '''UDP'''. | ||
| + | * при отправке сообщения с клиента на сервер используется 67-й порт DHCP-сервера; | ||
| + | * при передаче в обратном направлении - 68-й. | ||
| + | |||
| + | Эти номера портов, как и схожая структура сообщений, обеспечивают обратную совместимость DHCP с BOOTP. Конкретные процедуры взаимодействия клиентов и серверов BOOTP и DHCP регламентирует документ RFC 1542. | ||
| + | |||
==Алгоритм работы== | ==Алгоритм работы== | ||
| + | |||
| + | ===Получение IP адреса=== | ||
| + | |||
[[Файл:dhcp_algo.gif|right|Алгоритм получения IP адреса.]] | [[Файл:dhcp_algo.gif|right|Алгоритм получения IP адреса.]] | ||
| Строка 17: | Строка 116: | ||
* Для досрочного прекращения аренды адреса клиент отправляет серверу сообщение '''DHCPRELEASE'''. | * Для досрочного прекращения аренды адреса клиент отправляет серверу сообщение '''DHCPRELEASE'''. | ||
| + | |||
| + | ===Выбор адреса DHCP-сервером=== | ||
| + | |||
| + | Алгоритм работы DHCP-сервера при получении '''DHCPDISCOVER''': | ||
| + | * Если клиент запросил конкретный адрес, и в данный момент этот адрес свободен, то он будет отправлен клиенту. | ||
| + | * Если клиент не запрашивал адрес, и адрес, закрепленный за ним в данный момент, свободен, то он будет отправлен клиенту. | ||
| + | * Если ни один из предыдущих пунктов не выполнен, то адрес случайно выбирается из пула свободных адресов. | ||
| + | * Если в пуле нет свободных адресов, то сервер отправляет сообщение о проблеме администратору. | ||
| + | Следует отметить, что сервер не обязан отвечать на каждый поступивший запрос '''DHCPDISCOVER'''. Такой подход дает возможность управления использованием сети: например, можно разрешить серверу отвечать только тем клиентам, которые предварительно зарегистрировались с помощью специальной процедуры. | ||
| + | |||
| + | ===Истечение срока аренды адреса=== | ||
| + | |||
| + | Когда срок аренды адреса подходит к концу клиент может: | ||
| + | * Отправить '''DHCPRELEASE''' и начать процедуру получения адреса заново | ||
| + | * Продлить аренду текущего адреса по алгоритму: | ||
| + | ** Когда проходит половина времени аренды адреса, клиент переходит в состояние ''RENEWING''. | ||
| + | *** Клиент оправляет DHCP-серверу, выдавшему адрес, сообщение '''DHCPREQUEST''' с просьбой продлить срок аренды. | ||
| + | *** Получив '''DHCPACK''', клиент пересчитывает срок аренды и продолжает работу в обычном режиме. | ||
| + | ** Если ответ не получен к моменту времени '''=''' 7/8 срока аренды адреса, то клиент переходит в состояние ''REBINDING''. | ||
| + | *** Клиент отправляет широковещательное сообщение '''DHCPREQUEST''' со своим текущим сетевым адресом. | ||
| + | *** Получив '''DHCPACK''', клиент пересчитывает срок аренды и продолжает работу в обычном режиме. | ||
| + | ** Если к моменту окончания аренды ответ не получен, то процедура получения адреса начинается сначала. | ||
| + | ** Если ответ '''DHCPACK''' придет с опозданием, но до завершения новой процедуры получения адреса, то клиент продолжает пользоваться предыдущим адресом. | ||
| + | |||
| + | ==Параметры конфигурации== | ||
| + | Для каждого клиента DHCP-сервер заводит в своей базе запись с параметрами конфигурации. Каждой записи соответствует уникальный ключ (например, <номер подсети IP, аппаратный адрес>). Поддерживаемые параметры конфигурации определены в RFC 1122, RFC 1123, RFC 1196, RFC 1256. | ||
| + | |||
| + | Наиболее важные параметры: | ||
| + | * выданный адрес | ||
| + | * срок аренды | ||
| + | * назначавшиеся ранее адреса | ||
| + | * максимальный размер реассемблируемого пакета | ||
| + | * перечень фильтров для нелокальной маршрутизации от источника | ||
| + | * адрес для широковещательных пакетов | ||
| + | * параметры статических маршрутов | ||
| + | |||
| + | Не все параметры конфигурации передаются в сообщениях между клиентом и сервером. Для многих из них в спецификации определены значения по умолчанию - они будут использованы клиентом, если соответствующие параметры отсутствуют в сообщении от сервера. Клиент может явно указать параметры, которые хочет получить в сообщениях '''DHCPDISCOVER''' и '''DHCPREQUEST'''. | ||
| + | |||
| + | Передача параметров конфигурации происходит в процессе получения IP-адреса. Если на клиенте адрес был задан вручную, то он отправляет сообщение '''DHCPINFORM''', содержащее уже имеющийся адрес и запрос об отдельных параметрах конфигурации. DHCP-сервер проверяет правильность адреса клиента (но не наличие аренды) и отправляет '''DHCPACK''' с требуемыми параметрами конфигурации. | ||
| + | |||
| + | ==Пример исполнения алгоритма== | ||
| + | * '''DHCPDISCOVER''' | ||
| + | |||
| + | TIME: 2016-12-11 21:33:51.313 | ||
| + | IP: 0.0.0.0 (6c:71:d9:56:a5:e3) > 255.255.255.255 (ff:ff:ff:ff:ff:ff) | ||
| + | OP: 1 (BOOTPREQUEST) | ||
| + | HTYPE: 1 (Ethernet) | ||
| + | HLEN: 6 | ||
| + | HOPS: 0 | ||
| + | XID: bda4bd67 | ||
| + | SECS: 0 | ||
| + | FLAGS: 0 | ||
| + | CIADDR: 0.0.0.0 | ||
| + | YIADDR: 0.0.0.0 | ||
| + | SIADDR: 0.0.0.0 | ||
| + | GIADDR: 0.0.0.0 | ||
| + | CHADDR: 6c:71:d9:56:a5:e3:00:00:00:00:00:00:00:00:00:00 | ||
| + | SNAME: . | ||
| + | FNAME: . | ||
| + | OPTION: 53 ( 1) DHCP message type 1 (DHCPDISCOVER) | ||
| + | OPTION: 12 ( 5) Host name omnom | ||
| + | OPTION: 55 ( 13) Parameter Request List | ||
| + | 1 (Subnet mask) | ||
| + | 28 (Broadcast address) | ||
| + | 2 (Time offset) | ||
| + | 3 (Routers) | ||
| + | 15 (Domainname) | ||
| + | 6 (DNS server) | ||
| + | 119 (Domain Search) | ||
| + | 12 (Host name) | ||
| + | 44 (NetBIOS name server) | ||
| + | 47 (NetBIOS scope) | ||
| + | 26 (Interface MTU) | ||
| + | 121 (Classless Static Route) | ||
| + | 42 (NTP servers) | ||
| + | |||
| + | * '''DHCPOFFER''' | ||
| + | |||
| + | TIME: 2016-12-11 21:33:51.613 | ||
| + | IP: 192.168.10.1 (c8:3a:35:c:e5:30) > 255.255.255.255 (ff:ff:ff:ff:ff:ff) | ||
| + | OP: 2 (BOOTPREPLY) | ||
| + | HTYPE: 1 (Ethernet) | ||
| + | HLEN: 6 | ||
| + | HOPS: 0 | ||
| + | XID: bda4bd67 | ||
| + | SECS: 0 | ||
| + | FLAGS: 0 | ||
| + | CIADDR: 0.0.0.0 | ||
| + | YIADDR: 192.168.10.101 | ||
| + | SIADDR: 0.0.0.0 | ||
| + | GIADDR: 0.0.0.0 | ||
| + | CHADDR: 6c:71:d9:56:a5:e3:00:00:00:00:00:00:00:00:00:00 | ||
| + | SNAME: . | ||
| + | FNAME: . | ||
| + | OPTION: 53 ( 1) DHCP message type 2 (DHCPOFFER) | ||
| + | OPTION: 54 ( 4) Server identifier 192.168.10.1 | ||
| + | OPTION: 51 ( 4) IP address leasetime 86140 (23h55m40s) | ||
| + | OPTION: 1 ( 4) Subnet mask 255.255.255.0 | ||
| + | OPTION: 3 ( 4) Routers 192.168.10.1 | ||
| + | OPTION: 6 ( 4) DNS server 192.168.0.1 | ||
| + | |||
| + | * '''DHCPREQUEST''' | ||
| + | |||
| + | TIME: 2016-12-11 21:33:51.614 | ||
| + | IP: 0.0.0.0 (6c:71:d9:56:a5:e3) > 255.255.255.255 (ff:ff:ff:ff:ff:ff) | ||
| + | OP: 1 (BOOTPREQUEST) | ||
| + | HTYPE: 1 (Ethernet) | ||
| + | HLEN: 6 | ||
| + | HOPS: 0 | ||
| + | XID: bda4bd67 | ||
| + | SECS: 0 | ||
| + | FLAGS: 0 | ||
| + | CIADDR: 0.0.0.0 | ||
| + | YIADDR: 0.0.0.0 | ||
| + | SIADDR: 0.0.0.0 | ||
| + | GIADDR: 0.0.0.0 | ||
| + | CHADDR: 6c:71:d9:56:a5:e3:00:00:00:00:00:00:00:00:00:00 | ||
| + | SNAME: . | ||
| + | FNAME: . | ||
| + | OPTION: 53 ( 1) DHCP message type 3 (DHCPREQUEST) | ||
| + | OPTION: 54 ( 4) Server identifier 192.168.10.1 | ||
| + | OPTION: 50 ( 4) Request IP address 192.168.10.101 | ||
| + | OPTION: 12 ( 5) Host name omnom | ||
| + | OPTION: 55 ( 13) Parameter Request List | ||
| + | 1 (Subnet mask) | ||
| + | 28 (Broadcast address) | ||
| + | 2 (Time offset) | ||
| + | 3 (Routers) | ||
| + | 15 (Domainname) | ||
| + | 6 (DNS server) | ||
| + | 119 (Domain Search) | ||
| + | 12 (Host name) | ||
| + | 44 (NetBIOS name server) | ||
| + | 47 (NetBIOS scope) | ||
| + | 26 (Interface MTU) | ||
| + | 121 (Classless Static Route) | ||
| + | 42 (NTP servers) | ||
| + | |||
| + | * '''DHCPACK''' | ||
| + | |||
| + | TIME: 2016-12-11 21:33:51.913 | ||
| + | IP: 192.168.10.1 (c8:3a:35:c:e5:30) > 255.255.255.255 (ff:ff:ff:ff:ff:ff) | ||
| + | OP: 2 (BOOTPREPLY) | ||
| + | HTYPE: 1 (Ethernet) | ||
| + | HLEN: 6 | ||
| + | HOPS: 0 | ||
| + | XID: bda4bd67 | ||
| + | SECS: 0 | ||
| + | FLAGS: 0 | ||
| + | CIADDR: 0.0.0.0 | ||
| + | YIADDR: 192.168.10.101 | ||
| + | SIADDR: 0.0.0.0 | ||
| + | GIADDR: 0.0.0.0 | ||
| + | CHADDR: 6c:71:d9:56:a5:e3:00:00:00:00:00:00:00:00:00:00 | ||
| + | SNAME: . | ||
| + | FNAME: . | ||
| + | OPTION: 53 ( 1) DHCP message type 5 (DHCPACK) | ||
| + | OPTION: 54 ( 4) Server identifier 192.168.10.1 | ||
| + | OPTION: 51 ( 4) IP address leasetime 86400 (24h) | ||
| + | OPTION: 1 ( 4) Subnet mask 255.255.255.0 | ||
| + | OPTION: 3 ( 4) Routers 192.168.10.1 | ||
| + | OPTION: 6 ( 4) DNS server 192.168.0.1 | ||
Текущая версия на 19:19, 4 сентября 2022
DHCP (англ. Dynamic Host Configuration Protocol — протокол динамической настройки узла) — сетевой протокол, позволяющий компьютерам автоматически получать IP-адрес и другие параметры, необходимые для работы в сети.
Был предложен в 1993 г., и наиболее полное современное описание DHCP содержится в документе RFC 2131 (март 1997 г.).
DHCP является расширением протокола BOOTP, использовавшегося ранее для обеспечения бездисковых рабочих станций IP-адресами при их загрузке, и сохраняет с ним обратную совместимость.
Цель DHCP — устранить два основных ограничения, накладывающихся на другие анагологичные протоколы, а именно: отсутствие поддержки динамического назначения IP-адресов и возможность передавать от сервера на станцию-клиент лишь небольшое число параметров конфигурации.
Содержание
Архитектура
Работа протокола DHCP базируется на классической схеме клиент-сервер.
- В роли клиентов выступают компьютеры сети, стремящиеся получить IP-адреса в так называемую аренду (lease).
- DHCP-серверы выполняют функции диспетчеров, которые выдают адреса, контролируют их использование и сообщают клиентам требуемые параметры конфигурации.
Сервер поддерживает пул свободных адресов и, кроме того, ведет собственную регистрационную базу данных.
Сообщения
Взаимодействие DHCP-серверов с клиентами осуществляется путем обмена сообщениями.
Структура сообщения показана на рисунке, где в скобках указан размер поля в байтах.
Опишем подробнее поля:
| Поле | Описание |
|---|---|
| op | Тип сообщения (1 = BOOTREQUEST, 2 = BOOTREPLY) |
| htype | Тип адреса оборудования |
| hlen | Длина адреса оборудования |
| hops | Используется ретранслирующим агентом |
| xid | Идентификатор транзакции между сервером и клиентом |
| secs | Время с момента выдачи DHCPREQUEST или начала обновления конфигурации |
| flags | Флаги (первый бит маркирует широковещательные сообщения) |
| ciaddr | IP-адрес клиента |
| yiaddr | <Ваш> (клиентский) IP-адрес |
| siaddr | IP-адрес следующего сервера, участвующего в загрузке |
| giaddr | IP-адрес ретранслирующего агента |
| chaddr | <Аппаратный> адрес клиента |
| sname | Хост-имя сервера (опция) |
| file | Имя загрузочного файла |
| options | Поле дополнительных параметров |
В роли транспортного протокола для обмена DHCP-сообщениями выступает UDP.
- при отправке сообщения с клиента на сервер используется 67-й порт DHCP-сервера;
- при передаче в обратном направлении - 68-й.
Эти номера портов, как и схожая структура сообщений, обеспечивают обратную совместимость DHCP с BOOTP. Конкретные процедуры взаимодействия клиентов и серверов BOOTP и DHCP регламентирует документ RFC 1542.
Алгоритм работы
Получение IP адреса
- Клиент посылает в свою подсеть широковещательное сообщение DHCPDISCOVER, в котором могут указываться устраивающие клиента IP-адрес и срок его аренды. В качестве IP-адреса источника указывается 0.0.0.0, в качестве адреса назначения - 255.255.255.255. Если DHCP-сервер отсутствует в подсети, то сообщение будет передано в другие подсети агентами протокола BOOTP.
- Получив запрос от клиента, DHCP-сервер отвечает на него сообщением DHCPOFFER. В сообщение включается предлагаемый IP-адрес (yiaddr) и прочие конфигурации для клиента (адреса маршрутизаторов, DNS-серверов и т.д.).
- На данном этапе сервер не обязан резервировать адрес, который он отправил клиенту.
- Получив конфигурации от серверов (их может быть несколько, если в подсети более одного DHCP-севрера), клиент отправляет широковещательное сообщение DHCPREQUEST. В нем содержатся идентификатор выбранного сервера и, возможно, желательные значения запрашиваемых параметров конфигурации.
- На данном этапе допускается, что клиента не устроит ни один из предложенных адресов, тогда он вновь отправит DHCPDISCOVER.
- Получив DHCPREQUEST и убедившись, что в сообщении его идентификатор, сервер проверяет свободен ли в данный момент запрошенный адрес. Если да, то отправляет DHCPACK и вносит запись в базу, иначе отправляет DHCPNACK.
- Получив сообщение DHCPACK, клиент обязан убедиться в уникальности IP-адреса (средствами протокола ARP) и зафиксировать суммарный срок его аренды.
- Срок аренды: время, прошедшее между отправкой сообщения DHCPREQUEST и приемом ответного сообщения DHCPACK + срок аренды, указанный в DHCPACK.
- Если адрес уже используется другой станцией, клиент отправляет DHCPDECLINE и начинает всю процедуру снова.
- Для досрочного прекращения аренды адреса клиент отправляет серверу сообщение DHCPRELEASE.
Выбор адреса DHCP-сервером
Алгоритм работы DHCP-сервера при получении DHCPDISCOVER:
- Если клиент запросил конкретный адрес, и в данный момент этот адрес свободен, то он будет отправлен клиенту.
- Если клиент не запрашивал адрес, и адрес, закрепленный за ним в данный момент, свободен, то он будет отправлен клиенту.
- Если ни один из предыдущих пунктов не выполнен, то адрес случайно выбирается из пула свободных адресов.
- Если в пуле нет свободных адресов, то сервер отправляет сообщение о проблеме администратору.
Следует отметить, что сервер не обязан отвечать на каждый поступивший запрос DHCPDISCOVER. Такой подход дает возможность управления использованием сети: например, можно разрешить серверу отвечать только тем клиентам, которые предварительно зарегистрировались с помощью специальной процедуры.
Истечение срока аренды адреса
Когда срок аренды адреса подходит к концу клиент может:
- Отправить DHCPRELEASE и начать процедуру получения адреса заново
- Продлить аренду текущего адреса по алгоритму:
- Когда проходит половина времени аренды адреса, клиент переходит в состояние RENEWING.
- Клиент оправляет DHCP-серверу, выдавшему адрес, сообщение DHCPREQUEST с просьбой продлить срок аренды.
- Получив DHCPACK, клиент пересчитывает срок аренды и продолжает работу в обычном режиме.
- Если ответ не получен к моменту времени = 7/8 срока аренды адреса, то клиент переходит в состояние REBINDING.
- Клиент отправляет широковещательное сообщение DHCPREQUEST со своим текущим сетевым адресом.
- Получив DHCPACK, клиент пересчитывает срок аренды и продолжает работу в обычном режиме.
- Если к моменту окончания аренды ответ не получен, то процедура получения адреса начинается сначала.
- Если ответ DHCPACK придет с опозданием, но до завершения новой процедуры получения адреса, то клиент продолжает пользоваться предыдущим адресом.
- Когда проходит половина времени аренды адреса, клиент переходит в состояние RENEWING.
Параметры конфигурации
Для каждого клиента DHCP-сервер заводит в своей базе запись с параметрами конфигурации. Каждой записи соответствует уникальный ключ (например, <номер подсети IP, аппаратный адрес>). Поддерживаемые параметры конфигурации определены в RFC 1122, RFC 1123, RFC 1196, RFC 1256.
Наиболее важные параметры:
- выданный адрес
- срок аренды
- назначавшиеся ранее адреса
- максимальный размер реассемблируемого пакета
- перечень фильтров для нелокальной маршрутизации от источника
- адрес для широковещательных пакетов
- параметры статических маршрутов
Не все параметры конфигурации передаются в сообщениях между клиентом и сервером. Для многих из них в спецификации определены значения по умолчанию - они будут использованы клиентом, если соответствующие параметры отсутствуют в сообщении от сервера. Клиент может явно указать параметры, которые хочет получить в сообщениях DHCPDISCOVER и DHCPREQUEST.
Передача параметров конфигурации происходит в процессе получения IP-адреса. Если на клиенте адрес был задан вручную, то он отправляет сообщение DHCPINFORM, содержащее уже имеющийся адрес и запрос об отдельных параметрах конфигурации. DHCP-сервер проверяет правильность адреса клиента (но не наличие аренды) и отправляет DHCPACK с требуемыми параметрами конфигурации.
Пример исполнения алгоритма
- DHCPDISCOVER
TIME: 2016-12-11 21:33:51.313
IP: 0.0.0.0 (6c:71:d9:56:a5:e3) > 255.255.255.255 (ff:ff:ff:ff:ff:ff)
OP: 1 (BOOTPREQUEST)
HTYPE: 1 (Ethernet)
HLEN: 6
HOPS: 0
XID: bda4bd67
SECS: 0
FLAGS: 0
CIADDR: 0.0.0.0
YIADDR: 0.0.0.0
SIADDR: 0.0.0.0
GIADDR: 0.0.0.0
CHADDR: 6c:71:d9:56:a5:e3:00:00:00:00:00:00:00:00:00:00
SNAME: .
FNAME: .
OPTION: 53 ( 1) DHCP message type 1 (DHCPDISCOVER)
OPTION: 12 ( 5) Host name omnom
OPTION: 55 ( 13) Parameter Request List
1 (Subnet mask)
28 (Broadcast address)
2 (Time offset)
3 (Routers)
15 (Domainname)
6 (DNS server)
119 (Domain Search)
12 (Host name)
44 (NetBIOS name server)
47 (NetBIOS scope)
26 (Interface MTU)
121 (Classless Static Route)
42 (NTP servers)
- DHCPOFFER
TIME: 2016-12-11 21:33:51.613 IP: 192.168.10.1 (c8:3a:35:c:e5:30) > 255.255.255.255 (ff:ff:ff:ff:ff:ff) OP: 2 (BOOTPREPLY) HTYPE: 1 (Ethernet) HLEN: 6 HOPS: 0 XID: bda4bd67 SECS: 0 FLAGS: 0 CIADDR: 0.0.0.0 YIADDR: 192.168.10.101 SIADDR: 0.0.0.0 GIADDR: 0.0.0.0 CHADDR: 6c:71:d9:56:a5:e3:00:00:00:00:00:00:00:00:00:00 SNAME: . FNAME: . OPTION: 53 ( 1) DHCP message type 2 (DHCPOFFER) OPTION: 54 ( 4) Server identifier 192.168.10.1 OPTION: 51 ( 4) IP address leasetime 86140 (23h55m40s) OPTION: 1 ( 4) Subnet mask 255.255.255.0 OPTION: 3 ( 4) Routers 192.168.10.1 OPTION: 6 ( 4) DNS server 192.168.0.1
- DHCPREQUEST
TIME: 2016-12-11 21:33:51.614
IP: 0.0.0.0 (6c:71:d9:56:a5:e3) > 255.255.255.255 (ff:ff:ff:ff:ff:ff)
OP: 1 (BOOTPREQUEST)
HTYPE: 1 (Ethernet)
HLEN: 6
HOPS: 0
XID: bda4bd67
SECS: 0
FLAGS: 0
CIADDR: 0.0.0.0
YIADDR: 0.0.0.0
SIADDR: 0.0.0.0
GIADDR: 0.0.0.0
CHADDR: 6c:71:d9:56:a5:e3:00:00:00:00:00:00:00:00:00:00
SNAME: .
FNAME: .
OPTION: 53 ( 1) DHCP message type 3 (DHCPREQUEST)
OPTION: 54 ( 4) Server identifier 192.168.10.1
OPTION: 50 ( 4) Request IP address 192.168.10.101
OPTION: 12 ( 5) Host name omnom
OPTION: 55 ( 13) Parameter Request List
1 (Subnet mask)
28 (Broadcast address)
2 (Time offset)
3 (Routers)
15 (Domainname)
6 (DNS server)
119 (Domain Search)
12 (Host name)
44 (NetBIOS name server)
47 (NetBIOS scope)
26 (Interface MTU)
121 (Classless Static Route)
42 (NTP servers)
- DHCPACK
TIME: 2016-12-11 21:33:51.913 IP: 192.168.10.1 (c8:3a:35:c:e5:30) > 255.255.255.255 (ff:ff:ff:ff:ff:ff) OP: 2 (BOOTPREPLY) HTYPE: 1 (Ethernet) HLEN: 6 HOPS: 0 XID: bda4bd67 SECS: 0 FLAGS: 0 CIADDR: 0.0.0.0 YIADDR: 192.168.10.101 SIADDR: 0.0.0.0 GIADDR: 0.0.0.0 CHADDR: 6c:71:d9:56:a5:e3:00:00:00:00:00:00:00:00:00:00 SNAME: . FNAME: . OPTION: 53 ( 1) DHCP message type 5 (DHCPACK) OPTION: 54 ( 4) Server identifier 192.168.10.1 OPTION: 51 ( 4) IP address leasetime 86400 (24h) OPTION: 1 ( 4) Subnet mask 255.255.255.0 OPTION: 3 ( 4) Routers 192.168.10.1 OPTION: 6 ( 4) DNS server 192.168.0.1



