Убиваем “незаконные” DHCP сервера в сети

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

Итак, расскажу об установке под Ubuntu.

Первым делом ставим необходимое для сборки dhcdrop:

$ sudo apt-get install build-essential automake libtool libpcap-dev

Теперь скачиваем последние исходники из svn:

$ svn co https://svn.codenet.ru/netpatch/dhcdrop/trunk/ /tmp/dhcdrop

Запускаем сборку:

$ cd /tmp/dhcdrop
$ ./autogen.sh
$ ./configure
$ make
$ sudo make install

Из официальной документации:

  • -h – показывает help-сообщение.
  • -D – просмотр списка имён и индексов сетевых интерфейсов. Актуально в ОС Windows – см. пример ниже.
  • -t – Режим теста. В этом режиме dhcdrop не выполняет подавление сервера. Производится лишь посылка DHCPDISCOVER, если на него приходит ответ нелегального сервера, то программа заверается возвращаяя код 200 и выводя на экран строку вида DHCP SRV: 10.7.7.1 (IP-hdr: 10.7.7.1) SRV ether: 00:02:44:75:77:E4, YIP: 10.7.7.205 содержащую минимум информации о создающем проблему DHCP сервере.
  • -y – подразумевается ответ “yes” на любой вопрос программы.
  • -r – отключает рандомизацию MAC адреса источника. Каждый последующий MAC адрес источника увеличивается на 1.
  • -b – указывает на необходимость использования флага BROADCAST в отправляемых DHCP пакетах.
  • -a – всегда ожидать ответа сервера на порт DHCP клиента по умолчанию (68), даже если задано значение номера порта клиента отличное от значения по умолчанию.
  • -A – всегда ожидать ответа с порта DHCP сервера по умолчанию (67), даже если задано значение номера порта сервера отличное от значения по умолчанию.
  • -f – режим флуда запросами DHCPDISCOVER. ПРИМЕНЯТЬ С ОСТОРОЖНОСТЬЮ. Удобен для стресс-тестирования сервера. В случае указания опции -r все отправляемые пакеты имеют одинаковый MAC адрес.
  • -R – отправляет сообщение DHCPRELEASE с MAC адресом источника указанном при запуске программы и IP адресом указанным при помощи опции -F к серверу указанному опцией -s.
  • -q – “тихий” режим работы. Выводится минимум информации.
  • -m count – максимальное число попыток получения ответа от сервера.
  • -c count – максимальное число адресов арендуемых у сервера.
  • -n hostname – значение DHCP опции HostName (по умолчанию – “DHCP-dropper”)
  • -N clientname – значение DHCP опции Vendor-Class (по умолчанию – “DHCP-dropper”)
  • -p port – порт используемый клиентом для отправки DHCP сообщений. По умолчанию – 68.
  • -P port – порт сервера, на который отправляются DHCP сообщения. По умолчанию – 67.
  • -w секунд – задаёт таймаут рестарта процесса получения IP адресов в случае использования агрессивного режима. По умолчанию – 60 секунд.
  • -T timeout – устанавливает таймаут ожидания ответа сервера (в секундах). По умолчанию – 3 секунды.
  • -M хостов-максимум – максимально допустимое количество сканируемых хостов в случае использования агрессивного режима.
  • -l MAC-address – Ethernet адрес сервера который необходимо игнориновать при выполненении поиска ложных DHCP серверов в сети. В этой опции следует указать адрес DHCP сервера ответственного за раздачу адресов в данном сегменте сети. Может быть указано несколько адресов – каждый должен предваряться ключом -l.
  • -L легальная-сеть – указывает легальную IP подсеть для выбранного интерфейса. Использование этой опции автоматически включает агрессивный режим получения IP адресов. Может быть указано несколько сетей – каждая должна предваряться ключом -L. Подробное описание смотрите ниже.
  • -S сеть/маска – ARP сканирование сети ‘сеть’ с использованием сетевой маски ‘маска’ в CIDR нотации. IP адрес источника задаётся опцией -F. Если IP адрес источника не задан – используется случайный адрес из диапазона указанной подсети. Пример использования смотрите ниже.
  • -F исходящий-IP-адрес – указывает IP адрес источника для сканирования сети (опция -S), либо IP адрес DHCP клиента для отправки сообщения DHCPRELEASE (опция -R).
  • -s IP-адрес-сервера – задаёт IP адрес DHCP сервера. Используется с опцией -R.
  • -C count – число порождаемых процессов-потомков. Совместим только с флагом -f. Используется для увеличения числа отправляемых пакетов за единицу времени. При значении этого параметра равном 30, 10000 пакетов генерировалось менее чем за 1,5 секунды.
  • -i interface – имя либо индекс сетевого интерфейса (см. ключ -D). Не может быть “any”! Единственный обязательный параметр программы.
  • initial MAC address – задаёт MAC адрес источника используемый при отправке первого DHCP сообщения, либо используемый постоянно, в случае использования опции ‘-f’ (flood) вместе с опцией ‘-r’. Если не указан, то используется случайный MAC адрес источника.

Простейший запуск:

$ sudo dhcdrop -i eth0

Найдет все DHCP-сервера и по порядку спросит чего с ними делать. Остальное можно прочитать на официальном сайте. Тем более, что он русский. 🙂

Вы можете оставить комментарий, или поставить трэкбек со своего сайта.

5 комментариев

(Обязательно)
(Обязательно, не публикуется)

Hастоящий админ знает только об одном типе архивов - tgz.
Купить в рассрочку

Получить кредит просто! Заполни форму и получи кредит не выходя из дома под 1.99% месяц
Мы свяжемся с вами в течении часа в рабочее время




×
Купить в рассрочку

Получить кредит просто! Заполни форму и получи кредит не выходя из дома под 1.99% месяц
Мы свяжемся с вами в течении часа в рабочее время




×
Adblock
detector