DHCPScan — утилита для поиска Rogue DHCP

DHCPScan — утилита для поиска Rogue DHCP

Когда в сети внезапно начинает твориться дичь — пользователи получают странные IP, шлюз какой-то левый, DNS указывает на роутер из 2012 года… почти всегда виноват rogue DHCP сервер.
Чтобы быстро найти rogue сервер, я написал небольшую утилиту DHCPScan.

Она делает следующее:

  • отправляет DHCP Discover
  • собирает все DHCP Offer
  • показывает серверы
  • парсит DHCP options
  • определяет rogue DHCP server

Утилита показывает:

  • IP DHCP сервера
  • выданный адрес
  • DNS
  • Gateway
  • Lease time
  • NTP
  • Vendor class
  • Boot server
  • Raw DHCP options

Это превращает поиск rogue DHCP из «сетевой детективной истории» в задачу на 10 секунд.


5 практических кейсов поиска Rogue DHCP

1. Домашний роутер сотрудника

Пользователь принес TP-Link и воткнул в сеть.

DHCPScan показал второй DHCP сервер с адресом 192.168.0.1.

Виновник найден за 30 секунд.


2. Виртуальная машина разработчиков

VMWare автоматически включил DHCP в тестовой сети.

DHCPScan показал:

  • vendor class
  • нестандартные DHCP options

После этого VM была быстро вычислена.


3. Неправильный Cisco DHCP Option 43

Access Point перестали подключаться к контроллеру.

DHCPScan показал неправильный Option 43.

Исправили — Wi-Fi ожил.


4. Ошибка DHCP relay

DHCP Option 82 показывал другой порт коммутатора.

Оказалось, что DHCP relay настроен на неправильном интерфейсе.


5. Тестовый сервер админа

Классика жанра.

Админ поднял тестовый DHCP… и забыл выключить.

DHCPScan моментально показал второго DHCP сервера.

После чего админ сделал вид, что это «плановое тестирование».

Если вы когда-нибудь приходили утром на работу, а пользователи жаловались:

  • «Интернет не работает»
  • «Компьютер получил странный IP»
  • «Шлюз какой-то 192.168.0.1 вместо нашего 10.10.0.1»

— поздравляю. Почти наверняка у вас появился rogue DHCP server.

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

В этой статье разберём:

  • что такое rogue DHCP
  • какие DHCP options анализировать
  • что такое DHCP Option 43 и DHCP Option 82
  • как использовать DHCP Snooping чтобы не допустить rogue серверов
  • как быстро найти их с помощью утилиты DHCPScan

Что такое Rogue DHCP Server

Rogue DHCP server — это любой DHCP-сервер, который вы не планировали видеть в сети.

Типичные источники:

  • домашний роутер сотрудника
  • виртуальная машина с включённым DHCP
  • неправильно настроенный сервер
  • лабораторный стенд разработчиков
  • Wi-Fi точка доступа

Проблема в том, что DHCP работает по принципу «кто первый ответил — того и тапки».
Клиент берёт первый пришедший DHCP Offer.

И если rogue сервер отвечает быстрее вашего основного DHCP — начинается цирк.


Как работает DHCP и зачем нужны DHCP Options

DHCP сервер передаёт клиенту параметры сети через DHCP options.

Самые распространённые:

  • Option 1 — Subnet mask
  • Option 3 — Gateway
  • Option 6 — DNS
  • Option 15 — Domain
  • Option 42 — NTP server
  • Option 51 — Lease time

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


DHCP Option 43 (Cisco DHCP Option)

DHCP Option 43 используется для передачи vendor-specific параметров.

Особенно активно его используют:

  • Cisco
  • VoIP телефоны
  • Wi-Fi контроллеры
  • IP камеры

Например Cisco Access Point может получить через Cisco DHCP option адрес контроллера.

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

ip dhcp pool WIFI
 option 43 hex f1040a0a0a0a

Где:

  • f1 — код Cisco
  • 040a0a0a0a — IP контроллера

Если rogue DHCP выдаёт неправильный Option 43 — точки доступа просто не смогут найти контроллер.


DHCP Option 82

DHCP Option 82 используется коммутаторами для идентификации порта, откуда пришёл DHCP запрос.

Это называется Relay Agent Information.

Option 82 содержит:

  • порт коммутатора
  • VLAN
  • ID коммутатора

Это сильно помогает:

  • отслеживать устройства
  • применять политики
  • искать rogue DHCP

DHCP Snooping — защита от Rogue DHCP

Чтобы не допустить rogue серверов, используют DHCP Snooping.

Коммутатор начинает контролировать DHCP трафик.

Порты делятся на:

  • trusted — где разрешён DHCP сервер
  • untrusted — клиентские порты

Если DHCP Offer приходит с untrusted порта — пакет просто блокируется.

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

ip dhcp snooping
ip dhcp snooping vlan 10
interface Gi0/1
 ip dhcp snooping trust

В результате rogue DHCP серверы перестают ломать сеть.


MikroTik DHCP Options

В MikroTik DHCP options настраиваются очень гибко.

Например Option 42 для NTP:

/ip dhcp-server option
add name=ntp option=42 value=0xC0A80101

Option 43 для VoIP:

/ip dhcp-server option
add name=voip option=43 value=0x0104C0A8010A

После этого options можно назначить серверу DHCP.


Rogue DHCP сервер — одна из самых частых причин сетевых проблем.

Чтобы не ловить их вслепую:

  • используйте DHCP Snooping
  • контролируйте DHCP options
  • проверяйте DHCP Option 43 и DHCP Option 82
  • используйте утилиты вроде DHCPScan

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

Скачать DHCPscan

over_dude
Author: over_dude

Поделитесь:

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Прокрутить вверх