snmpset中的NoAccess错误

时间:2009-10-13 12:33:08

标签: snmp

我有一个具有读写权限的MIB对象。 MIB部分如下所示:

EnableHalt OBJECT-TYPE
  SYNTAX Integer32
  MAX-ACCESS read-write
  STATUS current
  DESCRIPTION "implemented in NetSnmpcodsMr.c file."
  DEFVAL { 0 }
::= { Scalars 4 }

当我对这个物体做一套时,我得到:

$ sudo snmpset -v 2c -c public localhost 1.3.6.1.4.1.8072.2.2.4.0 i 1
Error in packet.
Reason: noAccess
Failed object: NET-SNMP-MIB::netSnmp.2.2.4.0

当我做的时候:

$ snmpget -v 2c -c public localhost 1.3.6.1.4.1.8072.2.2.4.0
NET-SNMP-MIB::netSnmp.2.2.4.0 = INTEGER: 1

一切都很好!

在snmpd.conf中我添加了一行:

rwcommunity public localhost

仍然没有访问问题。我在Ubuntu上使用net snmp 5.4.2.1

我做错了什么?请建议谢谢吉尔

5 个答案:

答案 0 :(得分:6)

你提出这个问题已经九个月了,但是如果它有用的话......

您的社区字符串是否正确?您将其指定为“public”,这是默认的只读社区字符串。也许它应该是“private”,而不是默认的读写社区字符串。

答案 1 :(得分:1)

吉尔,

如果该对象是只读的,那么您可能会收到notWritable而不是noAccess。

http://www.tcpipguide.com/free/t_SNMPVersion2SNMPv2MessageFormats-5.htm

所以我认为它仍然是Net-SNMP配置问题,您可以发布到Net-SNMP邮件列表或查看存档,

http://www.net-snmp.org/support/contacts.html

李克强

http://sharpsnmplib.codeplex.com

答案 2 :(得分:1)

尝试:

snmpget -v 2c -c public localhost 1.3.6.1.4.1.8072.2.2.4.0 NET-SNMP-MIB::netSnmp.2.2.4.0

答案 3 :(得分:0)

修改snmpd.conf文件,在文件末尾添加以下行。提供写入权限。

rwcommunity public

答案 4 :(得分:0)

noAccess(与notWritable相对)可能是由snmpd.conf中的VACM视图配置引起的。查看 com2sec 视图访问指令。它们分别将社区字符串和源地址/子网映射到安全名称;添加安全名称作为VACM组的成员;将OID子树定义为命名视图;最后指出一组给定的其他参数的访问级别以及安全模型和安全级别。如果获取返回noError但设置返回noAccess,那么很可能其中一个指令已将您的社区字符串或您的IP地址配置为只读访问,否则将成为读写变量。