Domanda

PDU pdu = new PDU();
pdu.setType(PDU.SET);

pdu.add(new VariableBinding(new OID("1.3.6.1.4.1.100.1.1"), new Counter64(System.currentTimeMillis())));
pdu.add(new VariableBinding(new OID("1.3.6.1.4.1.100.2.1"), new OctetString("some string")));

TransportMapping transport = null;
Snmp snmp = null;

try {
    transport = new DefaultUdpTransportMapping();
    transport.listen();

    snmp = new Snmp(transport);
    snmp.send(pdu, getCommunityTarget());
} catch (Exception e) {
    // error occurred
}

È così che mando la mia trappola SNMP per sollevare allarme. Sto impostando un variabile nell'agente SNMP e lo sto sfogliando nel browser MIB. Voglio sapere che cosa succede se ho impostato il tipo PDU come pdu.trap. Funziona sulla porta 162 anziché 161 e non riesco a vederlo browser MIB ma nel ricevitore trap. Qual è la differenza? Qual è l'obiettivo di usare pdu.trap? Come può catturarlo il mio agente? Qual è la migliore pratica da allevare e chiarire gli allarmi?

È stato utile?

Soluzione 2

Quando si implementa un'entità SNMP, è spesso meglio implementare il cosiddetto concetto di "sondaggio diretto trappola" anziché un semplice "mittente trap". Per quest'ultimo SNMP4J può essere utilizzato fuori dalla scatola, per il primo agente SNMP4J. Questo è autorizzato anche dalla licenza open source Apache 2.

Poiché le trappole potrebbero perdersi sulla rete, l'approccio di impollimento diretto da trap ha molti vantaggi, sebbene abbia bisogno di più (pochi) sforzi per implementare la parte dell'agente.

Per quanto riguarda la domanda originale:

  • Quando si invia un set di PDU chiedi al rispondente di comando (agente) di modificare alcune informazioni sulla sua entità.
  • Quando si invia una trappola o una migliore notifica PDU, si desidera informare il generatore di comandi (manager) su un evento. Con il concetto di impollimento diretto da trappola, il generatore di comandi invierebbe anche richieste GET regolarmente (ad esempio ogni 5 minutue) su *oggetti lasty-changed per rilevare efficacemente le variazioni dei dati in determinati sotto-alberi (crittici) del MIB del rispondente di comando. Se viene rilevata una modifica (tramite una PDU di notifica o il sondaggio, i dati modificati sono richiesti dal Generatore di comandi COMAMND dal generatore di comandi.

Altri suggerimenti

La differenza è nei ruoli: il set viene eseguito da un manager contro un agente e Trap è il contrario. L'SNMP4J di base supporta solo l'implementazione di un gestore SNMP. Esso è Possibile implementare anche alcuni aspetti di un agente, ma non banale. Tuttavia, è difficile dire quale di quei due stai effettivamente cercando di implementare.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top