SNMP به این صورت کار میکنه :
agent ----- server
بخش agent روی دیوایسی که شما ازش اطلاعات میخواهی نصب میشه . مثلا همون مودم ADSL یا لینوکس سرور یا ویندوز یا .. خلاصه هر دستگاهی که از snmp پشتیبانی می کنه در حقیقت این agent رو داره . دوتا کار رو می تونی - با توجه به پرمیشنت - باهاش انجام بدی . get , set . get یه سری اطلاعات رو از دیوایسی که روش snmp یا همون agent هست رو میخونه و بر عکس set یه سری مقادیر رو می نویسه . که برای مورد اول پرمیشن read , برای بعدی پرمیشن write مورد نیازه .
مثلا من یه مودم دارم میخوام ببینم الان دقیقا چند نفر بهش متصل هستند . می آم از سیستمم نرم افزار snmp-get رو اجرا میکنم و ای پی مودم رو بهش میدم و یه MIB یا OID و رمز مربوطه ! در صورتی که مودم SNMP ساپورت باشه و من فعالش کرده باشم و رمز و ای پی درست باشه یه عدد به من برگردونده میشه . که تعداد کل متصلین در اون لحظه است !!!!
و برعکسشم برای set صادقه .
حالا oid mib چیه ؟ برای ساده تر شدن ارتباط بین این دو یه سری استاندارد تعریف شده . مثل ip و الباقی استاندارد های شبکه .
هر شرکت تولید کننده دیوایس بهش یه شماره تخصیص داده میشه مثل مک آدرس . بعد شرکت برای هر دیوایس خودش می آد یه سری مقدا و مشخصات تعریف می کنه . مثلا شرکت tplink برای مودم adsl ش برای دریافت مقدار اطلاعات دریافتی توسط اینترفیس وایرلسش یه oid اختصاص میده ! و ... در نهایت یه ساختار درختی ایجاد میشه که برای شمای مصرف کننده به سادگی قابل استفاده باشه و ...
مثلا 1.3.6.1.4.868.2.4.1.2.1.1.1.3.3562.3 این یه oid هست ! حالا این به چی اشاره می کنه ؟ به این :
Iso(1).org(3).dod(6).internet(1).private(4).transition(868).products(2).chassis(4).card(1).slotCps(2).-cpsSlotSummary(1).cpsModuleTable(1).cpsModuleEntry(1).cpsModuleModel(3).3562.3
هر تنظیمی توی دیوایس یه این جور عددی داره ! که می تونی مقدارشو بخونی یا عوض کنی ! از کوچکترین مورد - مثل نام دیوایس - تا پیچیده ترین و جزیی ترین تنظیم دستگاه . فقط کافیه oid ش رو پیدا کنی !!! اما چطوری ؟!
یه نرم افزار جانبی داره به نام snmpwalk . این مورد میتونه به دستگاه وصل بشه و تمام درخت oid رو برات در آره . یه روش دیگه هم استفاده از سایت هاییه که اینا لیست می کنند و ..
http://www.net-snmp.org/http://kb.paessler.com/en/topic/743-where-can-i-find-mib-files-for-my-devicehttp://kb.paessler.com/en/topic/653-how-do-snmp-mibs-and-oids-workhttp://www.mibdepot.com/cgi-bin/vendor_index.cgi?r=ciscohttp://www.alvestrand.no/objectid/1.3.6.1.htmlالبته نرم افزار های مانیتورینگ معمولا خودشون یه سری از این امکانات رو به صورت پیش فرض و آماده دارند . مخصوصا برای محصولا و برنده های مشهور و ..
میتونید از اونا استفاده کنید اما اگه صرفا میخوایی یه اسکریپت ساده بنویسی و اینو ذخیره کنی به سایت net-snmp برو . این نرم افزار آزاده و برای تمام پلت فورم ها از جمله لینوکس موجوده .
که تقریبا میشه همون لینکی که خودت دادی !
بخش 1و2 مربوط به دانلود و ران کردن و کانفیگ snmp هست و بخش 3 یه تست با کمک snmpget داره میزنه . فقط کافیه oid مربوطه رو پیدا کنی و نهایتا مقدارشو با کمک همین snmpget و یه اسکریپت یا چند خط برنامه پایتون بگیری و ذخیره کنی !
چقد اسون !
اگر تونستم سعی می کنم برات انجامش بدم ! ولی قول نمیدم !