Networking 如何决定在SNMP中使用哪个ifDescr索引?

Networking 如何决定在SNMP中使用哪个ifDescr索引?,networking,snmp,bandwidth,Networking,Snmp,Bandwidth,我想监控许多设备的带宽利用率。但是,在SNMP中,每台计算机的以太网卡索引是不同的。例如,在localhost中,以下是值: 已向本地主机发送GET请求:161 ifDescr.1软件环回接口1 ifDescr.2 WAN微型端口 (SSTP) ifDescr.3广域网微型端口(L2TP)ifDescr.4广域网微型端口(PPTP) ifDescr.5广域网微型端口(PPPOE) ifDescr.6广域网微型端口(IPv6) ifDescr.7广域网微型端口(网络监视器) ifDescr.8广域

我想监控许多设备的带宽利用率。但是,在SNMP中,每台计算机的以太网卡索引是不同的。例如,在localhost中,以下是值:

已向本地主机发送GET请求:161

ifDescr.1软件环回接口1 ifDescr.2 WAN微型端口 (SSTP)

ifDescr.3广域网微型端口(L2TP)ifDescr.4广域网微型端口(PPTP)

ifDescr.5广域网微型端口(PPPOE)

ifDescr.6广域网微型端口(IPv6)

ifDescr.7广域网微型端口(网络监视器)

ifDescr.8广域网微型端口(IP)

ifDescr.9 RAS异步适配器

ifDescr.10广域网微型端口(IKEv2)

ifDescr.11微软Teredo T?nel Ba§da?T?r?c?s

ifDescr.12

IFR.13

ifDescr.14

ifDescr.15 Realtek PCIe GBE 家庭控制器

ifDescr.16英特尔(R)迅驰(R)无线-N 2230

ifDescr.17 Microsoft虚拟WiFi微型端口适配器#9

ifDescr.18蓝牙Ayg?t?(Ki?isel Alan A§?)

ifDescr.19蓝牙Ayg?t?(RFCOMM协议?TDI)

ifDescr.20 Microsoft虚拟WiFi微型端口适配器#10

ifDescr.21 Realtek PCIe GBE系列控制器QoS数据包调度器-0 000

ifDescr.22 Realtek PCIe GBE系列控制器 过滤器-0000

ifDescr.23广域网微型端口(IPv6)-QoS数据包调度程序-0000

ifDescr.24广域网微型端口(IP)-QoS数据包调度程序-0000

ifDescr.25 WAN微型端口(网络监视器)-QoS数据包调度器-0000

传入带宽:

已向本地主机发送GET请求:161

IFinoctes.10

ifInOctets.20

IFinoctes.30

ifInOctets.40

ifInOctets.50

ifInOctets.6 0

iFinoctes.70

ifInOctets.80

ifInOctets.90

ifInOctets.10 0

ifInOctets.11 0

ifInOctets.12 0

ifInOctets.13 0

ifInOctets.14 0

ifInOctets.15 54112558

ifInOctets.16 0

ifInOctets.17 0

ifInOctets.18 0

ifInOctets.19 0

ifInOctets.20 0

IFINOCETTS.21 54112558

IFINOCETTS.22 54112558

ifInOctets.23 0

ifInOctets.24 0

ifInOctets.25 0


所以,我需要查看索引15、21和22。然而,在其他计算机中,索引会有所不同,卡名也会有所不同(我的是Realtek PCIe GBE系列控制器)。如何找出应该使用哪个索引?

接口名称的绑定是由操作系统完成的,因此很大程度上取决于如何启动接口,然后由SNMP代理发现/枚举接口。如果您感兴趣的是一个特定的接口(可能是通过ifDescr的标识符),那么您可以通过拉动ifDescr列,然后获取索引来进行查找。例如,如果兴趣在

“Realtek PCIe GBE系列控制器”

然后就是ifIndex 15,您应该在特定主机上查询iFinotets.15。在另一台主机上,索引可能是其他内容。例如,在我的MAC上,我通常使用“en0”作为接口(在我的Linux服务器上,它可能类似于“eth0”),并使用下面的IfIndex 5获取ifDescr值

IF-MIB::ifDescr.5=字符串:en1


因此,您应该计划进行相应的调整。

谢谢!但我需要知道,有没有一种方法可以在不知道以太网卡名称的情况下监控许多计算机的带宽利用率。我的意思是,为了做到这一点,我们是否需要提供名称或首先使用ifDescr查询,然后手动确定它在哪个索引中?不,您不需要知道名称,因为根据ifDescr附带的控制器类型和驱动程序,名称会有所不同。考虑到需要跨多个设备监控带宽利用率,我将查询操作/管理状态以及输入/输出八位字节,并仅计算操作/管理启动的接口。另一个可能更感兴趣的是这些接口是如何相互关联的(物理到逻辑),这样你就可以适当地聚合和报告,但是这是你想考虑的下一个细节,非常感谢。这些信息对我真的很有帮助。我还有最后一个问题。当我查询iFinoctet时,我在不同的索引中得到了3个相同的数字(54112558)(我在上面给出的值),它们的描述是:Realtek PCIe GBE系列控制器、Realtek PCIe GBE系列控制器QoS数据包调度器-0 000和Realtek PCIe GBE系列控制器WFP轻型过滤器-0000。当我计算传入带宽时,我会将它们相加还是只取其中一个?这是我在上一次评论中提到的最后一点(下一级细节)一些接口可能相互关联,这将需要了解各种接口之间的关系,而这些关系将超出MIB walk of interfaces表。因此,盲聚合将提供不正确的数据。您所能做的最好是报告这三种数据。但是,如果您能够找出它们之间的关系,那么它将对您的最终用户更有帮助:-)好的,我将检查它们之间的关系。非常感谢您的关注和所有这些有用的答案!:)