首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么是OID,MIB?用check_snmp检查转帐金额

什么是OID,MIB?用check_snmp检查转帐金额
EN

Unix & Linux用户
提问于 2020-06-03 13:32:46
回答 1查看 5.1K关注 0票数 0

我正在设置snmpd并尝试通过check_snmp进行检查。

snmpwalk -c public -v 2c localhost

代码语言:javascript
复制
iso.3.6.1.2.1.1.1.0 = STRING: "Linux ik1-325-22819 4.15.0-55-generic #60-Ubuntu SMP Tue Jul 2 18:22:20 UTC 2019 x86_64"
iso.3.6.1.2.1.1.2.0 = OID: iso.3.6.1.4.1.8072.3.2.10
iso.3.6.1.2.1.1.3.0 = Timeticks: (45994) 0:07:39.94
iso.3.6.1.2.1.1.4.0 = STRING: "Me "
iso.3.6.1.2.1.1.5.0 = STRING: "ik1-325-22819"
iso.3.6.1.2.1.1.6.0 = STRING: "Sitting on the Dock of the Bay"
iso.3.6.1.2.1.1.7.0 = INTEGER: 72
iso.3.6.1.2.1.1.8.0 = Timeticks: (1) 0:00:00.01
iso.3.6.1.2.1.1.9.1.2.1 = OID: iso.3.6.1.6.3.11.3.1.1
iso.3.6.1.2.1.1.9.1.2.2 = OID: iso.3.6.1.6.3.15.2.1.1
iso.3.6.1.2.1.1.9.1.2.3 = OID: iso.3.6.1.6.3.10.3.1.1
iso.3.6.1.2.1.1.9.1.2.4 = OID: iso.3.6.1.6.3.1
iso.3.6.1.2.1.1.9.1.2.5 = OID: iso.3.6.1.6.3.16.2.2.1
iso.3.6.1.2.1.1.9.1.2.6 = OID: iso.3.6.1.2.1.49
iso.3.6.1.2.1.1.9.1.2.7 = OID: iso.3.6.1.2.1.4
iso.3.6.1.2.1.1.9.1.2.8 = OID: iso.3.6.1.2.1.50
iso.3.6.1.2.1.1.9.1.2.9 = OID: iso.3.6.1.6.3.13.3.1.3
iso.3.6.1.2.1.1.9.1.2.10 = OID: iso.3.6.1.2.1.92
iso.3.6.1.2.1.1.9.1.3.1 = STRING: "The MIB for Message Processing and Dispatching."
iso.3.6.1.2.1.1.9.1.3.2 = STRING: "The management information definitions for the SNMP User-based Security Model."
iso.3.6.1.2.1.1.9.1.3.3 = STRING: "The SNMP Management Architecture MIB."
iso.3.6.1.2.1.1.9.1.3.4 = STRING: "The MIB module for SNMPv2 entities"
iso.3.6.1.2.1.1.9.1.3.5 = STRING: "View-based Access Control Model for SNMP."
iso.3.6.1.2.1.1.9.1.3.6 = STRING: "The MIB module for managing TCP implementations"
iso.3.6.1.2.1.1.9.1.3.7 = STRING: "The MIB module for managing IP and ICMP implementations"
iso.3.6.1.2.1.1.9.1.3.8 = STRING: "The MIB module for managing UDP implementations"
iso.3.6.1.2.1.1.9.1.3.9 = STRING: "The MIB modules for managing SNMP Notification, plus filtering."
iso.3.6.1.2.1.1.9.1.3.10 = STRING: "The MIB module for logging SNMP Notifications."
iso.3.6.1.2.1.1.9.1.4.1 = Timeticks: (1) 0:00:00.01
iso.3.6.1.2.1.1.9.1.4.2 = Timeticks: (1) 0:00:00.01
iso.3.6.1.2.1.1.9.1.4.3 = Timeticks: (1) 0:00:00.01
iso.3.6.1.2.1.1.9.1.4.4 = Timeticks: (1) 0:00:00.01
iso.3.6.1.2.1.1.9.1.4.5 = Timeticks: (1) 0:00:00.01
iso.3.6.1.2.1.1.9.1.4.6 = Timeticks: (1) 0:00:00.01
iso.3.6.1.2.1.1.9.1.4.7 = Timeticks: (1) 0:00:00.01
iso.3.6.1.2.1.1.9.1.4.8 = Timeticks: (1) 0:00:00.01
iso.3.6.1.2.1.1.9.1.4.9 = Timeticks: (1) 0:00:00.01
iso.3.6.1.2.1.1.9.1.4.10 = Timeticks: (1) 0:00:00.01
iso.3.6.1.2.1.2.1.0 = INTEGER: 6
iso.3.6.1.2.1.2.2.1.1.1 = INTEGER: 1
iso.3.6.1.2.1.2.2.1.1.2 = INTEGER: 2
iso.3.6.1.2.1.2.2.1.1.3 = INTEGER: 3
iso.3.6.1.2.1.2.2.1.1.4 = INTEGER: 4
iso.3.6.1.2.1.2.2.1.1.5 = INTEGER: 5
iso.3.6.1.2.1.2.2.1.1.6 = INTEGER: 6
iso.3.6.1.2.1.2.2.1.2.1 = STRING: "lo"
iso.3.6.1.2.1.2.2.1.2.2 = STRING: "Red Hat, Inc. Device 0001"
iso.3.6.1.2.1.2.2.1.2.3 = STRING: "Red Hat, Inc. Device 0001"
iso.3.6.1.2.1.2.2.1.2.4 = STRING: "Red Hat, Inc. Device 0001"
iso.3.6.1.2.1.2.2.1.2.5 = STRING: "docker0"
iso.3.6.1.2.1.2.2.1.2.6 = STRING: "br-6ec47ade44ad"
iso.3.6.1.2.1.2.2.1.3.1 = INTEGER: 24
iso.3.6.1.2.1.2.2.1.3.2 = INTEGER: 6
iso.3.6.1.2.1.2.2.1.3.3 = INTEGER: 6
iso.3.6.1.2.1.2.2.1.3.4 = INTEGER: 6
iso.3.6.1.2.1.2.2.1.3.5 = INTEGER: 6
iso.3.6.1.2.1.2.2.1.3.6 = INTEGER: 6
iso.3.6.1.2.1.2.2.1.4.1 = INTEGER: 65536
iso.3.6.1.2.1.2.2.1.4.2 = INTEGER: 1500
iso.3.6.1.2.1.2.2.1.4.3 = INTEGER: 1500
iso.3.6.1.2.1.2.2.1.4.4 = INTEGER: 1500
iso.3.6.1.2.1.2.2.1.4.5 = INTEGER: 1500
iso.3.6.1.2.1.2.2.1.4.6 = INTEGER: 1500
iso.3.6.1.2.1.2.2.1.5.1 = Gauge32: 10000000
iso.3.6.1.2.1.2.2.1.5.2 = Gauge32: 0
iso.3.6.1.2.1.2.2.1.5.3 = Gauge32: 0
iso.3.6.1.2.1.2.2.1.5.4 = Gauge32: 0
iso.3.6.1.2.1.2.2.1.5.5 = Gauge32: 0
iso.3.6.1.2.1.2.2.1.5.6 = Gauge32: 0
iso.3.6.1.2.1.2.2.1.6.1 = ""
iso.3.6.1.2.1.2.2.1.6.2 = Hex-STRING: 9C A3 BA 01 DF C3 
iso.3.6.1.2.1.2.2.1.6.3 = Hex-STRING: 9C A3 BA 03 66 63 
iso.3.6.1.2.1.2.2.1.6.4 = Hex-STRING: 9C A3 BA 04 ED 03 
iso.3.6.1.2.1.2.2.1.6.5 = Hex-STRING: 02 42 D7 D1 60 44 
iso.3.6.1.2.1.2.2.1.6.6 = Hex-STRING: 02 42 D8 24 17 95 
iso.3.6.1.2.1.2.2.1.7.1 = INTEGER: 1
iso.3.6.1.2.1.2.2.1.7.2 = INTEGER: 1
iso.3.6.1.2.1.2.2.1.7.3 = INTEGER: 2
iso.3.6.1.2.1.2.2.1.7.4 = INTEGER: 2
iso.3.6.1.2.1.2.2.1.7.5 = INTEGER: 1
iso.3.6.1.2.1.2.2.1.7.6 = INTEGER: 1
iso.3.6.1.2.1.2.2.1.8.1 = INTEGER: 1
iso.3.6.1.2.1.2.2.1.8.2 = INTEGER: 1
iso.3.6.1.2.1.2.2.1.8.3 = INTEGER: 2
iso.3.6.1.2.1.2.2.1.8.4 = INTEGER: 2
iso.3.6.1.2.1.2.2.1.8.5 = INTEGER: 2
iso.3.6.1.2.1.2.2.1.8.6 = INTEGER: 2
iso.3.6.1.2.1.2.2.1.9.1 = Timeticks: (0) 0:00:00.00
iso.3.6.1.2.1.2.2.1.9.2 = Timeticks: (0) 0:00:00.00
iso.3.6.1.2.1.2.2.1.9.3 = Timeticks: (0) 0:00:00.00
iso.3.6.1.2.1.2.2.1.9.4 = Timeticks: (0) 0:00:00.00
iso.3.6.1.2.1.2.2.1.9.5 = Timeticks: (0) 0:00:00.00
iso.3.6.1.2.1.2.2.1.9.6 = Timeticks: (0) 0:00:00.00
iso.3.6.1.2.1.2.2.1.10.1 = Counter32: 3214378817
iso.3.6.1.2.1.2.2.1.10.2 = Counter32: 1235162258
iso.3.6.1.2.1.2.2.1.10.3 = Counter32: 0
iso.3.6.1.2.1.2.2.1.10.4 = Counter32: 0
iso.3.6.1.2.1.2.2.1.10.5 = Counter32: 0
iso.3.6.1.2.1.2.2.1.10.6 = Counter32: 286316
iso.3.6.1.2.1.2.2.1.11.1 = Counter32: 135588065
iso.3.6.1.2.1.2.2.1.11.2 = Counter32: 60939410
iso.3.6.1.2.1.2.2.1.11.3 = Counter32: 0
iso.3.6.1.2.1.2.2.1.11.4 = Counter32: 0
iso.3.6.1.2.1.2.2.1.11.5 = Counter32: 0
iso.3.6.1.2.1.2.2.1.11.6 = Counter32: 4466
iso.3.6.1.2.1.2.2.1.12.1 = Counter32: 0
iso.3.6.1.2.1.2.2.1.12.2 = Counter32: 0
iso.3.6.1.2.1.2.2.1.12.3 = Counter32: 0
iso.3.6.1.2.1.2.2.1.12.4 = Counter32: 0
iso.3.6.1.2.1.2.2.1.12.5 = Counter32: 0
iso.3.6.1.2.1.2.2.1.12.6 = Counter32: 0
iso.3.6.1.2.1.2.2.1.13.1 = Counter32: 0
iso.3.6.1.2.1.2.2.1.13.2 = Counter32: 0
iso.3.6.1.2.1.2.2.1.13.3 = Counter32: 0
iso.3.6.1.2.1.2.2.1.13.4 = Counter32: 0
iso.3.6.1.2.1.2.2.1.13.5 = Counter32: 0
iso.3.6.1.2.1.2.2.1.13.6 = Counter32: 0
iso.3.6.1.2.1.2.2.1.14.1 = Counter32: 0
iso.3.6.1.2.1.2.2.1.14.2 = Counter32: 0
iso.3.6.1.2.1.2.2.1.14.3 = Counter32: 0
iso.3.6.1.2.1.2.2.1.14.4 = Counter32: 0
iso.3.6.1.2.1.2.2.1.14.5 = Counter32: 0
iso.3.6.1.2.1.2.2.1.14.6 = Counter32: 0
iso.3.6.1.2.1.2.2.1.15.1 = Counter32: 0
iso.3.6.1.2.1.2.2.1.15.2 = Counter32: 0
iso.3.6.1.2.1.2.2.1.15.3 = Counter32: 0
iso.3.6.1.2.1.2.2.1.15.4 = Counter32: 0
iso.3.6.1.2.1.2.2.1.15.5 = Counter32: 0
iso.3.6.1.2.1.2.2.1.15.6 = Counter32: 0
iso.3.6.1.2.1.2.2.1.16.1 = Counter32: 3214378817
iso.3.6.1.2.1.2.2.1.16.2 = Counter32: 2438196185
iso.3.6.1.2.1.2.2.1.16.3 = Counter32: 0
iso.3.6.1.2.1.2.2.1.16.4 = Counter32: 0
iso.3.6.1.2.1.2.2.1.16.5 = Counter32: 0
.
.
.

