В этой теме описаны форматы допустимых объектов MIB.
В следующих разделах приведены допустимые форматы объектов MIB SNMP.
Объект v2 TEXTUAL-CONVENTION (TC) имеет следующий синтаксис, где за именем объекта идет строка ::= и затем TEXTUAL-CONVENTION. Далее идут разделы, добавленные при помощи определения SYNTAX.
DisplayString ::= TEXTUAL-CONVENTION
DISPLAY-HINT "255a"
STATUS current
DESCRIPTION "Представляет собой текстовую информацию, взятую из набора символов NVT ASCII, как определено на страницах 4, 10-11 of RFC 854. Кратко говоря, RFC 854 задает набор символов NVT ASCII так: - используются символы с кодами от 0 до 127 (десятичными) - графические символы (32-126) интерпретируются как символы US ASCII - NUL, LF, CR, BEL, BS, HT, VT и FF имеют специальные значения, определенные в RFC 854 - у остальных 25 кодов нет стандартной интерпретации - последовательность 'CR LF' означает новую строку - последовательность 'CR NUL' означает возврат каретки - 'LF' без предшествующего 'CR' означает перемещение в тот же столбец - последовательность 'CR x' с любым x, кроме LF или NUL, недопустима. (Обратите внимание на то, что это значит, что строка может оканчиваться на 'CR LF' или на 'CR NUL', но не на CR.) Любой объект с таким синтаксисом не может содержать более 255 символов."
SYNTAX OCTET STRING (SIZE (0..255))
TC v1 состоит из имени объекта, за которым следует запись ::=, а затем добавляются допустимые определения SYNTAX. Примеры:
DisplayString ::= OCTET STRING
Оба эти объекта существуют вне дерева MIB и, таким образом, не являются объектами в MIB. Они представляют формат, для которого можно определять синтаксис. У них нет OID. Их можно посмотреть в представлении Модули MIB, в отдельном фильтре, щелкнув по выпадающему списку Вид и выбрав Textual-Conventions.
Объект TRAP-TYPE допустим для модулей MIB v1. Эти объекты не были первоначально определены для чистого встраивания в дерево MIB. У них нет OID, но вместо этого есть ID предприятия и номер прерывания, например:
newRoot TRAP-TYPE
ENTERPRISE dot1dBridge
DESCRIPTION "Прерывание newRoot указывает, что отправивший его агент становится новым корнем
связующего дерева; прерывание посылается мостом вскоре после его выбора в качестве
нового
нового корня, например, после истечения срока таймера изменения топологии вслед за его
выбором."
::= 1
Прерывание v1 начинается с имени объекта, за которым следует ключевое слово TRAP-TYPE. За ним следует число разделов и, наконец, запись ::= и число. Фигурные скобки ({}) никогда не используются перед числом и после числа.
Объект MACRO определяет формат других объектов MIB. Определения MACRO всегда начинаются с типа объекта, за которым следует ключевое слово MACRO, а затем запись ::=. Остальная часть определения макроса заключена в теги BEGIN и END, например:
OBJECT-TYPE MACRO ::=
BEGIN
TYPE NOTATION ::= "SYNTAX"
type (TYPE ObjectSyntax) "ACCESS" Access "STATUS" Status VALUE NOTATION ::= value
(VALUE ObjectName) Access ::= "read-only" | "read-write" | "write-only" | "not-accessible"
Status ::= "mandatory" | "optional" | "obsolete"
END
snmpInPkts OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "Общее число сообщений, доставленных объекту SNMP транспортной службой." ::= { snmp 1 }
Эти объекты начинаются с имени объекта, которое должно начинаться со строчной буквы. Далее следует ключевое слово, указывающее тип объекта. За этим ключевым словом следуют, если есть, все дополнительные разделы, затем запись ::= и, в конце формата, список предков в фигурных скобках ({}). Предки в фигурных скобках ({}) могут иметь один из двух форматов. В первом, показанном выше, формат - это имя объекта, за которым следует номер. Имя объекта - это имя непосредственного родителя данного объекта, а номер - это номер узла данного объекта под родительским узлом.
internet OBJECT IDENTIFIER ::= { iso org(3) dod(6) 1 }
В этом примере список начинается с известного объекта (в данном случае iso - корень дерева) и продолжается заданием имен объектов и номеров узла для всех последующих поколений, org(3) и dod(6), пока не доходит до отдельного номера (1), относящегося к данному объекту. Обратите внимание на то, что пробелы между именами объектов и номерами не допускаются.