1 2 import snmp.*; 3 import java.math.*; 4 import java.net.*; 5 6 7 8 public class SNMPSample 9 { 10 11 public static void main(String args[]) 12 { 13 14 try 15 { 16 17 InetAddress hostAddress = InetAddress.getByName("10.0.1.1"); 23 String community = "public"; 24 int version = 0; 26 SNMPv1CommunicationInterface comInterface = new SNMPv1CommunicationInterface(version, hostAddress, community); 27 28 29 30 String itemID = "1.3.6.1.2.1.1.1.0"; 34 35 System.out.println("Retrieving value corresponding to OID " + itemID); 36 37 SNMPVarBindList newVars = comInterface.getMIBEntry(itemID); 41 42 SNMPSequence pair = (SNMPSequence)(newVars.getSNMPObjectAt(0)); 45 46 SNMPObjectIdentifier snmpOID = (SNMPObjectIdentifier)pair.getSNMPObjectAt(0); 48 49 SNMPObject snmpValue = pair.getSNMPObjectAt(1); 51 52 System.out.println("Retrieved value: type " + snmpValue.getClass().getName() + ", value " + snmpValue.toString()); 54 55 byte[] javaByteArrayValue = (byte[])snmpValue.getValue(); 60 61 62 63 itemID = "1.3.6.1.2.1.1.3.0"; 67 68 System.out.println("Retrieving value corresponding to OID " + itemID); 69 70 newVars = comInterface.getMIBEntry(itemID); 74 75 pair = (SNMPSequence)(newVars.getSNMPObjectAt(0)); 78 79 snmpOID = (SNMPObjectIdentifier)pair.getSNMPObjectAt(0); 81 82 snmpValue = pair.getSNMPObjectAt(1); 84 85 System.out.println("Retrieved value: type " + snmpValue.getClass().getName() + ", value " + snmpValue.toString()); 87 88 BigInteger javaIntegerValue = (BigInteger)snmpValue.getValue(); 94 95 96 97 String [] itemIDs = {"1.3.6.1.2.1.1.1.0", "1.3.6.1.2.1.1.2.0", "1.3.6.1.2.1.1.3.0", "1.3.6.1.2.1.1.4.0", "1.3.6.1.2.1.1.5.0"}; 100 101 System.out.println("Retrieving value corresponding to OIDs: "); 102 for (int i = 0; i < itemIDs.length; i++) 103 { 104 System.out.println(" " + itemIDs[i]); 105 } 106 107 newVars = comInterface.getMIBEntry(itemIDs); 111 112 for (int i = 0; i < newVars.size(); i++) 115 { 116 pair = (SNMPSequence)(newVars.getSNMPObjectAt(i)); 117 118 snmpOID = (SNMPObjectIdentifier)pair.getSNMPObjectAt(0); 120 121 snmpValue = pair.getSNMPObjectAt(1); 123 124 System.out.println("Retrieved value: type " + snmpValue.getClass().getName() + ", value " + snmpValue.toString()); 126 } 127 128 System.out.println("Retrieving values _following_ OIDs: "); 131 for (int i = 0; i < itemIDs.length; i++) 132 { 133 System.out.println(" " + itemIDs[i]); 134 } 135 136 newVars = comInterface.getNextMIBEntry(itemIDs); 137 138 for (int i = 0; i < newVars.size(); i++) 141 { 142 pair = (SNMPSequence)(newVars.getSNMPObjectAt(i)); 143 144 snmpOID = (SNMPObjectIdentifier)pair.getSNMPObjectAt(0); 146 147 snmpValue = pair.getSNMPObjectAt(1); 149 150 System.out.println("Retrieved value: type " + snmpValue.getClass().getName() + ", value " + snmpValue.toString()); 152 } 153 154 155 156 String baseID = "1.3.6.1.2.1.2.2.1"; 163 164 System.out.println("Retrieving table corresponding to base OID " + baseID); 165 166 SNMPVarBindList tableVars = comInterface.retrieveMIBTable(baseID); 167 168 System.out.println("Number of table entries: " + tableVars.size()); 169 170 for (int i = 0; i < tableVars.size(); i++) 173 { 174 pair = (SNMPSequence)(tableVars.getSNMPObjectAt(i)); 175 176 snmpOID = (SNMPObjectIdentifier)pair.getSNMPObjectAt(0); 178 179 snmpValue = pair.getSNMPObjectAt(1); 181 182 System.out.println("Retrieved OID: " + snmpOID + ", type " + snmpValue.getClass().getName() + ", value " + snmpValue.toString()); 184 } 185 186 187 188 String [] baseIDs = {"1.3.6.1.2.1.2.2.1.1", "1.3.6.1.2.1.2.2.1.2", "1.3.6.1.2.1.2.2.1.3", "1.3.6.1.2.1.2.2.1.4"}; 198 199 System.out.println("Retrieving table columns corresponding to base OIDs "); 200 for (int i = 0; i < baseIDs.length; i++) 201 { 202 System.out.println(" " + baseIDs[i]); 203 } 204 205 tableVars = comInterface.retrieveMIBTable(baseIDs); 206 207 System.out.println("Number of table entries: " + tableVars.size()); 208 209 for (int i = 0; i < tableVars.size(); i++) 212 { 213 pair = (SNMPSequence)(tableVars.getSNMPObjectAt(i)); 214 215 snmpOID = (SNMPObjectIdentifier)pair.getSNMPObjectAt(0); 217 218 snmpValue = pair.getSNMPObjectAt(1); 220 221 System.out.println("Retrieved OID: " + snmpOID + ", type " + snmpValue.getClass().getName() + ", value " + snmpValue.toString()); 223 } 224 225 226 227 itemID = "1.3.6.1.2.1.1.4.0"; 232 233 SNMPOctetString newValue = new SNMPOctetString("Jon S"); 234 235 System.out.println("Setting value corresponding to OID " + itemID); 236 System.out.println("New value: " + newValue.toString()); 237 238 newVars = comInterface.setMIBEntry(itemID, newValue); 243 244 245 246 String [] setItemIDs = {"1.3.6.1.2.1.1.4.0", "1.3.6.1.2.1.1.5.0"}; 251 252 SNMPOctetString[] newValues = {new SNMPOctetString("Jon"), new SNMPOctetString("Jon's device")}; 253 254 System.out.println("Setting value corresponding to OIDs " + itemID); 255 for (int i = 0; i < setItemIDs.length; i++) 256 { 257 System.out.println(" " + setItemIDs[i] + ", new values " + newValues[i]); 258 } 259 260 newVars = comInterface.setMIBEntry(setItemIDs, newValues); 265 266 267 268 } 269 catch(Exception e) 270 { 271 System.out.println("Exception during SNMP operation: " + e + "\n"); 272 } 273 274 } 275 276 } | Popular Tags |