然后我试着做check_snmp。

代码语言:javascript
复制
./check_snmp -H localhost -O
No OIDs specified

两者都在同一台主机上。

我怎么才能找到OID?为了check_snmp?

我想知道接口ens3的传输量

但是,老实说,我不知道从哪里开始。

我试过这个。

代码语言:javascript
复制
$ snmpwalk -c public -v 2c localhost | grep ens3

iso.3.6.1.2.1.25.3.2.1.3.262146 = STRING: "network interface ens3"
iso.3.6.1.2.1.31.1.1.1.1.2 = STRING: "ens3"

$ ./check_snmp -H localost -O iso.3.6.1.2.1.31.1.1.1.1.2
No OIDs specified
EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2020-06-04 05:56:23

OID是object id实体。在数字形式中,它们被表示为由点分隔的数字串。它们也有一个符号形式,根据特定的定义将数字映射到关键字。

iso的OID只是1,因为它标识了OID树结构根上的第一个主分支。如果没有相应的符号信息,可以从任何符号形式的OID开始,然后向其添加数字后缀。

这些定义以标准格式存储在MIB文件中。

您的系统显然没有加载标准的MIB文件,或者您的snmpwalk没有配置为使用它们。否则,snmpwalk输出将看起来更像这样:

代码语言:javascript
复制
SNMPv2-MIB::sysDescr.0 = STRING: "Linux ik1-325-22819 4.15.0-55-generic #60-Ubuntu SMP Tue Jul 2 18:22:20 UTC 2019 x86_64"
SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMP-TC::linux
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (45994) 0:07:39.94
SNMPv2-MIB::sysContact.0 = STRING: "Me "
SNMPv2-MIB::sysName.0 = STRING: "ik1-325-22819"
SNMPv2-MIB::sysLocation.0 = STRING: "Sitting on the Dock of the Bay"
SNMPv2-MIB::sysServices.0 = INTEGER: 72
SNMPv2-MIB::sysORLastChange.0 = Timeticks: (1) 0:00:00.01

