SNMP 必備工具 :snmptranslate


NAME

snmptranslate - translate MIB OID names between numeric and textual forms
# 註釋 :snmptranslate 命令可以在 MIB OID 在數字和文字名稱之間進行轉換

SYNOPSIS

snmptranslate [OPTIONS] OID [OID]...
# 註釋 :snmptranslate 命令的格式是 snmptranslate [options] OID [oid]
# 註釋 :從上面的格式可以看出,snmptranslate 一次可以轉換多個 OID

DESCRIPTION

snmptranslate is an application that translates one or more SNMP object identifier values from their symbolic (textual) forms into their numerical forms (or vice versa).

OID is either a numeric or textual object identifier.

# 註釋 :snmptranslate 是一個將一個或者多個 SNMP OID 從文字名稱格式轉換爲數字格式的程序

# [oid] 可以是數字格式或者文字格式。

# 注意!snmptranslate 可以直接將數字格式的 oid 轉換爲名稱格式,

# 但要把名稱格式的 oid 轉換爲數字格式的 oid ,需要 -I 選項的配合。(參考 snmpcmd 和最後部分的例子)


OPTIONS

-D TOKEN[,...]
Turn on debugging output for the given TOKEN(s). Try ALL for extremely verbose output.
-h
Display a brief usage message and then exit.

-m MIBLIST

Specifies a colon separated list of MIB modules to load for this application. This overrides the environment variable MIBS.
The special keyword ALL is used to specify all modules in all directories when searching for MIB files. Every file whose name does not begin with "." will be parsed as if it were a MIB file.
-M DIRLIST

Specifies a colon separated list of directories to search for MIBs. This overrides the environment variable MIBDIRS.



-T TRANSOPTS


Provides control over the translation of the OID values. The following TRANSOPTS are available:


# 註釋 :-T 選項用於控制轉換的輸出


-Td
Print full details of the specified OID.
# 註釋 :-Td 表示輸出該對象的詳細定義,也就是在 MIB 中的定義,包括文字名稱、所屬 MIB、類型、狀態、讀寫權限、描述信息,數字格式的 OID



-Tp
Print a graphical tree, rooted at the specified OID.

# 註釋 :-Tp 用於打印從指定 OID 開始一直到該 OID 所屬的 MIB 子樹末端的樹型結構信息
# 該選項很有用,如果要知道某個 MIB 或者某個表有什麼內容,可以該選項

-Ta
Dump the loaded MIB in a trivial form.
# 註釋 :-Ta 表示導出所有已經加載的 MIB 的數據,每個對象一行
# 默認情況下是導出所有已經加載的對象。
# 如果只想導出某個 MIB ,可以使用如 snmptranslate -Ta -M MTA-MIB 這樣就只導出 MTA-MIB 下的信息
# 註釋 :該選項其實和 -Tp 很像,只不過 -Tp 是樹型結構的形式,而 -Ta 是一行一行的格式。
# 而且 -Tp 後面可以加 -m 或者某個 oid ,但 -Ta 後面加 <oid> 沒有用

-Tl

Dump a labeled form of all objects.
# 註釋 :-Tl 導出所有已經加載的 MIB 的對象,並且輸出完整的 oid 路徑,也是很有用的一個選項。
# 和 -Ta 相比,-Ta 只輸出對象名,類型,值,而沒有 OID 。而 -Tl 則除了這些外,還輸出了完整的文字格式 OID 和 數字格式的 oid

-To

Dump a numeric form of all objects.
# 註釋 :-To 則是導出已經加載的所有 MIB 的數字格式的 oid ,不含值和類型,僅僅有 oid 而已

-Ts

Dump a symbolic form of all objects.
# 註釋 : -Ts 和 -To 相反,只輸出文字格式的 OID 名稱而已
# 以上兩個選項,如果在只想知道某個 MIB 下有什麼內容,而不關心具體的值時比較有用

-Tt
Dump a tree form of the loaded MIBs (mostly useful for debugging).
# 註釋 :-Tt 和 -Tp 比較像,但相比 -Tp 來說不夠清楚

-Tz
Dump a numeric and labeled form of all objects (compatible with MIB2SCHEMA format).
# 註釋 ;-Tz 同時導出已經加載的 MIB 的所有對象的文字格式和數字格式的 OID
# 這也是一個比較有用的選項。

-V
Display version information for the application and then exit.
# 註釋 :-V 選項顯示版本信息並退出

-w WIDTH
Specifies the width of -Tp and -Td output. The default is very large.
# 註釋 :-w 限制 -Tp 和 -Td 輸出的最大寬度

In addition to the above options, snmptranslate takes the OID input (-I), MIB parsing (-M) and OID output (-O) options described in the INPUT OPTIONS, MIB PARSING OPTIONS and OUTPUT OPTIONS sections of the snmpcmd(1) manual page.

