2012-09-20 21 views
8

मैं एक प्रबंधक के एमआईबी फ़ाइल से सभी ऑब्जेक्ट्स को पढ़ना चाहता हूं।एमआईबी फ़ाइल से ओआईडी कैसे प्राप्त करें?

मैंने एसएनएमपी सक्षम एजेंट से कुछ डेटा प्राप्त करने के लिए एक टूल विकसित किया। मैं सभी ओआईडी को प्रबंधक की एमआईबी फाइल बनाने के द्वारा उस टूल को बढ़ाना चाहता हूं।

मैं नेट-एसएनएमपी लाइब्रेरी का उपयोग कर रहा हूं।

/usr/local/share/snmp/mibs/ 

फ़ोल्डर और यह कई एमआईबी फ़ाइलें हैं, लेकिन मैं OIDs यह है की एक सूची कैसे बना सकते हैं:

मैं निम्नलिखित देखा था?

मैं एमआईबी के माध्यम से गया और संरचनाओं को देखा, लेकिन मैं एमआईबी फाइलों में उल्लिखित प्रत्येक वस्तु के ओआईडी कैसे प्राप्त करूं?

मैं सभी OIDs सूचीबद्ध करना चाहते हैं इस प्रकार है:

  1. SNMPv2-MIB::sysDescr.0 = .1.3.6.1.2.1.1.1.0
  2. SNMPv2-MIB::sysObjectID.0 = .1.3.6.1.2.1.1.2.0 ... आदि

मैं सभी एमआईबी फ़ाइलें स्कैन और से सभी OIDs लगाना चाहते हैं फ़ाइलें।

मैं यह कैसे कर सकता हूं?

उत्तर

5

OID को SNMP सर्वर से खींचने के लिए आप का उपयोग -Ci विकल्प का उपयोग कर सकते हैं। उपकरण Net-SNMP के साथ आता है।

+0

आपके उत्तर के लिए धन्यवाद। – pradipta

1

अन्य दो अतः प्रश्नोत्तर बताएंगे कि कैसे आप इसे एक चल प्रणाली चलने के बिना कर सकते हैं:

यह केवल शुरुआती बिंदु है। वहां से बहुत सारे कोडिंग आगे हैं।

अपडेट: एक और अच्छा टूल एसएनएमपी :: एमआईबी :: कंपाइलर में पैक किया गया पर्ल एसएनएमपी कंपाइलर है। पर्ल में एक स्क्रिप्ट के साथ आप सभी एमआईबी तत्वों/घटकों को आंतरिक डेटा संरचनाओं में खींचते हैं और आप संरचना पेड़ को देखकर या पेड़ को डंप करके और डंप पर पोस्ट-पार्सिंग करके वहां से कोई भी जानकारी चुन सकते हैं।

+1

आपके उत्तर के लिए धन्यवाद ... – pradipta

9

snmptranslate का उपयोग करें- net-snmp लाइब्रेरी से कमांड। निम्नलिखित paramenters साथ यह प्रयास करें:

-M "directory containing your MIB file" 
-m ALL 
-Pu 
-Tso 
4

कुछ समस्याओं मैं निम्न आदेश का उपयोग कर OIDs उत्पन्न करने में कामयाब होने के बाद।

snmptranslate -Pu -Tz -M ~/.snmp/mibs:/usr/share/snmp/mibs:/usr/share/snmp/mibs/iana:/usr/share/snmp/mibs/ietf:/usr/share/mibs/site:/usr/share/snmp/mibs:/usr/share/mibs/iana:/usr/share/mibs/ietf:/usr/share/mibs/netsnmp:`pwd` -m module_name_NOT_file_name > module_name.oid