通过SNMP读取MIB-II信息

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2.完成此项实验,完成实验报告。
【实验组织方式】
小组实验
【实验条件】
微机与编程软件。
五.实验步骤
1.SNMP服务的安装
2.Jbuilder的安装
3.IReasoningSnmpV2的配置
4.进行相应的API函数应用
5.根据API函数获取MIB库中的标量,并对标量物理意义进行理解掌握
六.程序清单
1.获取标量PDU程序代码如下:
test mm=new test("ceshi");
mm.setHost("127.0.0.1");
mm.setSession();
mm.loadMib();
System.out.println("sysDescr="+mm.getVar("sysDescr"));
System.out.println("sysObjectID="+mm.getVar("sysObjectID"));
System.out.println("udpNoPorts="+mm.getVar("udpNoPorts"));
System.out.println("egpInMegs="+mm.getVar("egpInMegs"));
说明:调用getVar(String aT_oid)方法,来依次获取功能组中的对象。
3.标量概念的理解,标量物理意义的理解。
二.实验内容
1.理解SNMP协议。
2.对MIB中的标量物理意义进行理解掌握。
三.实验前的准备
1.掌握SNMP协议的概念。
2.熟悉MIB标量的概念。
3.掌握相关软件编程知识。
四.实验要求及实验软硬件环境
【基本要求】
1.设计程序实现SNMP MIB库中标量的获取。
PP_session.setRetries(0); // no retry after timeout
return parseVar(SP_pdu);
}catch(Exception e){
System.out.println("snmppdu create error");
return null;
System.out.println("sysLocation="+mm.getVar("sysLocation"));
System.out.println("sysService="+mm.getVar("sysService"));
System.out.println("sysORLastChange="+mm.getVar("sysORLastChange"));
public String getVar(String aT_oid){
try{
SnmpPdu SP_pdu =PP_session.snmpGetRequest(aT_oid);
PP_session.semmimeout(5000); // sets timeout to be 5 seconds
对象类型:DisplayString[255] 访问模式:读写
描述:设备的名字,可能是官方的主机名或者是分配的管理名字
SNMP组:
对象名:snmpInPkts OID:snmp.1
对象类型:Counter 访问模式:只读
描述:传递给该代理的SNMP消息的数量
接口组:interfaces组
对象名:ifNumber(1) OID:interfaces.1
System.out.println("icmpInMsgs="+mm.getVar("icmpInMsgs"));
System.out.println("tcpRtoAlgorithm="+mm.getVar("tcpRtoAlgorithm"));
System.out.println("tcpRtoAlgorithm="+mm.getVar("tcpRtoAlgorithm"));
}
}
说明:运用com.ireasoning.protocol.snmp.SnmpSession中的SnmpPdu
snmpGetNextRequest(ng.String[]oids),来获取所传对象的下一个对象的值。
2.主函数中的相应调用代码如下:
public static void main(String[] args){
对象类型:ObjectIdentifier 访问模式:只读
描述:设备厂商的授权标识符
对象名:sysUpTime(1) OID:system.3 对象类型:TimeTick 访问模式:只读
描述:从系统(代理)的网络管理部分最后一次重新初始化以来,经过的
时间量
对象名:sysName(1) OID:system.5
System.out.println("sysUpTime="+mm.getVar("sysUpTime"));
System.out.println("sysContact="+mm.getVar("sysContact"));
System.out.println("sysName="+mm.getVar("sysName"));
vanj(4)
UDP组:
对象名:udpNoPorts(1) OID:udp.2
对象类型:Counter 访问模式:只读
描述:接收到没有提供特定应用程序端口的UDP数据报的数量




教师签名:
年月日
指出系统是否作为一个ip网关路由器或者仅作为一个不提供转发服务的正规主机
沈 阳 工 程 学 院
学 生 实 验 报 告
实验室名称:信息学院网络安全实验室
实验课程名称:网络系统管理
实验项目名称:实验二通过SNMP读取MIB-II信息
批阅教师(签字):成绩:
一.实验目的
1.理解SNMP协议的基本概念。
2.掌握相关的MIB功能组。
System.out.println("ipDefaultTTL="+mm.getVar("ipDefaultTTL"));
System.out.println("ipForwarding="+mm.getVar("ipForwarding"));
System.out.println("ipInReceives="+mm.getVar("ipInReceives"));
对象类型:Integer 访问模式:只读
描述:本地系统中包含的网络接口总数 解释:本机返回2
网际协议组:ip组
对象名:ipDefaulmmTL(1) OID:ip.2
对象类型:Integer 访问模式:读写
描述:置于IP报文的mmL字段中的生存期值
对象名:ipForwarding(1) OID:ip.1
对象类型:Integer 访问模式:读写
描述:指出系统是否作为一个IP网关(路由器)或者仅作为一个不提供转
发服务的正规主机。可取的值有Forwarding(1)和notForwarding(2)
对象名:ipInReceives(1) OID:ip.3
对象类型:Counter 访问模式:只读
描述:从系统所有可操作接口接收的输入报文的总数
七.结果分析
运行程序,结果如下图所示
分析:系统组:system组
对象名:sysDescr(1) OID:system.1
对象类型:DisplayString[255] 访问模式:只读
描述:关于该设备或实体的描述,如设备类型、硬件特性、操作系统信息等
对象名:sysObjectIDOID:system.2
ICMP组:
对象名:icmpInMsgs(1) OID:icmp.1
对象类型:Counter 访问模式:只读
描述:接收到的ICMP消息的数量
TCP组:
对象名:tcpRtoAlgorithm OID:tcp.1
对象类型:Counter 访问模式:只读
描述:重发时间算法,可能包含的值:other(1)、constant(2)、rsre(3)和
System.out.println("snmpInPkts="+mm.getVar("snmpInPkts"));
System.out.println("snmpSerialNo="+mm.getVar("snmpSerialNo"));
System.out.println("fNumber="+mm.getVar("ifNumber"));
相关文档
最新文档