Perl для системного администрирования



   Магазин для художников в москве.             

Протокол SNMP - часть 2


Помимо различного уровня поддержки протокола SNMP, самое большое различие между этими модулями заключается в их зависимости от внешних библиотек. Первые два (Net: :SNMP и SNMP_Session.pm) реализованы только на Perl, a SNMP должен быть скомпонован с прекомпилированной библиотекой UCD-SNMP. Основной недостаток применения SNMP - это дополнительная зависимость и лишний шаг компиляции (если считать, что вы можете собрать библиотеку UCD-SNMP на своей платформе).

Положительная сторона зависимости от библиотеки UCD-SNMP в том, что она придает модулю дополнительную силу и мощь. Например, SNMP может анализировать файлы описания административных баз данных (Management Information Base, MIB) и выводить для анализа SNMP-na-

кеты, чего не могут два других модуля. Для уменьшения разницы в возможностях существуют другие модули (например модуль SNMP: :MIB: :Compiler Фабьена Тассэна (Fabien Tassin) способен анализировать MIB), но если нужно, чтобы один модуль выполнял всю работу, то лучше модуля SNMP ничего нет.

Давайте рассмотрим небольшой пример на Perl. Для того чтобы узнать количество интерфейсов на определенном устройстве, можно обратиться к переменной interfaces. ;fN'.jmDe<". Сделать это при помощи модуля Net: : SNMP очень просто:

use Net::SNMP;

 в качестве аргументов задаются имя >зяа и /msi еоибцес! в,;

(Ssession. $<;rro' ) = Net: :SNMP->session(,Hostnare = SARGVfOJ,

С(Ж<!Н,п ty = SARGVf" ] >.

die "Ошибка сеанса: Serror" unless ($snssion):

S iso. org. dod internet, mgnit. mib-2. interfaces.  ff-bmoer . 0 =

 1.36.1.2.1.2.1.0

Sresult = $session->get_request("l.3.6.1.2.1.2.1.0'):

die "Ошибка запроса: ". $session--->error unless (defined Sresult):

$session->close;

print "Количество интерфейсов: ".$result->{"1.3.6.1.2.1. 2. 1. 0"). "\n":

Если указать на рабочую станцию с интерфейсом обратной петли и интерфейсом Ethernet, программа вернет: Количество интерфейсов: 2; если же указать на портативный компьютер с интерфейсом обратной петли и интерфейсами Ethernet и РРР, то программа вернет Количество интерфейсов: 3; для небольшого маршрутизатора она вернет Количество интерфейсов: 7.




Содержание  Назад  Вперед