import java.io.IOException;
import org.snmp4j.CommunityTarget;
import org.snmp4j.PDU;
import org.snmp4j.Snmp;
import org.snmp4j.TransportMapping;
import org.snmp4j.event.ResponseEvent;
import org.snmp4j.mp.SnmpConstants;
import org.snmp4j.smi.Address;
import org.snmp4j.smi.GenericAddress;
import org.snmp4j.smi.OID;
import org.snmp4j.smi.OctetString;
import org.snmp4j.smi.VariableBinding;
import org.snmp4j.transport.DefaultUdpTransportMapping;
import org.snmp4j.smi.Variable;
public class SnmpMain {
public static void main(String[] args) {
Address targetAddress = GenericAddress.parse("udp:127.0.0.1/161");
CommunityTarget target = new CommunityTarget();
target.setCommunity(new OctetString("public"));
target.setAddress(targetAddress);
target.setTimeout(10000);
target.setVersion(SnmpConstants.version1);
// creating PDU
PDU pdu = new PDU();
pdu.add(new VariableBinding(new OID("1.3.6.1.2.1.1.1")));
pdu.add(new VariableBinding(new OID("1.3.6.1.2.1.1.2")));
pdu.add(new VariableBinding(new OID("1.3.6.1.2.1.1.3")));
pdu.add(new VariableBinding(new OID("1.3.6.1.2.1.1.4")));
pdu.add(new VariableBinding(new OID("1.3.6.1.2.1.1.5")));
// pdu.add(new VariableBinding(new OID(new int[] {1,3,6,1,2,1,1,2})));
pdu.setType(PDU.GETNEXT);
try {
TransportMapping transport = new DefaultUdpTransportMapping();
transport.listen();
Snmp snmp = new Snmp(transport);
ResponseEvent response = snmp.send(pdu, target);
if (response != null) {
PDU respPdu = response.getResponse();
for (int i = 0; i < respPdu.size(); i++) {
VariableBinding varBinding = respPdu.get(i);
Variable var = varBinding.getVariable();
System.out.println(var.toString());
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
搞了半天没调通,原来忘了transport.listen()了。
呵呵,准备在用Flash做个类似vista那样的CPU,内存占用率的仪表盘。
分享到:
相关推荐
在这个“snmp4j例子”压缩包中,你将找到一系列示例源代码,它们演示了如何使用SNMP4j来实现SNMP协议的不同方面。 首先,让我们深入了解SNMP协议。SNMP(Simple Network Management Protocol)是一种应用层协议,...
在这个"简单的snmp4j例子"中,我们将探讨如何在Eclipse环境下使用这个库来执行基本的SNMP操作,如GET、GETNEXT、WALK以及GETBULK,同时也会涉及同步和异步请求的概念。 首先,GET操作是SNMP中最基础的,它用于获取...
利用SNMP4J实现Snmp Trap完整例子 - 企业应用 - Java - JavaEye论坛.mht
Java SNMP Package:这是一个实现了SNMP协议的Java包.它提供对基本的SNMP客户端与在SNMP版本1和2中定义的代理操作的支持.这个包提供了一种机制用于取得与设置SNMP对象标识(OID:object identifier)值通过一个简单的...
SNMP4J是一个由Apache维护的开源项目,它为Java开发者提供了一个强大的框架,用于实现SNMP(简单网络管理协议)的编程。该框架支持SNMP的三个主要版本:SNMPv1、SNMPv2c和SNMPv3。无论是开发SNMP客户端还是服务器端...
在Java环境中,SNMP4J库为开发者提供了便利,可以用来读取和操作SNMP协议的数据。本文将深入探讨如何利用SNMP4j包来读取SNMP协议数据。 首先,理解SNMP4j的基本概念至关重要。SNMP4j是一个开源的Java库,完全实现了...
这个例子展示了如何使用SNMP4J的`Snmp`类发起一个GET请求,获取目标设备的系统描述信息。通过这种方式,开发者可以轻松地与网络设备交互,获取或设置设备的各种配置。 总的来说,SNMP4J是Java开发SNMP应用的理想...
SNMP4J是一个开源的Java库,专门设计用于实现SNMP协议的客户端功能,使得开发者能够从网络设备中读取或设置管理信息。本篇文章将详细探讨如何使用SNMP4j库在Java中读取SNMP协议数据。 首先,了解SNMP是必要的。SNMP...
在这个"SNMP4j学习开发例子及文档"中,你可以找到一系列与SNMP和SNMP4j相关的学习资源,这对于初学者或正在做毕业设计的学生来说非常有价值。以下是一些关键知识点: 1. **SNMP协议基础**:SNMP的基本概念包括管理...
进行snmp4J网管开发的基础东东 agent代理端例子: Java代码 import java.util.*; import org.snmp4j.*; import org.snmp4j.smi.*; //agent代理端例子: public class Test2 { public static class Handler...
`snmp4j` 是一个用Java编写的开源库,提供了实现SNMPv1、SNMPv2c和SNMPv3功能的完整框架。在本文中,我们将探讨如何使用 `snmp4j` 库来实现SNMP的基本功能。 首先,我们需要了解SNMP的基本概念。SNMP由三部分组成:...
snmp4j实现的简单例子,网上找来的,谢谢作者哈。
1. **SNMP4J入门**:`snmp4j入门例子.docx`提供了SNMP4J的基本使用教程,包括如何创建SNMP代理、建立连接、发送GET和SET请求等基础操作。SNMP4J库提供了一套完整的API,使得Java开发者能够轻松地集成SNMP功能。 2. ...
SNMP4J 是一个基于 Java 的 SNMP 库,提供了一个简单和方便的方式来实现 SNMP 管理站和 SNMP 代理。SNMP4J 中有多个重要的类和接口,例如 Snmp 类、PDU 类、ScopedPDU 类、Target 接口和 UserTarget 类等。 Snmp 类...
snmp4J是一款优秀的网络管理API,可以用JAVA实现管理你的网络.里面还有一些例子,另你可以轻松管理网络,你可以实现管理路由器和集线器的端口,关闭端口和打开端口,轻松的实现让自己的机子独享一条宽带,封掉那些整天下载...
### SNMP4J经典例子 在"esnmp2"这个示例中,可能包含了使用SNMP4J进行网络设备管理的基本操作,如: 1. **初始化Session**:创建一个SNMP4J Session对象,配置目标设备的IP地址、端口号、SNMP版本和认证/加密参数。 ...
在我们的例子中,我们将使用Snmp4j来获取交换机设备的OID(对象标识符)信息。 OID是SNMP中的唯一标识符,用于唯一地标识网络中的管理对象。每个OID都是一个由点分隔的数字序列,类似于“1.3.6.1.2.1”,这些数字...
在Java编程环境中,SNMP4J是一个开源库,为开发者提供了实现SNMP协议的接口和类。 SNMP4J库提供了丰富的功能,包括发送GET、GETNEXT、SET请求以及接收TRAP通知。GET操作用于获取MIB对象的值,GETNEXT用于遍历MIB树...
`TrapReceiver_SNMP4J.java`可能是一个基于SNMP4J库的Trap接收器。SNMP4J是Java的一个开源SNMP库,它提供了全面的SNMP协议支持。 在`TrapReceiver_SNMP4J.java`中,开发者可能首先初始化SNMP引擎,设置安全模型和上...
这个例子展示了如何使用snmp4j库发送一个SNMP GET请求,获取目标设备的`sysDescr.0`对象(这是设备的描述信息)。你需要替换`yourPassword`为你的SNMPv3密码,如果使用的是SNMPv1或v2c,则无需设置USM和安全参数,只...