EXAMPLES
*
snmptranslate -On -IR sysDescr will translate "sysDescr" to a more qualified form:
system.sysDescr
# 註釋 :如果要使 snmptranslate 把 symbol 格式的oid 轉換爲 numberic 格式的 oid ,需要使用 -IR 和 -On
# -IR 允許“隨機”訪問 MIB ,由 snmp 從 mib 庫中查找和所給出的對象名匹配的 oid ,所以上面的例子可以直接寫 sysDescr ,而不用寫全路徑
# 至於 -On 是輸出數字格式的 oid ,這樣就實現了把 symbol 格式的 oid 轉換爲 numberic 格式的 oid
*
snmptranslate -Onf -IR sysDescr will translate "sysDecr" to:
.iso.org.dod.internet.mgmt.mib-2.system.sysDescr
# 註釋 :如果只是想找出 sysDescr 的 symbol 格式的 oid ,用 -Of
*
snmptranslate -Td -OS system.sysDescr will translate "sysDecr" into:
SNMPv2-MIB::sysDescr
sysDescr OBJECT-TYPE
  -- FROM SNMPv2-MIB
  -- TEXTUAL CONVENTION DisplayString
  SYNTAX OCTET STRING (0..255)
  DISPLAY-HINT "255a"
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION "A textual description of the entity. This
               value should include the full name and
               version identification of the system's
               hardware type, software operating-system,
               and networking software."
::= { iso(1) org(3) dod(6) internet(1) mgmt(2) mib-2(1) system(1) 1 }
*
snmptranslate -Tp -OS system will print the following tree:
+--system(1)
   |
   +-- -R-- String    sysDescr(1)
   |        Textual Convention: DisplayString
   |        Size: 0..255
   +-- -R-- ObjID     sysObjectID(2)
   +-- -R-- TimeTicks sysUpTime(3)
   +-- -RW- String    sysContact(4)
   |        Textual Convention: DisplayString
   |        Size: 0..255
   +-- -RW- String    sysName(5)
   |        Textual Convention: DisplayString
   |        Size: 0..255
   +-- -RW- String    sysLocation(6)
   |        Textual Convention: DisplayString
   |        Size: 0..255
   +-- -R-- Integer   sysServices(7)
   +-- -R-- TimeTicks sysORLastChange(8)
   |        Textual Convention: TimeStamp
   |
   +--sysORTable(9)
      |
      +--sysOREntry(1)
         |
         +-- ---- Integer   sysORIndex(1)
         +-- -R-- ObjID     sysORID(2)
         +-- -R-- String    sysORDescr(3)
         |        Textual Convention: DisplayString
         |        Size: 0..255
         +-- -R-- TimeTicks sysORUpTime(4)
                  Textual Convention: TimeStamp
*
snmptranslate -Ta | head will produce the following dump:
dump DEFINITIONS ::= BEGIN
org ::= { iso 3 }
dod ::= { org 6 }
internet ::= { dod 1 }
directory ::= { internet 1 }
mgmt ::= { internet 2 }
experimental ::= { internet 3 }
private ::= { internet 4 }
security ::= { internet 5 }
snmpV2 ::= { internet 6 }
*
snmptranslate -Tl | head will produce the following dump:
.iso(1).org(3)
.iso(1).org(3).dod(6)
.iso(1).org(3).dod(6).internet(1)
.iso(1).org(3).dod(6).internet(1).directory(1)
.iso(1).org(3).dod(6).internet(1).mgmt(2)
.iso(1).org(3).dod(6).internet(1).mgmt(2).mib-2(1)
.iso(1).org(3).dod(6).internet(1).mgmt(2).mib-2(1).system(1)
.iso(1).org(3).dod(6).internet(1).mgmt(2).mib-2(1).system(1).sysDescr(1)
.iso(1).org(3).dod(6).internet(1).mgmt(2).mib-2(1).system(1).sysObjectID(2)
.iso(1).org(3).dod(6).internet(1).mgmt(2).mib-2(1).system(1).sysUpTime(3)
*
snmptranslate -To | head will produce the following dump
.1.3
.1.3.6
.1.3.6.1
.1.3.6.1.1
.1.3.6.1.2
.1.3.6.1.2.1
.1.3.6.1.2.1.1
.1.3.6.1.2.1.1.1
.1.3.6.1.2.1.1.2
.1.3.6.1.2.1.1.3
*
snmptranslate -Ts | head will produce the following dump
.iso.org
.iso.org.dod
.iso.org.dod.internet
.iso.org.dod.internet.directory
.iso.org.dod.internet.mgmt
.iso.org.dod.internet.mgmt.mib-2
.iso.org.dod.internet.mgmt.mib-2.system
.iso.org.dod.internet.mgmt.mib-2.system.sysDescr
.iso.org.dod.internet.mgmt.mib-2.system.sysObjectID
.iso.org.dod.internet.mgmt.mib-2.system.sysUpTime
*
snmptranslate -Tt | head will produce the following dump
  org(3) type=0
    dod(6) type=0
      internet(1) type=0
        directory(1) type=0
        mgmt(2) type=0
          mib-2(1) type=0
            system(1) type=0
              sysDescr(1) type=2 tc=4 hint=255a
              sysObjectID(2) type=1
              sysUpTime(3) type=8

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章