..。诸若此类。你不觉得这样能提供更多的信息吗?

MIB文件还定义了OID的名称以外的其他内容:它还包含对各种值的含义的描述,并定义了组成信息表的OID组。

在OID中,iso.3.6.1.2.1.31.1.1开始了一个网络接口统计表,称为IF-MIB::ifXTable。表单iso.3.6.1.2.1.31.1.1.1.1.N中的OID构成表的第一列,标识每个接口的名称。通过该接口向内传输的字节数位于表的另一列中,表中的OID分别为iso.3.6.1.2.1.31.1.1.1.6.N格式,其中N对应于接口的名称。通过接口向外传输的字节数在另一列中,其中包含表单iso.3.6.1.2.1.31.1.1.1.10.N的OID。

从您的命令中,我可以看到您的N接口的SNMP行号(SNMP行号)是2。记住这一点,稍后将使用它。

在加载和使用MIB之后,您将能够使用snmptable命令一次以有意义的方式查看此类表。例如,要查看此接口统计信息表,可以运行:

代码语言:javascript
复制
snmptable -c public -v 2c localhost IF-MIB::ifXTable

并将其显示在表格中。(这是一张相当宽的桌子,所以如果你想试试这个,先把你的终端窗口拉得很宽。)

只有定义相应表的MIB文件可用时,snmptable命令才能工作。

