Устранение неполадок SNMP MIB с помощью snmpwalk
У меня есть файл MIB от поставщика для опроса определенного (и в данном случае критически важного для бизнеса) программного обеспечения.
Когда я делаю snmptable
по запросу я получаю MAGIC-MIB::queryRtTable: No entries
в качестве ответа, но когда я смотрю с Wireshark, я вижу Wireshark, отправляющий ответы.
Вот сервер, отправляющий ответ в wireshark:
Будучи неосведомленным, когда дело доходит до строительства MIB, я опубликовал то, что, я надеюсь, является соответствующей частью MIB ниже:
MAGIC-MIB DEFINITIONS ::= BEGIN
IMPORTS
enterprises
FROM RFC1155-SMI
OBJECT-TYPE
FROM RFC-1212
DisplayString
FROM RFC1213-MIB;
magic OBJECT IDENTIFIER ::= {enterprises 15687}
manage OBJECT IDENTIFIER ::= {magic 2}
query OBJECT IDENTIFIER ::= {magic 3}
queryRtTable OBJECT-TYPE
SYNTAX SEQUENCE OF QueryRtEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"The list of loaded enterprise servers"
::= { query 3 }
queryRtEntry OBJECT-TYPE
SYNTAX QueryRtEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"The enterprise server entry"
INDEX { entServerEntryIndex }
::= { queryRtTable 1 }
QueryRtEntry ::=
SEQUENCE {
entServerEntryIndex
INTEGER,
entServerHost
DisplayString,
entServerPort
INTEGER,
openedApplication
DisplayString ,
entPriority
INTEGER,
runningThreads
INTEGER,
peakThreads
INTEGER,
runningContexts
INTEGER,
peakContexts
INTEGER,
requestsServed
INTEGER,
executionErrors
INTEGER
}
entServerEntryIndex OBJECT-TYPE
SYNTAX INTEGER (1..100000)
ACCESS read-only
STATUS mandatory
DESCRIPTION
"A unique identifier for an enterprise server"
::= { queryRtEntry 1 }
entServerHost OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The enterprise's host name"
::= { queryRtEntry 2 }
entServerPort OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The enterprise server's port number"
::= { queryRtEntry 3 }
openedApplication OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The application that is running on the enterprise server."
::= { queryRtEntry 4 }
entPriority OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The priority of the enterprise server"
::= { queryRtEntry 5 }
runningThreads OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The enterprise server's running thread counter"
::= { queryRtEntry 6 }
peakThreads OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The enterprise server's peak thread counter"
::= { queryRtEntry 7 }
runningContexts OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The enterprise server's running context counter"
::= { queryRtEntry 8 }
peakContexts OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The enterprise server's peak context counter"
::= { queryRtEntry 9 }
requestsServed OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of requests served"
::= { queryRtEntry 10 }
executionErrors OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of execution errors"
::= { queryRtEntry 11 }
Любые идеи, где я должен искать, чтобы узнать, почему snmptable
не возвращает никаких данных, даже если данные отправляются? Я предполагаю, что это ошибка в MIB, но я не знаю, с чего начать.
1 ответ
Оказывается, это ошибка в SNMP-агенте программного обеспечения, номеру которого вы запрашиваете OID, он всегда возвращает один и тот же. Это означает, что если это OID, который вы хотите собрать, то отлично, если вам нужны другие данные, слишком плохо.