net-snmp

net-snmp

安装

先uninstall net-snmp rpm,然后自己安装一个

命令使用

 

                       
Snmptranslate
    % snmptranslate .1.3.6.1.2.1.1.3.0
    SNMPv2-MIB::sysUpTime.0
    % snmptranslate -On SNMPv2-MIB::system.sysUpTime.0
    .1.3.6.1.2.1.1.3.0
    查找sysUptime
	%snmptranslate -IR sysUpTime.0
    看mib的描述
	%snmptranslate -On -Td -Ib 'ssCpuRawIdle'
	MIB
	HOST-RESOURCES-MIB.txt--在net-snmp已经实现,没有编译进去
	UCD-SNMP-MIB.txt
snmpget
snmpgetnext
snmpwalk
	如何遍历一个agent
	%snmpwalk -v 1 -c snmpread 192.168.0.1999
	%snmpwalk -v 1 -c snmpread 192.168.0.132:1999 ucdavis
snmptable
snmpset
                

 

snmpd使用

用snmpconf生成snmp.conf 或者用source中的example.conf来试试看

图 11.1. net-snmp 配置图

可以看disk,proc...

 

snmp中的表是象fortran一样放的,与c中不一样,(竖的), 所以取它的数据用ifTable.ifEntry.ifDescr.5

开发使用

 

                 
            
1.	同步调用,看snmpdemoapp.c
2.	异步调用,看asyncapp.c
3.	mib module的写法
    a)	写一个MIB文件的定义
    b)	把它copy 到/usr/local/share/snmp/mibs/ or $HOME/.snmp/mibs
    c)	运行mib2c
    export MIBS=ALL
    mib2c node
		看帮助man mib_api
4.	如果把代码集成到agent中
    a)	agent
    b)	subagent
        用mib2c生成的c文件运行下面的话
        net-snmp-config --compile-subagent mysubagent nstAgentSubagentObject.c可以自动生成一个代码,来生成一个subagent
        在snmpd.conf 文件中加master agentx
        运行snmpd -f -c /etc/snmp/snmpd.conf
        运行mysubagent
        运行snmpget -v 1 -c public  localhost .1.3.6.1.4.1.8072.2.4.1.1.2.0
        运行snmpset -v 1 -c public  localhost .1.3.6.1.4.1.8072.2.4.1.1.2.0  I 5
        运行 snmpget -v1 -c public localhost NET-SNMP-TUTORIAL-MIB::nstAg
        entSubagentObject.0
        运行snmpset -v 1 -c public  localhost NET-SNMP-TUTORIAL-MIB::nstAg
        entSubagentObject.0 i 5

    c)	share object
 

你可能感兴趣的:(net-snmp)