# snmputil **Repository Path**: zhouling118/snmputil ## Basic Information - **Project Name**: snmputil - **Description**: 封装SNMP协议一些需要的操作 - **Primary Language**: Java - **License**: GPL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 7 - **Created**: 2024-01-21 - **Last Updated**: 2024-05-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #snmputil ![许可](https://img.shields.io/badge/license-GPL-green.svg) 初步添加的是 tlv 的解析工具,添加IP地址转换工具(IPV4) 需使用[java commons](http://commons.apache.org/proper/commons-lang/) ##异步snmp ##bulk snmp ```java private Entry[] walkImplBulk(String rootId, int maxRePetitions, String... oids) throws IOException { target.setCommunity(new OctetString(readCommunity)); PDU request = new PDU(); request.setType(PDU.GETBULK); for (String oid : oids) { request.add(new VariableBinding(new OID(oid))); } request.setMaxRepetitions(maxRePetitions); request.setNonRepeaters(0); // request.setErrorStatus(0); // request.setErrorIndex(0); ResponseEvent rspEvt = curSession.send(request, target); // System.out.println("xxxxxxxxxxx"); PDU response = rspEvt.getResponse(); // System.out.println(response); List> lists = new LinkedList>(); if (null != response && response.getErrorIndex() == PDU.noError && response.getErrorStatus() == PDU.noError) { Vector vector = response.getVariableBindings(); // System.out.println(vector.size()); Entry[] val = new Map.Entry[vector.size()]; for (Object variable : vector) { VariableBinding binding = (VariableBinding) variable; // System.out.println(binding.getOid().toString()); // System.out.println(binding.getVariable().toString()); lists.add(new AbstractMap.SimpleImmutableEntry( binding.getOid().toString(), binding.getVariable() .toString())); } return lists.toArray(val); } return null; } ```