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

Получил ли сценарий IP-адрес от DHCP-сервера?

Ни один из Плагины проверки DHCP для Nagios действительно может взять IP-адрес от DHCP-сервера в качестве реального теста. Все, что они делают, это спрашивают, какой IP-адрес будет отдан определенному MAC-адресу.

Наш DHCP-сервер отказал, когда Nagios не предупредил, потому что он мог пройти тест Nagios, но фактически не передать IP клиентам.

Вопрос

Есть ли способ для сценария запрашивать IP-адрес и передавать его DHCP-сервером? Скрипт будет запускаться каждые 5 минут, поэтому он будет отбрасывать IP при каждом запуске.

Обновить

В идеале сценарий должен делать

# dhclient -r ; dhclient ; ip a|grep valid_lft
Killed old client process
       valid_lft forever preferred_lft forever
       valid_lft forever preferred_lft forever
       valid_lft 86459sec preferred_lft 86459sec
       valid_lft forever preferred_lft forever

и если preferred_lft не возобновляется, то тревожный.

Проблема, с которой связан этот метод, требует для этого выделенного сетевого адаптера. Так было бы действительно хорошо, если бы это можно было как-то смоделировать?

Чтобы проверить, что произойдет, если совершенно новый устройство запрашивает у вашего DHCP-сервера IP-адрес, который вашему сценарию Nagios потребуется для отправки пакетов DHCP Discover с поддельными MAC-адресами. Вам нужно будет иметь возможность отправлять необработанные пакеты DHCP, но прежде чем даже пытаться это сделать, вы должны пересмотреть то, что на самом деле потребует этот механизм.

Предположим, у нас есть срок аренды DHCP 24 часа. Если вы отправляете пакет DHCP Discover с новым MAC-адресом каждые 5 минут и получаете предложение DHCP из пула, только ваш тест Nagios займет 288 IP-адресов из вашего пула. Если срок аренды еще больше, например неделя, у вас будет до 2016 фиктивных IP-адресов резервных серверов. Вам понадобится /20 Пул DHCP, чтобы иметь это количество резервных адресов + пространство для фактических устройств.

Вот почему я предлагаю использовать обычный тест и полагаться на него более чем в 99,9% случаев. Редкое состояние истощения пула время от времени стоит обрабатывать вручную, а не вызывать ситуацию во время тестирования.

Вторичный подход. Не выполняйте тестирование, отправляя дополнительные пакеты DHCP Discover, а вместо этого отслеживайте фактический трафик. Создавайте оповещения всякий раз, когда видите:

  • пакет обнаружения DHCP без соответствующего пакета предложения DHCP.
  • пакет запроса DHCP без соответствующего пакета подтверждения DHCP.

Вы сможете быстро распознать любые проблемы.