Dhcping - проверка работоспособности DHCP-сервера

  • user warning: Table './muffsql1/cache_filter' is marked as crashed and should be repaired query: SELECT data, created, headers, expire, serialized FROM cache_filter WHERE cid = '2:dab3fe90a8a5a401491c76f7cc0037ba' in /usr/local/www/muff.kiev.ua/includes/cache.inc on line 27.
  • user warning: Table './muffsql1/cache_filter' is marked as crashed and should be repaired query: UPDATE cache_filter SET data = '<p class=\"rtejustify\">При диагностике локальной сети иногда возникает необходимость проверить работоспособность того или иного <strong>DHCP</strong>-сервера. Конечно, можно запустить <strong>dhclient</strong> и проверить результат. Однако при этом возникает ряд проблем:</p>\n<ul>\n<li class=\"rtejustify\">на время получения IP теряем связь с локальной сетью</li>\n<li class=\"rtejustify\">даный метод неактуалени при наличии в сети нескольких DHCP-серверов и неработоспособности только одного из них</li>\n<li class=\"rtejustify\">при удаленном подключении существует вероятность &quot;потери&quot; удаленного хоста</li>\n<li class=\"rtejustify\">проверку с использованием <strong>dhclient</strong> сложно автоматизировать</li>\n</ul>\n<p class=\"rtejustify\">Поэтому, для проверки работоспособности <strong>DHCP</strong>-сервера можно использовать крошечную утилиту <strong>dhcping</strong>. Принцип работы утилиты очень прост: утилита отправляет указанному серверу (юникастом, а не броадкастом) пакет <strong>DHCPREQUEST</strong> с просьбой выдать адрес 0.0.0.0. Авторитативный <strong>DHCP</strong>-сервер должен ответить на этот запрос пакетом <strong>DHCPNAK</strong>. Получив такой пакет, <strong>dhcping</strong> делает вывод о работоспособности опрашиваемого сервера и очищает полученную <strong>lease</strong>, отправив опрашиваемому <strong>DHCP</strong>-серверу пакет <strong>DHCPRELEASE</strong>.</p>\n<p class=\"rtejustify\">Выполним установку утилиты из системы портов:</p>\n<table border=\"1\" cellpadding=\"1\" cellspacing=\"1\" style=\"width:100%\">\n<tbody>\n<tr>\n<td># <strong>cd /usr/ports/net/dhcping &amp;&amp; make install clean &amp;&amp; rehash</strong></td>\n</tr>\n</tbody>\n</table>\n<p>Чтобы ознакомиться с возможностями утилиты, стоит просмотреть страницы <strong>man</strong>-руководства:</p>\n<table border=\"1\" cellpadding=\"1\" cellspacing=\"1\" style=\"width:100%\">\n<tbody>\n<tr>\n<td># <strong>man dhcping</strong></td>\n</tr>\n</tbody>\n</table>\n<p>Самый простой пример опроса:</p>\n<table border=\"1\" cellpadding=\"1\" cellspacing=\"1\" style=\"width:100%\">\n<tbody>\n<tr>\n<td>\n<p># <strong>dhcping -s 192.168.192.55</strong><br />\n Got answer from: 192.168.192.55</p>\n</td>\n</tr>\n</tbody>\n</table>\n<p class=\"rtejustify\">Сервер ответил, все ok. В случае проблем с <strong>DHCP</strong>-сервером, утилита сообщит &quot;<strong>no answer</strong>&quot;. Только стоит иметь в виду, что даная проверка годится лишь для &quot;авторитативных&quot; серверов, все остальные просто проигнорируют некоректный <strong>DHCPREQUEST</strong>.</p>\n', created = 1767726548, expire = 1767812948, headers = '', serialized = 0 WHERE cid = '2:dab3fe90a8a5a401491c76f7cc0037ba' in /usr/local/www/muff.kiev.ua/includes/cache.inc on line 112.
  • user warning: Table './muffsql1/cache_filter' is marked as crashed and should be repaired query: SELECT data, created, headers, expire, serialized FROM cache_filter WHERE cid = '2:07243fc0252056071eaa62af8c18d662' in /usr/local/www/muff.kiev.ua/includes/cache.inc on line 27.
  • user warning: Table './muffsql1/cache_filter' is marked as crashed and should be repaired query: UPDATE cache_filter SET data = '<p class=\"rtecenter\"><a class=\"thickbox\" href=\"/files/imagepicker/1/wake_up_ua.png\"><img alt=\"Вставай, Україно!\" class=\"imgp_img\" src=\"/files/imagepicker/1/thumbs/wake_up_ua.png\" style=\"height:200px; width:150px\" /></a></p>\n', created = 1767726548, expire = 1767812948, headers = '', serialized = 0 WHERE cid = '2:07243fc0252056071eaa62af8c18d662' in /usr/local/www/muff.kiev.ua/includes/cache.inc on line 112.
  • user warning: Table './muffsql1/cache_filter' is marked as crashed and should be repaired query: SELECT data, created, headers, expire, serialized FROM cache_filter WHERE cid = '3:cc913d232116f0426090404133377d88' in /usr/local/www/muff.kiev.ua/includes/cache.inc on line 27.
  • user warning: Table './muffsql1/cache_filter' is marked as crashed and should be repaired query: SELECT data, created, headers, expire, serialized FROM cache_filter WHERE cid = '2:d9a86123bfcbc57878743027b584400b' in /usr/local/www/muff.kiev.ua/includes/cache.inc on line 27.
  • user warning: Table './muffsql1/cache_filter' is marked as crashed and should be repaired query: UPDATE cache_filter SET data = '<p class=\"rtecenter\"><a href=\"http://muff.kiev.ua/rss.xml\"><img alt=\"RSS\" width=\"160\" height=\"60\" src=\"http://muff.kiev.ua/files/muf-rss.png\" /></a></p>\n', created = 1767726548, expire = 1767812948, headers = '', serialized = 0 WHERE cid = '2:d9a86123bfcbc57878743027b584400b' in /usr/local/www/muff.kiev.ua/includes/cache.inc on line 112.
  • user warning: Table './muffsql1/cache_filter' is marked as crashed and should be repaired query: SELECT data, created, headers, expire, serialized FROM cache_filter WHERE cid = '3:39649256b636e3d5ded656bc52bd8c01' in /usr/local/www/muff.kiev.ua/includes/cache.inc on line 27.
