реклама на сайте
подробности

 
 
> snmpd + mib + обработчик и все это на Linux, Посоветуйте хороший пример или мануал
Oops
сообщение Aug 19 2010, 15:14
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 129
Регистрация: 28-08-08
Из: г.Омск
Пользователь №: 39 870



Здравствуйте.

Нужно в сжатые сроки ознакомиться с snmpd демоном, разработать MIB базу а также обработчик этой MIB базы.
Посоветуйте хороший мануал или пример.

Есть ПК с Linux например Ubuntu, snmpd демон установил и настроил, благо по этой теме инфа есть в интернете. А вот как создать свою MIB базу и подключить ее к этому snmpd чтото не нашел. Да еще надо же обработчик MIB базы написать, это некая программа которая будет отслеживать изменения в MIB базе и реагировать на них, либо сама будет вносить изменения в эту MIB базу по необходимости. В общем во всем этом мне нужно разобраться, жду советов, полезных ссылок и мануалов.
Спасибо.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
nvn
сообщение Dec 20 2010, 14:00
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 56
Регистрация: 8-02-05
Пользователь №: 2 486



прошу прощения, но можно и я спрошу?
нужна помощь по NET-SNMP. Собрал snmpd с поддержкой AgentX, запустил моего субагента, он подключается к мастеру и скалярные OID'ы работают.
Сейчас пытаюсь сделать вывод таблицы по принципу data_set таблица тоже заработала, но проблемма в том, что не могу получить первый столбец, вывод идет сразу со второго.
делаю следующее:

init_nstAgentSubagentObject()
{
static oid alarmTable_oid[] = { 1, 1, 2 };
size_t alarmTable_oid_len = OID_LENGTH(alarmTable_oid);
netsnmp_table_data_set *table_set;
netsnmp_table_row *row;

table_set = netsnmp_create_table_data_set("alarmTable");
table_set->table->store_indexes = 1; // пробовал и = 0

netsnmp_table_dataset_add_index(table_set, ASN_UNSIGNED);
netsnmp_table_set_add_default_row(table_set, 2, ASN_OCTET_STR, 0, NULL, 0);
netsnmp_register_table_data_set(netsnmp_create_handler_registration
("alarmTable", alarmTable_handler,
alarmTable_oid, alarmTable_oid_len,
HANDLER_CAN_RWRITE), table_set, NULL);

row = netsnmp_create_table_data_row();
default_num = 1;
netsnmp_table_row_add_index(row, ASN_UNSIGNED, &default_num, sizeof(default_num));
netsnmp_set_row_column(row, 2, ASN_OCTET_STR, "Test1", strlen("Test1"));

netsnmp_table_dataset_add_row(table_set, row);
}

после этого вижу только начиная со второго столбца т.е.
>snmpwalk -v 1 -On -c public 192.168.0.139 1.1.2
.1.1.2.1.2.1 = STRING: "Test1"
а где первый столбец? .1.1.2.1.1.1 = 1 ???? т.е. как в таблице ifTable???

пробовал добавлять
netsnmp_table_set_add_default_row(table_set, 1, ASN_UNSIGNED, 0, NULL, 0);
вообще перестает отвечать на ветку .1.1.2

может кто знает в чем проблема? подскажите пожалуйста

ЗЫ: начал уж думать что data_set не подходит для этого
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 30th August 2025 - 09:07
Рейтинг@Mail.ru


Страница сгенерированна за 0.01398 секунд с 7
ELECTRONIX ©2004-2016