2016-04-06 1 views
-1

J'ai actuellement un agent construit en utilisant snmp4j qui implémente des mibs personnalisés. Ce que je cherche à faire est d'exécuter cet agent snmp4j sous windows en tant qu'agent d'extension snmp pour le service windows snmp. La raison en est que j'ai besoin de ce nouvel agent snmp4j pour gérer les requêtes snmp pour les infos de mes mibs personnalisées et le service windows snmp pour gérer les demandes d'informations mib2. Si quelqu'un a une expérience avec les agents d'extension Windows snmp et snmp4j et peut me donner quelques conseils sur la façon d'y parvenir, ou si c'est même possible de faire avec snmp4j, j'apprécierais beaucoup. merciWindows Agent d'extension SNMP - snmp4j

Répondre

1

Microsoft a conçu l'agent SNMP en tant que service. Ce service fait tout le sale boulot au niveau du protocole (encodage et décodage ASN.1/BER). Afin de développer l'agent d'extension, nous devons implémenter un agent d'extension DLL sur le service Windows SNMP.

Afin de créer un agent d'extension, vous devez créer une DLL Win32 et dans cette DLL vous devez définir, mettre en œuvre et d'exporter les fonctions suivantes:

BOOL SNMP_FUNC_TYPE SnmpExtensionInit(DWORD dwUptimeReference, 
        HANDLE *phSubagentTrapEvent, 
        AsnObjectIdentifier *pFirstSupportedRegion) 

BOOL SNMP_FUNC_TYPE SnmpExtensionQuery(BYTE bPduType, 
        SnmpVarBindList *pVarBindList, 
        AsnInteger32 *pErrorStatus, 
        AsnInteger32 *pErrorIndex) 

// trap handler 
BOOL SNMP_FUNC_TYPE SnmpExtensionTrap(AsnObjectIdentifier *pEnterpriseOid, 
        AsnInteger32 *pGenericTrapId, 
        AsnInteger32 *pSpecificTrapId, 
        AsnTimeticks *pTimeStamp, 
        SnmpVarBindList *pVarBindList) 

Malheureusement, il n'y a aucun moyen que vous pouvez mettre en œuvre MS Extension d'agent SNMP utilisant la bibliothèque SNMP4J.