在Debian上,也可能在Ubuntu上,您可以使用sudo apt install snmp-mibs-downloader,它可以从因特网上权威的标准源下载大量的标准MIB,对它们应用一些错误,并将它们存储到/var/lib/snmp/mibs/中。在安装包时,它可能会自动下载它们,或者您可能需要使用sudo download-mibs命令。

要开始使用下载的MIB,您可能需要注释掉/etc/snmp/snmp.conf中的一行:

代码语言:javascript
复制
# As the snmp packages come without MIB files due to license reasons, loading
# of MIBs is disabled by default. If you added the MIBs you can reenable
# loading them by commenting out the following line.
mibs :

只需注释掉最后一行或将其替换为mibs ALL,或用单行mibs ALL创建~/.snmp/snmp.conf,您就可以自动使用下载的MIB。

也有特定于供应商的MIB,它可以使用特定于特定制造和模型的设备的更多信息来描述特定于供应商的OID。通常,您可以从供应商的支持下载站点获得这些信息,通常作为特定于供应商的管理包的一部分。

对于check_snmp,您需要使用-o (小写)选项指定OID。例如,要监视ens3网络接口上入站传输的数据量,应该运行:

代码语言:javascript
复制
./check_snmp -H localhost -C public -P 2c -O -o iso.3.6.1.2.1.31.1.1.1.6.2

或者如果安装了MIB:

代码语言:javascript
复制
./check_snmp -H localhost -C public -P 2c -O -o IF-MIB::ifHCInOctets.2

对于向外传送的数据:

代码语言:javascript
复制
./check_snmp -H localhost -C public -P 2c -O -o iso.3.6.1.2.1.31.1.1.1.10.2

或与MIB:

代码语言:javascript
复制
./check_snmp -H localhost -C public -P 2c -O -o IF-MIB::ifHCOutOctets.2
票数 2
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/590636

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档