嵌入式设备上的 SNMP 代理,此 OID 的此代理上没有可用的此类对象

网络工程 路由器 snmp linux 文档
2021-08-03 02:09:20

嵌入式设备上的 SNMP 代理。当我为特定的私有企业 OID 对象查询 SNMP 设备时,它显示“此 OID 的此代理上没有可用的此类对象”。

snmpget -v2c -c 公共 10.xxx .1.3.6.1.4.1.8595..

这些对象包含在 MTA 配置文件中。所以我的假设是这些私有 OID 对象存在于系统中,但它们可能无法使用默认的“公共”社区字符串查看,或者它们是通过 SNMP 版本v3c访问显示的,或者其他一些原因。所以首先我应该检查该设备内置的 SNMP 代理代码,它是否真的包含私有 MIB?如果它包含,那么它应该可以通过 SNMP 查询访问,是否正确?或者即使它存在于 SNMP 代理上,也可能无法通过 SNMP 查询访问?

2个回答

每当我遇到找不到 OID 的问题时,我总是使用该snmpwalk命令,以便查看设备响应的内容:

snmpwalk -v 2c -c public 10.x.x.x 

该问题可能与授权有关。

许多 SNMP 代理,例如 Linux CentOS snmpd 守护程序,都具有视图对象,以便向 OID 树的分支授予权限。

命名视图可以代表整个 OID 树(例如 "all" .1)或某些子树(例如 "systemview" .1.3.6.1.2.1.1)。

一旦命名视图就位,就可以定义规则以允许使用 SNMP v1、v2c 和 v3 之间的安全模型进行某种访问(读、读/写)。

如果该设备运行 linux 内核和 net-snmpd 代理,则访问整个 OID 树可能需要另一个安全模型(例如 v3),或者社区和视图之间的访问列表定义。