H3C SNMP OID

有两种mib-style

【1】老些的设备

cpu 使用率OID: .1.3.6.1.4.1.25506.2.6.1.1.1.1.6.slot 
内存使用率OID: .1.3.6.1.4.1.25506.2.6.1.1.1.1.8.slot
 
【2】新出的设备
cpu 使用率OID:.1.3.6.1.4.1.2011.10.2.6.1.1.1.1.6.slot 
内存使用率OID: .1.3.6.1.4.1.2011.10.2.6.1.1.1.1.8.slot 
 
如何查询slot呢?,用这个oid:.1.3.6.1.2.1.47.1.1.1.1.2

 子网掩码

snmpwalk -v 2c -c broadapublic 10.1.1.51 1.3.6.1.2.1.4.20.1.3
IP-MIB::ipAdEntNetMask.10.1.1.51 = IpAddress: 255.255.255.0

#coding=utf8
#使用前需安装net-snmp-utils或net-snmp包
#http://www.h3c.com/CN/D_200906/636072_30003_0.htm#_Toc231200648
from _utils.patrol2 import run_cmd

snmp_version='2c'#1|2c|3
write_community='broadapublic'
host='10.1.1.51'
filename='backup.txt'
tftp_ip='10.1.240.131'

def snmpset(host, oid):
    cmd='snmpset -r 0 -v {} -c {} {} {}'.format(snmp_version, write_community, host, oid)
    print cmd
    result = run_cmd(cmd)
    return result

# def snmpwalk():
#     cmd='snmpwalk -v {0} -c {1} {2} .1>{2}.mib'.format(snmp_version,write_community,host)
#     print cmd
#     result = run_cmd(cmd)
#     return result

#将当前运行的配置信息保存到下次启动配置文件(running2Startup)
#snmpset -v 1 -c private ip  1.3.6.1.4.1.25506.2.4.1.2.4.1.2.1 i 1 1.3.6.1.4.1.25506.2.4.1.2.4.1.9.1 i 4
#实体的OID为“列对象OID.n”,n为实体编号,实体不同,n的取值不同。实体编号由用户指定,只要与当前编号不冲突即可。相同编号的实体属于同一行,行索引即为实体编号。
#snmpset -r 0 -v 2c -c broadapublic 10.1.1.51 1.3.6.1.4.1.25506.2.4.1.2.4.1.2.1 i 1 1.3.6.1.4.1.25506.2.4.1.2.4.1.9.1 i 4
#oid1='1.3.6.1.4.1.25506.2.4.1.2.4.1.2.2'
action_type='1.3.6.1.4.1.25506.2.4.1.2.4.1.2.1 i 3'#指定配置文件操作类型,3为把当前系统运行的配置通过网络发送到远端服务器指定位置的文件中
filename='1.3.6.1.4.1.25506.2.4.1.2.4.1.4.1 s {}'.format(filename)#指定文件名,目的文件名
oid3='1.3.6.1.4.1.25506.2.4.1.2.4.1.4.1'
ftp_ip='1.3.6.1.4.1.25506.2.4.1.2.4.1.5.1 a {}'.format(tftp_ip)#指定服务器地址
#oid5='1.3.6.1.4.1.25506.2.4.1.2.4.1.3.4' #1 #使用FTP协议
#oid5='1.3.6.1.4.1.25506.2.4.1.2.4.1.9.2' #4 客户型号未知
protocol_type='1.3.6.1.4.1.25506.2.4.1.2.4.1.3.1 i 2' #2 #使用TFTP协议
save_log='1.3.6.1.4.1.25506.2.4.1.2.4.1.9.1 i 4'
oid='{action_type} {protocol_type} {filename} {ftp_ip} {save_log}'.format(
    action_type=action_type, filename=filename, protocol_type=protocol_type, ftp_ip=ftp_ip, save_log=save_log)


# system = snmpWalk(host, oid)
print snmpset(host, oid)



# snmpwalk -v 2c -c broadapublic 10.1.1.51 .1

  

原文地址:https://www.cnblogs.com/slqt/p/9224483.html