Недавно я изменил свой собственный файл MIB, включив в него таблицы, а не только скаляры, он проверяет, я могу создать субагент и т. д., но если я попытаюсь его прочитать, в нем не будет записей:
snmptable -v1 -c public hostname:10161 myMibName::myTable
myMibName::myTable: No entries
Что ж, я не добавлял строки по умолчанию/примеры в эту таблицу в своем коде агента.
Если я пытаюсь установить некоторые значения таблицы с помощью snmpset, подобно тому, как я делал это на скалярах, это всегда терпит неудачу, поэтому для таблицы требуется собственный синтаксис.
Как я могу добавить строку в таблицу с помощью snmpset или аналогичного?
Например, примерная таблица может выглядеть так же просто, как эта, где «myString» — это индекс:
MyTableEntrySequence::= SEQUENCE {
myString
OCTET STRING,
test1
Integer32,
test2
Integer32
}
РЕДАКТИРОВАТЬ: я не использовал RowStatus в своей таблице. Нужно ли использовать RowStatus, чтобы иметь возможность добавлять новые строки?
EDIT2: я скомпилировал агент data_set.c из образцов net-snmp, который заполняет образец таблицы некоторыми данными и может запрашивать его содержимое с помощью snmptable:
snmpwalk -v 1 -c public hostname:10161 netSnmpIETFWGTable
NET-SNMP-EXAMPLES-MIB::nsIETFWGChair1."snmpv3" = STRING: "Russ Mundy"
NET-SNMP-EXAMPLES-MIB::nsIETFWGChair2."snmpv3" = STRING: "David Harrington"