snmpwalk, snmpgetの引数

snmpwalkを実行するときの表示に関わる引数をまとめてみた。

net-snmp 5.1.2で確認しました。

標準状態
$ snmpwalk aqua ifDescr
IF-MIB::ifDescr.1 = STRING: lo
IF-MIB::ifDescr.2 = STRING: eth0
IF-MIB::ifDescr.3 = STRING: eth1
IF-MIB::ifDescr.4 = STRING: sit0
-Of とすると、OIDが省略されない長い形式で表示されます。
$ snmpwalk -Of aqua ifDescr
.iso.org.dod.internet.mgmt.mib-2.interfaces.ifTable.ifEntry.ifDescr.1 = STRING: lo
.iso.org.dod.internet.mgmt.mib-2.interfaces.ifTable.ifEntry.ifDescr.2 = STRING: eth0
.iso.org.dod.internet.mgmt.mib-2.interfaces.ifTable.ifEntry.ifDescr.3 = STRING: eth1
.iso.org.dod.internet.mgmt.mib-2.interfaces.ifTable.ifEntry.ifDescr.4 = STRING: sit0
-On とすると、OIDが全て数字になります。
$ snmpwalk -On aqua ifDescr
.1.3.6.1.2.1.2.2.1.2.1 = STRING: lo
.1.3.6.1.2.1.2.2.1.2.2 = STRING: eth0
.1.3.6.1.2.1.2.2.1.2.3 = STRING: eth1
.1.3.6.1.2.1.2.2.1.2.4 = STRING: sit0
-Os とすると、OIDが最後の部分だけの表示になります。
$ snmpwalk -Os aqua ifDescr
ifDescr.1 = STRING: lo
ifDescr.2 = STRING: eth0
ifDescr.3 = STRING: eth1
ifDescr.4 = STRING: sit0
-Ov とすると、取得した値のみ表示します。

(STRING: というのは、取得したデータのタイプを表しています)

$ snmpwalk -Ov aqua ifDescr
STRING: lo
STRING: eth0
STRING: eth1
STRING: sit0
-Oq とすると、= と取得データのタイプ表示を消します。-OQ とすると、データのタイプ表示のみ消します。
$ snmpwalk -Oq aqua ifDescr
IF-MIB::ifDescr.1 lo
IF-MIB::ifDescr.2 eth0
IF-MIB::ifDescr.3 eth1
IF-MIB::ifDescr.4 sit0

$ snmpwalk -OQ aqua ifDescr
IF-MIB::ifDescr.1 = lo
IF-MIB::ifDescr.2 = eth0
IF-MIB::ifDescr.3 = eth1
IF-MIB::ifDescr.4 = sit0


これらの引数は組み合わせることが可能で、-Ovq のようにすると、下記のように、取得した値のみ表示することができます。

$ snmpwalk -Ovq aqua ifDescr
lo
eth0
eth1
sit0