سؤال

لقد ورثت MIB وثائق مثال، وتحتاج إلى إعادة تنفيذ التعليمات البرمجية التي تنشئ الفخاخ. (لأسباب مختلفة، يتم فقد الكود الأصلي وذهب إلى الأبد، ولكن CM ليس سؤالي.)

يقول MIB:

    alertObjects     OBJECT IDENTIFIER ::= { corpAlert 1 }

    alertEvents      OBJECT IDENTIFIER ::= { corpAlert 2 }

    alertDispatchTime OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Time Event Dispatched"
        ::= { alertObjects 3 }

    testFailure OBJECT IDENTIFIER ::= { alertEvents 4 }

    testFailureClearTrap NOTIFICATION-TYPE
    OBJECTS  
    { 
        alertDispatchTime,
        [omitted]
    }
    STATUS   current
    DESCRIPTION
         "Clear prior failure"
   ::= { testFailure 0 }

المستندات لدينا لها مقتطفات التالية:

/usr/bin/snmptrap \
   -v 1 \
   -c public 192.168.0.2:162 [our-base-oid] 127.0.0.1 6 4 '' \
   [our-base-oid].2.4.0.4.1.0 s "May 21 2007 10:19PM" \
   [etc]

ما لا يمكنني معرفةه هو OID المستخدمة في وقت إرسال التنبيه. وأود أن أفهم ذلك إذا كان [قاعدة OID لدينا] .1.3.0، أو حتى [OID-OID) .2.4.0. [لدينا قاعدة] .1.3. إذا كنا نولد فخ في {alertevents 3}، فماذا تكون لاحقة للأشياء الفردية؟

من الممكن تحديث MIB بعد الوثائق، لذلك إذا كان هذا يبدو خاطئا في خبير، فما الذي يجب أن يكون OID في وقت الفراغ؟

شكرًا.

هل كانت مفيدة؟

المحلول

على النحو المحدد هنا، AlertDispatchTime هو كائن Scalar (مثيل واحد فقط)، لذلك الدوخة مثيل لها هو دائما 0 (OID كامل هو [Corpalert] .1.3.0). OID الإعلام هو [كورباليرت] .2.4.0.

على افتراض [لدينا-OID-OID] تقصد Corpalert، فإن أمر SNMPTrap يظهر لا يبدو صحيحا لأنه [OUD-OID-OID] .2.4.0.4.1.0 سيكون TestFailReclearraP.4.1.0، الذي لا "ر معنى: الفخاخ لا تملك الدعوة المثلية. لكنني أحرز بعض الافتراضات هنا عن أجزاء من مواصفات MIB لم يتم تضمينها.

نصائح أخرى

إذا كان لديك نظام عمل، فربما سيكون جيدا إذا كنت تستطيع إنشاء فخ ورؤية محتوياته.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top