Ultimamente estou em uma novela, mas felizmente as coisas estão fluindo!!!
Bom, estou desenvolvendo uma espécie de Gerenciador SMNP bem simples, o intuito desta é apenas fazer um inventário de todos os equipamentos de nossa rede (rádio, router, switch), eu busco algumas informações sobre tais equipamentos pelo OID. Até aqui beleza, mas alguns equipamentos possuem MIB privada e tais informações por sua vez não são “contempladas” pelo RFC1213-MIB (padrão).
Eu possuo essa MIBs “privadas” e gostaria de saber como posso “compilar” usando o SNMP4J.
Estou em busca de uma solução para meu problema e vi este seu tópico.
Estou tentado fazer uma classe em Java (meu tcc de Redes) que pegue o status da portal serial de Roteador Cisco, pelo que eu vi neste link (file:///C:/Users/Paulo%20Rone/Documents/HD/Cursos%20Superiores/UNIFIEO/4%C2%BA%20Semestre/TCC/Pagina%20Cisco/Cisco%20SNMP%20Object%20Navigator.htm) o OID que eu preciso é este "1.3.6.1.4.1.522.3.3.1.1.2".
Pensei em fazer uma classe que fica recebendo os traps do roteador, mas acho que vai ser muito difícil, então pensei em fazer apenas uma classe que pegue o status e guarde no banco de dados.
Sera que pode me ajudar?
Erro: Só retorna null, deveria retornar Up, Down..etc
Classe:
publicclassmonitoramento{publicstaticvoidmain(Stringargs[]){PreparedStatementstatement;try{Stringremoto="100.100.100.1/161";TransportMappingtransport=newDefaultUdpTransportMapping();Snmpsnmp=newSnmp(transport);snmp.listen();PDUpdu=newPDU();pdu.setType(PDU.GET);//pdu.setType(PDU.GETNEXT);pdu.add(newVariableBinding(newOID("1.3.6.1.4.1.522.3.3.1.1.2")));//OID Status da Porta Serial Cisco 1.3.6.1.4.1.522.3.3.1.1.2Addressendereco=GenericAddress.parse(remoto);CommunityTargettarget=newCommunityTarget();target.setCommunity(newOctetString("public"));target.setAddress(endereco);target.setVersion(SnmpConstants.version1);ResponseEventresposta=snmp.send(pdu,target);PDUPDUResposta=resposta.getRequest();System.out.println("Resposta: "+PDUResposta);BDbd=newBD();Stringmensagem="!";if(bd.getConnection()){Stringsql="insert into roteador values ( ?, ?, ?, ? ,? ,? ,? ,? ,? ,? ,? ,? )";statement=bd.connection.prepareStatement(sql);statement.setBoolean(8,true);if(statement.executeUpdate()==0){mensagem="Falha ao gravar os dados";}bd.close();mensagem="Grado com Exito";}else{mensagem="Falha na conexao com o Bando de Dados";}}catch(Exceptionexc){System.out.println("Verifique erro : "+exc.toString());}//System.out.println("Resposta: "+mensagem);}}