Версия для печатиОтправить другуPDF version

При диагностике локальной сети иногда возникает необходимость проверить работоспособность того или иного DHCP-сервера. Конечно, можно запустить dhclient и проверить результат. Однако при этом возникает ряд проблем:

  • на время получения IP теряем связь с локальной сетью
  • даный метод неактуалени при наличии в сети нескольких DHCP-серверов и неработоспособности только одного из них
  • при удаленном подключении существует вероятность "потери" удаленного хоста
  • проверку с использованием dhclient сложно автоматизировать

Поэтому, для проверки работоспособности DHCP-сервера можно использовать крошечную утилиту dhcping. Принцип работы утилиты очень прост: утилита отправляет указанному серверу (юникастом, а не броадкастом) пакет DHCPREQUEST с просьбой выдать адрес 0.0.0.0. Авторитативный DHCP-сервер должен ответить на этот запрос пакетом DHCPNAK. Получив такой пакет, dhcping делает вывод о работоспособности опрашиваемого сервера и очищает полученную lease, отправив опрашиваемому DHCP-серверу пакет DHCPRELEASE.

Выполним установку утилиты из системы портов:

# cd /usr/ports/net/dhcping && make install clean && rehash

Чтобы ознакомиться с возможностями утилиты, стоит просмотреть страницы man-руководства:

# man dhcping

Самый простой пример опроса:

# dhcping -s 192.168.192.55
Got answer from: 192.168.192.55

Сервер ответил, все ok. В случае проблем с DHCP-сервером, утилита сообщит "no answer". Только стоит иметь в виду, что даная проверка годится лишь для "авторитативных" серверов, все остальные просто проигнорируют некоректный DHCPREQUEST.

Ваша оценка: Нет Средняя: 3 (2 голоса)

Вставай, Україно!

Литература

Я тебя инстальнул - я тебя и убью!