最近在Net-SNMP邮件列表上询问就像赢得彩票一样,即永远不会发生。
我需要知道如何使用snmpset为命令标量设置多个参数值吗?
我已经将命令实现为简单的标量,但是最近我想也许我需要将它们实现为表,因为它们可以具有多个参数。
使用snmpset设置/触发这样的命令时,选择是没有参数,一个参数还是多个参数。
给定以下示例表的MIB。可以说这是我的命令之一。
显然,SMIv2不再允许只写,因此我使用了不可访问。 snmpget不能访问这些命令。
netSnmpHostsTable OBJECT-TYPE
SYNTAX SEQUENCE OF NetSnmpHostsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An example table that implements a wrapper around the
/etc/hosts file on a machine using the iterator helper API."
::= { netSnmpExampleTables 2 }
netSnmpHostsEntry OBJECT-TYPE
SYNTAX NetSnmpHostsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A host name mapped to an ip address"
INDEX { netSnmpHostName }
::= { netSnmpHostsTable 1 }
NetSnmpHostsEntry ::= SEQUENCE {
netSnmpHostName OCTET STRING,
netSnmpHostAddressType OCTET STRING,
netSnmpHostAddress OCTET STRING
}
netSnmpHostName OBJECT-TYPE
SYNTAX OCTET STRING (SIZE(0..64))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A host name that exists in the /etc/hosts (unix) file."
::= { netSnmpHostsEntry 1 }
netSnmpHostAddressType OBJECT-TYPE
SYNTAX OCTET STRING (SIZE(0..64))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The address type of then given host."
::= { netSnmpHostsEntry 2 }
netSnmpHostAddress OBJECT-TYPE
SYNTAX OCTET STRING (SIZE(0..64))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The address of then given host."
::= { netSnmpHostsEntry 3 }
不带参数的 call
snmpset netSnmpHostsTable.0
或使用3个参数调用
snmpset netSnmpHostsTable.1其他netSnmpHostsTable.2其他netSnmpHostsTable.3其他
snmpset有可能吗?使用snmpset设置多行时,它将作为一个请求还是多个请求处理?
最佳答案
不可访问意味着,您将无法遍历这些设置,获取甚至看到它们,因为它们不可访问,即它们仅是定义结构的节点。
如果您的表具有添加行的条目状态,则可能必须使用读写或读创建,我不知道为什么只写已消失,这在某些方面是有意义的。
要回答这个问题,请输入以下命令:
C:\net-snmp\bin\snmpset -v 2c -c public -M +C:\mibs -m SOME-MIB 10.20.30.40 SOME-MIB::someString.9 = "martski" SOME-MIB::someOtherString.9 = "http://waratah.webs.com/" SOME-MIB::someEntryStatus.9 = createAndGo