Модераторы: ginnie, korob2001
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> SNMP set 
V
    Опции темы
Asmerald
Дата 3.6.2008, 15:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 3.6.2008

Репутация: нет
Всего: нет



Здравствуйте. 
 Как в перловом скрипте, используя SNMP модуль передать set'ом OCTETSTR значение? Т.е. имеется - 
 
 use SNMP; 
 
 $s1 = new SNMP::Session (DestHost => $ip,Community => "$community",Version=>1); 
 $oid="portSecuritySecureSrcAddr.$mod.$port"; 
 $val="some MAC"; 
 
 Так вот как здесь дать понять сету, что передаётся октетстринг? 
 $srcmac=$s1->set($oid,$val); 
 Чтение документации модуля не помогло.
PM MAIL   Вверх
shamber
Дата 3.6.2008, 15:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1422
Регистрация: 5.9.2006
Где: Россия

Репутация: 1
Всего: 18



Код

SNMP::Varbind

represents a single MIB object to get or set, implemented as a blessed reference to a 4 element array; [<obj>, <iid>, <val>, <type>].
<obj>

one of the following forms:
1)

leaf identifier (e.g., 'sysDescr') assumed to be unique for practical purposes
2)

fully qualified identifier (e.g., '.iso.org.dod.internet.mgmt.mib-2.system.sysDescr')
3)

fully qualified, dotted-decimal, numeric OID (e.g., '.1.3.6.1.2.1.1.1')
<iid>

the dotted-decimal, instance identifier. for scalar MIB objects use '0'
<val>

the SNMP data value retrieved from or being set to the agents MIB. for (f)get(next) operations <val> may have a variety of formats as determined by session and package settings. However for set operations the <val> format must be canonical to ensure unambiguous translation. The canonical forms are as follows:
OBJECTID

dotted-decimal (e.g., .1.3.6.1.2.1.1.1)
OCTETSTR

perl scalar containing octets
....

perl scalar containing nothing
<type>

SNMP data type (see list above), this field is populated by 'get' and 'getnext' operations. In some cases the programmer needs to populate this field when passing to a 'set' operation. this field need not be supplied when the attribute indicated by <tag> is already described by loaded Mib modules. for 'set's, if a numeric OID is used and the object is not currently in the loaded Mib, the <type> field must be supplied

PM MAIL Jabber   Вверх
Asmerald
Дата 3.6.2008, 15:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 3.6.2008

Репутация: нет
Всего: нет



Да это я всё читал. Конкретный пример.
Прописывания мака на порту 2/19 -

$s1->set("portSecuritySecureSrcAddr",'2.19',"00 11 22 33 44 55",'OCTETSTR');

не даёт никаких результатов, в том числе и ошибок.
Из системы через snmpset работает.
PM MAIL   Вверх
Asmerald
Дата 5.6.2008, 12:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 3.6.2008

Репутация: нет
Всего: нет



Всё оказалось проще, надо было мак передавать запакованный. Т.е. параметр, передаваемый сету -

$m=pack('H*',$mac);
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl: Системное программирование"
korob2001
sharq
  • В этом разделе обсуждаются вопросы относящиеся только к системному программированию на Perl
  • Если ваш вопрос не относится к системному или CGI программированию, задавайте его в общем разделе
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Системное программирование | Следующая тема »


 




[ Время генерации скрипта: 0.0468 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.