С помощью DHCP snooping коммутатор контролирует процесс получения DHCP-клиентом IP-адреса для предотвращения атак DHCP и появления не легитимных DHCP-серверов в сети, устанавливая доверенные и недоверенные порты. Сообщения из доверенных портов передаются коммутатором без проверки. Обычно, доверенные порты используются для подключения DHCP-сервера или DHCP relay, а недоверенные - для подключения DHCP-клиентов. Коммутатор передает сообщения DHCP-запросов из недоверенных портов, но не передает DHCP-ответы. Кроме того, при получении DHCP-ответа из недоверенного порта, коммутатор может выполнить предварительно настроенное действие: shutdown или blackhole. Если включена функция DHCP Snooping Binding, то после каждого успешного получения IP адреса через DHCP коммутатор создаст запись в таблице, которая свяжет полученный IP-адрес с MAC-адресом DHCP-клиента, номером его VLAN и порта. C помощью этой информации можно реализовать контроль доступа пользователей.
Включить DHCP Snooping;
Включить DHCP Snooping Binding;
Задать адрес DHCP сервера;
Настроить доверенные порты;
Включить функцию привязки DHCP Snooping binding к пользователю;
Добавить запись DHCP Snooping binding вручную;
Задать действие при получении DHCP-ответа из недоверенного порта;
Задать лимит скорости передачи сообщений DHCP;
Отладочная информация;
Включить DHCP Snooping
Команда | Описание |
---|---|
ip dhcp snooping enable no ip dhcp snooping enable ! В режиме глобальной конфигурации | Включить функцию DHCP snooping Выключить функцию DHCP snooping |
ip dhcp snooping vlan <vlan_id> no ip dhcp snooping vlan <vlan_id> ! В режиме глобальной конфигурации | Включить функцию функцию DHCP snooping для VLAN <vlan_id> Выключить функцию функцию DHCP snooping для VLAN <vlan_id> |
2. Включить DHCP Snooping Binding
Команда | Описание |
---|---|
ip dhcp snooping binding enable no ip dhcp snooping binding enable ! В режиме глобальной конфигурации | Включить функцию DHCP snooping binding Выключить функцию DHCP snooping binding |
3. Задать адрес DHCP сервера
Команда | Описание |
---|---|
ip user helper-address A.B.C.D [port <udpport>] source <ipAddr> (secondary|) no ip user helper-address (secondary|) ! В режиме глобальной конфигурации | Задать адрес DHCP сервера для пользователя
|
4. Настроить доверенные порты
Команда | Описание |
---|---|
ip dhcp snooping trust no ip dhcp snooping trust ! В режиме конфигурирования интерфейса | Назначить порт в качестве доверенного Назначить порт в качестве недоверенного (по-умолчанию) |
5. Включить функцию привязки DHCP Snooping binding к пользователю
Команда | Описание |
---|---|
ip dhcp snooping binding user-control [vlan] [max-user] no ip dhcp snooping binding user-control [vlan] [max-user] ! В режиме конфигурирования интерфейса | Включить функцию привязки пользователя к IP-адресу, VLAN текущему порту и VLAN, vlan - включить функцию во VLAN, max-user - задать максимальное количество пользователей. Для работы функционала обязательно указание параметров vlan и max-user. Выключить функцию привязки пользователя к IP-адресу, VLAN текущему порту и VLAN |
6. Добавить запись DHCP Snooping binding вручную
Команда | Описание |
---|---|
ip dhcp snooping binding user <mac> address <ipAddr> interface (ethernet|) <ifname> no ip dhcp snooping binding user <mac> interface (ethernet|) <ifname> ! В режиме глобальной конфигурации | Добавить статическую запись в таблицу DHCP Snooping binding
|
7. Задать действие при получении DHCP-ответа из недоверенного порта
Команда | Описание |
---|---|
ip dhcp snooping action {shutdown|blackhole} [recovery <second>]
! В режиме конфигурирования интерфейса | Задать действие при получении DHCP-ответа из недоверенного порта: shutdown - выключить порт, blackhole - отбросить кадры с MAC источника, с которым были получены DHCP-ответы. recovery - время восстановления в секундах <second>. Удалить действие при получении DHCP-ответа из недоверенного порта (по умолчанию) |
8. Задать лимит скорости передачи сообщений DHCP
Команда | Описание |
---|---|
ip dhcp snooping limit-rate <pps> no ip dhcp snooping limit-rate ! В режиме глобальной конфигурации | Задать лимит скорости передачи сообщений DHCP от 0 до 100 pps. Удалить лимит скорости передачи сообщений DHCP (по-умолчанию) |
9. Просмотр записей в таблице DHCP snooping binding
Команда | Описание |
---|---|
show ip dhcp snooping binding all ! В привилегированном режиме | Отобразить все записи в таблице DHCP snooping binding |
10. Отладочная информация
Команда | Описание |
---|---|
debug ip dhcp snooping packet debug ip dhcp snooping event debug ip dhcp snooping update debug ip dhcp snooping binding ! В привилегированном режиме | Отобразить отладочную информацию |
Рисунок 40.1 - Настройка DHCP snooping
Как показано на рисунке 40.1, ПК1 подключен к недоверенному порту 1/0/1 коммутатора Switch1 и получает конфигурацию через DHCP, IP-адрес клиента 10.10.10.5. DHCP-сервер и шлюз подключены к портам коммутатора 1/0/11 и 1/0/12 соответственно, настроенным как доверенные. Злоумышленник ПК2, подключенный к недоверенному порту 1/0/2 пытается подделать DHCP-сервер, посылая ложные DHCPACK. Функция DHCP snooping эффективно обнаружит и заблокирует такой тип атаки.
Конфигурация коммутатора Switch1:
Switch1(config)#ip dhcp snooping enable Switch1(config)#interface ethernet 1/0/11 Switch1(Config-Ethernet1/0/11)#ip dhcp snooping trust Switch1(Config-Ethernet1/0/11)#exit Switch1(config)#interface ethernet 1/0/12 Switch1(Config-Ethernet1/0/12)#ip dhcp snooping trust Switch1(Config-Ethernet1/0/12)#exit Switch1(config)#interface ethernet 1/0/1-2 Switch1(Config-Port-Range)#ip dhcp snooping action shutdown |
Проверьте, включен ли DHCP-snooping;
Если порт не реагирует на ложные DHCP сообщения, проверьте, настроен ли этот порт как недоверенный.