| 失效链接处理 | 
| 
      snmp4j编程简介 PDF 下载 
	本站整理下载: 
	相关截图: 
![]() 
	主要内容: 
		Snmp4j编程简介【转】 
	
		Snmp4j编程简介之一 
	
		Snmp4j编程简介之一:Target 
	
		关于Snmp4j包,最重要三个概念,也是三个类:Snmp、Target、PDU。 
	
		     Target,表示被管理的设备。对于一个被管理的设备,我们关注它的Address,它使用的协议版本version,访问它的用户名和密码、以及对这个设备我们设置跟它打交道的一些策略,比如超时时间、重传次数等。所以有如下方法: 
	
		    1)获取或者设置ip地址 
	
		    void setAddress(Address address)   
	
		     Address getAddress() 
	
		    2)设置或者获取版本号(支持V1,V2c,V3) 
	
		    void setVersion(int ver) 
	
		    int   getVersion() 
	
		    3)超时时间 ( 单位:milliseconds ) 
	
		    void   setTimeout(long out) 
	
		    long getTimeout() 
	
		    4)重传次数 
	
		    void   setRetries(int retries) 
	
		    int   getRetries() 
	
		    5)最大PDU大小值 
	
		    void setMaxSizeRequestPDU(int max) 
	
		    int   getMaxSizeRequestPDU() 
	
		    上面这些对于Snmp三个版本都是相同的,不同的只是在于安全方面,具体来说,Snmpv1,v2c采用共同体(community)方式,安全性很差;SnmpV3采用基于用户的安全(USM)方式,安全性能得到很大提高。 
	
		   (1) 对于Snmpv1,v2c,使用Target派生出一个子类CommunityTarget,增加了对Community的方法: 
	
		        void setCommunity(OctetString community) 
	
		        OctetString getCommunity() 
	
		    (2)对于SnmpV3,使用其子类UserTarget,增加了一些有关USM安全方面的设置,比如采用的安全模型、安全级别、访问该设备的用户名以及权威引擎ID(authoritative engine ID): 
	
		       i)安全级别(支持三种安全级别) 
	
		       void setSecurityLevel(int level) 
	
		       int   getSecurityLevel() 
	
		       ii)访问用户名(该访问用户名称必须在设置USM的时候添加其相应的UsmUser) 
	
		       void setSecurityName(OctetString name) 
	
		       OctetString   getSecurityName() 
	
		       iii)安全模型(支持三种安全模型) 
	
		       void setSecurityModel(int model) 
	
		       int   getSecurityModel() 
	
		       V)权威引擎ID(authoritative engine ID) 
	
		       void   setAuthoritativeEngineID(byte[] id) 
	
		       byte[] getAuthoritativeEngineID() 
	
		 对于Target的代码大致如下:(摘自Snmp4j的说明文档) 
	
		Community Target 
	
		 CommunityTarget target = new CommunityTarget(); 
	
		target.setCommunity(new OctetString("public")); 
	
		target.setAddress(targetAddress); 
	
		target.setVersion(SnmpConstants.version1);User Target 
	
		 UserTarget target = new UserTarget(); 
	
		target.setAddress(targetAddress); 
	
		target.setRetries(1); 
	
		// set timeout to 500 milliseconds -> 2*500ms = 1s total timeout 
	
		target.setTimeout(500); 
	
		target.setVersion(SnmpConstants.version3); 
	
		target.setSecurityLevel(SecurityLevel.AUTH_PRIV); 
	
		target.setSecurityName(new OctetString("MD5DES")); 
	
		Snmp4j编程简介之二 
	
		Snmp4j编程简介之二:PDU 
 | 
    




    
苏公网安备 32061202001004号


    