DHCPv4

Клиент-серверная модель

DHCP(Dynamic Host Configuration Protocol) работает с использованием клиент-серверной модели


Когда клиент в первый раз подключается к сети и если он настроен для автоматической настройки сетевого интерфейса отправляет DHCPDISCOVER на широковещательный адрес

 DHCPDISCOVER:

	 - Флаг типа ответа *Broadcast*  

Если в сети есть DHCP-сервер, то в ответ отправляется DHCPOFFER на Unicast или Broadcast (в зависимости от флага Broadcast в DHCPDISCOVER)

Если клиент принимает настройки, заданные в OFFER, клиент отправляет DHCPREQUEST на Broadcast.

В ответ сервер подтверждает настройку клиента, отправив DHCPACK (либо unicast, либо broadcast)

В итоге у клиента в сети появляется адрес, маска сети, шлюз по умолчанию и другие настройки (dns, например)


Время аренды

Все адреса выдаются на время. Этот период называется временем аренды. Делается, чтобы не перегружать пул адресов. Если клиент продолжает пользоваться адресом, ее необходимо продлить. Продление происходит в 2 этапа


Настройка DHCP

В больших сетях рекомендуется использовать выделенные серверы DHCP

Но маршрутизаторы cisco могут выступать в роли dhcp. Настройка производится в несколько этапов

  1. Исключение ip-адресов, которые не будут участвовать в выдаче (важное оборудование - шлюз по умолчанию, принтер и др.)
ip dhcp excluded-address <low_address> [high_address]	
Можно исключить отдельный адрес, либо диапозон \[high_address\]

2) Настройка пула адресов

  • Создание пула адресов
ip dhcp pool <pool_name>
  • Настройка пула адресов
network network-number [mask | /prefix-length]
  • Задать маршрут по умолчанию
default-router address [... до 8 адресов]
  • Задать время аренды IP-адреса (по умолчанию выдается на 1 день)
lease {days [hours[minutes]] | infinite}
  • Задать dns-сервер
dns-server <dns-IP>
  • Задать доменное имя клиенту
domain-name <name>

Пример настройки

Пример настройки для сети 192.168.10.0/24

опечатка в адресе dns?


Просмотр настроек DHCP

Общие настройки

show running config | section dhcp

Работоспособность

Почему такой странный mac-адрес?

Показывает связки mac и ip адреса клиентов

show ip dhcp binding

Статистика DHCP

Количество пакетов, которые были получены и переданы сервером

show ip dhcp server statistics

Просмотр настроек на клиенте

ipconfig /all

Отключение dhcp

К такой команде клиентов нужно готовить

  • сервис включен по умолчанию

Ретрансляция DHCP

Маршрутизатор не умеет пересылать широковещательный трафик. Но для DHCP-пакетов можно сделать исключение, так как удобно иметь на несколько сетей один dhcp


Настройка ретрансляции

Делается в режиме настройки интерфейса, в сети которого находятся клиенты (откуда придет DISCOVER)

ip helper-address <dhcp-address>

Адрес назначения (broadcast) будет подменяться helper-адресом при пересылке в новую сеть

Работает только для некоторых служб (напрмер DHCP/DNS)


Настройка маршрутизатора через DHCP

В настройке интерфейса:

ip address dhcp

Может понадобится, когда домашний, например, маршрутизатор, получает адрес от провайдера (тупиковые сети (stub-network))


Просмотр настройки

DHCPv6

RA рассылается каждые 200 секунд

A - SLAAC

M - DHCPv6

O - SLAAC + DHCPv6


Способы задания ipv6 адреса клиенту


Настройка SLAAC

При настройке ipv6 на маршрутизаторе задачей администратора также является настройка флагов RA сообщений (т.е. dhcp)

ipv6 unicast-routing // подписка на пакеты с адресом ff02::2

Обнаружение сообщений


Stateless DHCP


Настройка stateless DHCP


Stateful DHCP

Настройка stateful DHCP

Настройка stateless DHCP сервера

Настройка случая, когда маршрутизатор по совместительству и DHCPv6 - сервер

Если не так, то как минимум нужно сделать такие настройки


Пример настройки stateless DHCPv6


Проверка, что все работает на хосте


Настройка stateless DHCPv6 клиента на cisco


Проверка, что все работает

Настройка stateful DHCPv6 сервера


Пример настройки stateful DHCPv6


Проверка на хосте


Настройка stateful DHCPv6 клиента на cisco


Проверка


Проверка работы DHCP

Настройка пула и количество адресов


Отображение ipv6 на mac


Настройка ретрансляции


Проверка ретранслятора