2013-05-29 20 views
7

Mam MIB, nad którym zacząłem pracować, ale smilint narzeka na brakującą grupę zgodności. Jak dodać tę grupę zgodności do mojego pliku?SNMP MIB SMIv2 Grupa zgodności Wydanie

BLEH-PRODUCT-MIB DEFINITIONS ::= BEGIN 

-- Objects in this MIB are implemented in the local SNMP agent. 

    IMPORTS 
      MODULE-IDENTITY, OBJECT-TYPE, Integer32, enterprises 
        FROM SNMPv2-SMI; 

    blehProductMIB MODULE-IDENTITY 
    LAST-UPDATED "201305290000Z" 
    ORGANIZATION "Bleh Corporation" 
    CONTACT-INFO "   Joe Shmoe 
        Postal: Bleh Corporation 
           23 Telnet Road 
           Ottawa, ON, K1K 1K1 
           Canada 

        Tel:  +1 555 555 5555 x5555 
        Fax:  +1 555 555 5556 
        E-mail: [email protected]" 
    DESCRIPTION "MIB module describing Product objects." 
    REVISION "201305290000Z" 
    DESCRIPTION "Initial" 
    ::= { bleh 911 } 

    bleh    OBJECT IDENTIFIER ::= { enterprises 54321 } 

    productStatus OBJECT-TYPE 
      SYNTAX  OCTET STRING (SIZE (0..65535)) 
      MAX-ACCESS read-only 
      STATUS  current 
      DESCRIPTION "The status of the Product system 
         Details are shown as text" 
      ::= { blehProductMIB 1 } 


    binaryProductStatus OBJECT-TYPE 
      SYNTAX  Integer32 (0..1) 
      MAX-ACCESS read-only 
      STATUS  current 
      DESCRIPTION "The status of the Product system 
         Zero is unhealthy and One is healthy" 
      ::= { blehProductMIB 2 } 
END 

Wyjście smilint:

$ smilint ./BLEH-PRODUCT-MIB 
./BLEH-PRODUCT-MIB:28: warning: node `productStatus' must be contained in at least one conformance group 
./BLEH-PRODUCT-MIB:37: warning: node `binaryProductStatus' must be contained in at least one conformance group 

Odpowiedz

7

Oznacza to po prostu należy określić podmioty PRZEDMIOT-GROUP przed określeniem podmiotów PRZEDMIOT-Type w dokumencie MIB.

Weź RFC 1907 jako przykład

http://tools.ietf.org/html/rfc1907

snmpGroup OBJECT-GROUP 
    OBJECTS { snmpInPkts, 
       snmpInBadVersions, 
       snmpInASNParseErrs, 
       snmpSilentDrops, 
       snmpProxyDrops, 
       snmpEnableAuthenTraps } 
    STATUS current 
    DESCRIPTION 
      "A collection of objects providing basic instrumentation and 
      control of an SNMPv2 entity." 
    ::= { snmpMIBGroups 8 } 

jest zdefiniowany, a potem

snmpInPkts OBJECT-TYPE 
    SYNTAX  Counter32 
    MAX-ACCESS read-only 
    STATUS  current 
    DESCRIPTION 
      "The total number of messages delivered to the SNMP entity 
      from the transport service." 
    ::= { snmp 1 } 

dlaczego grupy są ważne, można przeczytać w dokumencie RFC 2580.

http://tools.ietf.org/html/rfc2580

Ponieważ zamierzasz definiować grupy, zaleca się dodanie powiązanego MODUŁU-ZGODNOŚCI.

+0

Dobra, ale co z tym oid? Co powinienem ustawić? Jak również uniknąć ostrzeżenia dotyczącego grupy obiektów? Czy potrzebuję sekcji ZGODNOŚĆ MODUŁU? –

+0

Nie istnieje ścisła zasada dotycząca wyboru OID, ale można zastosować najlepsze praktyki branżowe (na przykład styl Cisco w http://tools.cisco.com/Support/SNMP/do/BrowseMIB.do?local=en&step=2&submitClicked = true i mibName = Zależności CISCO-IETF-DOT11-QOS-MIB #. Ponieważ masz zamiar definiować grupy, zaleca się dodanie powiązanej MODULE-COMPLIANCE. –

+0

Czy możesz dodać sekcję MODULE-COMPLIANCE do swojej odpowiedzi, aby ją zaakceptować? –