Назад | Перейти на главную страницу

Аудит зарезервированных IP-адресов для UNIX / Linux ISC-DHCP

Существуют ли какие-либо хорошие инструменты FOSS для аудита зарезервированных IP-адресов, используемых в среде Linux / UNIX ISC DHCPd? Я пытаюсь убедиться, что у нас не зарезервированы устаревшие IP-адреса при извлечении старых MAC-адресов.

Я понятия не имею, хорошо ли и насколько хорошо этот работает, но, похоже, он собирает некоторые данные, которые вам требуются, чтобы это могло быть началом.

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

Некоторые относительно простые сценарии Perl для их таблиц SNMP должны позволить вам проверить это и создать долгосрочную базу данных сопоставлений MAC -> IP. См. Например http://docstore.mik.ua/orelly/perl/sysadmin/ch10_03.htm

Первоначальный вопрос был задан для инструментов FOSS для этой цели, но я не знаю ни одного, который бы делал это правильно.

Мне приходилось выполнять это упражнение в прошлом, поэтому я могу объяснить, почему некоторых других предложений здесь может быть недостаточно. Я бы спросил, какие роутеры вы используете в своей сети.

  • Сканирования сети в определенное время недостаточно; среди прочего, он игнорирует временной аспект использования. Просто хост может быть не в сети, пока вы выполняли сканирование. Другая проблема заключается в том, что на хосте может быть включен брандмауэр, блокирующий сканирование.

  • Человеческий процесс ... ну, они такие мягкие, зачем вам это делать?

  • Также может быть недостаточно сравнения DHCP conf с проданной арендой. Базу данных аренды снова придется отслеживать с течением времени. Но настоящая проблема в том, что вы могли создать запись в своей конфигурации, которая используется статически, а не через DHCP. Кто-то, возможно, запросил адрес, обнаружил, что не может правильно настроить DHCP, и жестко запрограммировал адрес, назначенный аппарату.

Решение, которое я использовал, заключалось в сборе записей ARP с маршрутизаторов (Cisco). Минимальная информация, которую вам необходимо захватить, - это IP-адрес, MAC-адрес и некоторые временные данные (впервые увидели, последний раз видели) за некоторый период времени. Затем это можно сравнить с вашей конфигурацией DHCP, чтобы увидеть, какие регистрации НЕ используются и могут быть восстановлены. Журналы ARP содержат другую информацию об использовании, например

  • Зарегистрированный MAC с зарегистрированным IP-адресом, но без записи об аренде DHCP - хост жестко запрограммирован на их регистрацию, а не с использованием DHCP.

  • Зарегистрированный MAC-адрес не использует зарегистрированный IP-адрес - если в той же сети, вероятно, жестко введен неправильный адрес; если в другой сети, возможно, хост переместился.

  • Незарегистрированный MAC с зарегистрированным или незарегистрированным IP-адресом - возможно, новый сетевой адаптер, возможно, мошеннический аппаратный кодер.

Вам также необходимо создать (и опубликовать для пользователей) политику, чтобы сценарий, сравнивающий записи DHCP с информацией ARP, назначал адреса, которые должны быть восстановлены после некоторого времени N неиспользования. Мы использовали шесть месяцев, хотя в конечном итоге нам удалось вернуть адрес сотрудника, который ушел в творческий отпуск. Отрегулируйте как разумно.

Надеюсь это поможет!

Если вы имеете в виду динамическое распределение аренды, вам не нужно ничего делать. ISC dhcpd пытается удерживать ранее назначенные аренды как можно дольше, пока пул аренды не опустеет. Затем он будет очищен от истекших (и, следовательно, в настоящее время неиспользуемых) аренды.

Если вы имеете в виду статическое резервирование, ответ: человеческий процесс.

Вы очищаете свой DNS (и, если применимо, NIS), когда старые компьютеры выводятся из эксплуатации, верно? Поэтому добавьте примечание к этому процессу, чтобы одновременно очистить резервирование DHCP.

В нашем случае у нас есть сценарий perl, который читает специально отформатированный исходный файл и автоматически генерирует таблицы NIS, DNS (вперед и назад) и DHCP, распределяет их и уведомляет обслуживающих демонов. Это означает, что у нас есть одна остановка, чтобы убрать за собой и / или добавить что-то новое.

Я думаю, вы могли бы собрать довольно простой скрипт на Perl, который сравнивал бы /etc/dhcpd.conf и /var/lib/dhcp/dhcpd.leases

Я бы посмотрел на http://search.cpan.org/~jhthorsen/Net-ISC-DHCPd/lib/Net/ISC/DHCPd.pm который, похоже, имеет модули для чтения обоих этих типов файлов.

Еще одна мысль - захватить и проанализировать вывод такой команды, как: nmap -sP -oG output.txt 10.0.0.0/8

Если бы команда была запущена в полдень или в другое время, когда «все» должны быть в сети, она, скорее всего, захватила бы фантомный ноутбук большую часть времени.

В таких местах, как школы и университеты, они регистрируют пользователей на основе их MAC-адресов. Такие инструменты, как arpwatch, имеют базу данных статических записей ARP. Лучше всего провести аудит вашего сетевого пространства перед созданием базы данных MAC-адресов. Это выполняется на шлюзе NAT / DHCP.

Не следует полагаться на DHCP для управления пользователями сети. Что произойдет, если кто-то выберет статический IP-адрес?

Удачи, Эш

arpwatch - это компьютерный программный инструмент для мониторинга трафика протокола разрешения адресов в компьютерной сети. Он генерирует журнал наблюдаемого связывания IP-адресов с MAC-адресами вместе с отметкой времени, когда соединение появилось в сети.

Сетевые администраторы отслеживают активность ARP для обнаружения спуфинга ARP. - Википедия