AIX clsnmp 命令从 AIX shell 提供 SNMP 管理器功能, 以对于 SNMP 代理程序查询网络管理信息。
clsnmp [ -d DebugLevel ] [ -h TargetHost ] [ -c Community ] [ -t TimeOutValue ] [ -r RetryNumber ] [ -n NonRepeaters ] [ -m MaxRepetitions ] [ -p PortNumber ] [ -v ] [ -f ConfigurationFile ] [ -? ] Function [ MIBVariable [ VariableType ] [ Value ] [ ... ] ]
使用 clsnmp 命令对代理程序发出 SNMP 请求并处理由代理程序返回的 SNMP 响应。AIX clsnmp 命令支持 SNMPv1、SNMPv2c 和 SNMPv3 请求的发出。
set 操作并非在所有 MIB 对象上受支持。 如果管理 MIB 对象的代理程序或子代理程序不支持 SET,则可能拒绝 set 操作。
getbulk 是一个 SNMPv2 功能。如果目标代理程序只支持 SNMPv1,则目标代理程序忽略您的请求。结果,请求超时。
功能关键字不区分大小写。标志、变量名和值区分大小写。
要同时侦听来自 NetView SNMP 和 AIX clsnmp 的陷阱,请使用 clsnmp 命令的 -p PortNumber 参数。在一个 IP 地址上一次只能有一个管理应用程序可以在一个端口上侦听。 在 clsnmp 陷阱命令上指定 -p 启用要使用的除众所周知的端口 162 以外的端口。这两个端口都必须配置为代理程序陷阱目的地。
未认证(通过使用可接受的共用名或用户名)的 clsnmp 命令将超时。
clsnmp 命令使用两个配置文件:/etc/mib.defs 和 clsnmp.conf。样本文件在 /usr/samples/snmpdv3 目录中提供。
clsnmp 命令支持发送 SNMPv1、SNMPv2c 和 SNMPv3 请求。 clsnmp 用于确定它是否应该发送 SNMPv1、SNMPv2c 或 SNMPv3 请求的文件是 clsnmp.conf 文件。如果通过 -h 参数指定的目标匹配 clsnmp.conf 文件中的 winSNMP 名称,则 clsnmp 使用在条目上指定的参数发送请求。如果不指定 -h 参数,则该请求将作为 SNMPv1request 发送。
clsnmp get sysName.0此命令的输出看起来类似于:
1.3.6.1.2.1.1.5.0 = hostname.austin.ibm.com
clsnmp get myName.0此命令的输出看起来类似于:
1.3.6.1.2.1.1.5.0 = myhostname.austin.ibm.com
clsnmp getnext udp此命令的输出看起来类似于:
1.3.6.1.2.1.7.1.0 = 653
clsnmp -v getnext udp此命令的输出看起来类似于:
udpInDatagrams.0 = 653
clsnmp set sysName.0 "hostname.austin.ibm.com"此命令产生类似于以下的输出:
1.3.6.1.2.1.1.5.0 = hostname.austin.ibm.com
clsnmp set sysName.0 displayname "hostname.austin.ibm.com"此命令产生类似于以下的输出:
1.3.6.1.2.1.1.5.0 = hostname.austin.ibm.com
以下按名称返回所有以相同的对象标识前缀开头的对象,但具有较少的要在 clsnmp 命令和 SNMP 代理程序之间交换的数据包:
clsnmp -h loopback -v -m 10 bulkwalk udp
此命令的输出看起来类似于以下内容:
clsnmp -v walk udp udpInDatagrams.0 = 653 udpNoPorts.0 = 22 udpInErrors.0 = 0 udpOutDatagrams.0 = 678 udpLocalAddress.0.0.0.0.7 = 0.0.0.0 udpLocalAddress.0.0.0.0.9 = 0.0.0.0 udpLocalAddress.0.0.0.0.13 = 0.0.0.0 udpLocalAddress.0.0.0.0.19 = 0.0.0.0 udpLocalAddress.0.0.0.0.37 = 0.0.0.0 udpLocalAddress.0.0.0.0.161 = 0.0.0.0 udpLocalAddress.0.0.0.0.5020 = 0.0.0.0 udpLocalPort.0.0.0.0.7 = 7 udpLocalPort.0.0.0.0.9 = 9 udpLocalPort.0.0.0.0.13 = 13 udpLocalPort.0.0.0.0.19 = 19 udpLocalPort.0.0.0.0.37 = 37 udpLocalPort.0.0.0.0.161 = 161 udpLocalPort.0.0.0.0.5020 = 5020
以下使用 getbulk 请求类型请求多个 MIB 对象。getbulk 请求类型返回在命令上列出的一个或多个 MIB 对象的下一个逻辑对象。在以下示例中,-n 选项指示仅对前两个变量(sysLocation 和 ifTable)请求下一个逻辑对象。对于列表中的所有其它对象(tcp、udp 和 icmp),-m 选项指示请求 5 个副本。
clsnmp -h loopback -v -n 2 -m 5 getbulk sysLocation ifTable tcp udp icmp
此命令产生类似于以下的输出:
sysLocation.0 = Research Triangle Park, NC ifIndex.1 = 1 tcpRtoAlgorithm.0 = 4 udpInDatagrams.0 = 782 icmpInMsgs.0 = 22 tcpRtoMin.0 = 0 udpNoPorts.0 = 22 icmpInErrors.0 = 0 tcpRtoMax.0 = 120 udpInErrors.0 = 0 icmpInDestUnreachs.0 = 22 tcpMaxConn.0 = -1 udpOutDatagrams.0 = 807 icmpInTimeExcds.0 = 0 tcpActiveOpens.0 = 1 udpLocalAddress.0.0.0.0.7 = 0.0.0.0 icmpInParmProbs.0 = 0
以下发送请求进行搜索以获取给定 MIBVariable 输入的文本名称,其内部的 ASN.1 值与输入 ASN.1 值最佳匹配。搜索从 /etc/mib.defs 文件开始,如果没有查找到,则继续搜索编译的 MIB。每个 clsnmp findname 调用只允许一个 MIBVariable。例如,这可以使用类似于以下的命令完成:
clsnmp findname 1.3.6.1.2.1.6.13.1.2
此命令产生类似于以下的输出:
1.3.6.1.2.1.6.13.1.2 found as: tcpConnLocalAddress
类似的示例是:
clsnmp findname 1.3.6.1.2.1.6.13.1.2.0
此命令产生类似于以下的输出:
1.3.6.1.2.1.6.13.1.2.0 found as: tcpConnLocalAddress.0
另一个类似的示例是:
clsnmp findname 1.3.6.1.2.
此命令产生类似于以下的输出:
1.3.6.1.2. found as: mgmt
target1 9.3.149.26 snmpv3 u1 - - AuthNoPriv HMAC-SHA 76784e5935acd6033a855df1fac42acb187aa867 - -并且在 snmpd 代理程序机器 9.3.149.26 上,用户 u1 正确配置,则我们可以在管理器主机上发出命令:
clsnmp -v -h target1 get sysName.0此命令将产生类似于以下的输出:
sysName.0 = somehostname.austin.ibm.com
clsnmp trap
/etc/clsnmp.conf | clsnmp 命令的配置文件。 |
/etc/mib.defs | 定义 SNMP 代理程序和管理器应该识别和处理的管理信息库(MIB)变量。 |
pwchange 命令、pwtokey 命令和 snmpdv3 守护进程。
/etc/clsnmp.conf 文件和 /etc/snmpdv3.conf 文件。