پروتکل SNMP یا پروتکل مدیریت شبکه چیست؟

پروتکل SNMP

پروتکل SNMP یا Simple Network Management Protocol پروتکل مشهور و پرکاربرد برای مدیریت شبکه است. یک پروتکل لایه ۷(لایه Application) از مدل مفهومی OSI میباشد. این پروتکل توسط Internet Architecture Board) IAB) در RFC1157 برای تبادل اطلاعات بین دستگاه های مدیریت شبکه معرفی شد. لازم به ذکر است که SNMP یکی از زیر شاخه های مجموعه پروتکل TCP/IP محسوب می شود. در واقع این پروتکل به طور گسترده ای در مدیریت و مانیتورینگ عناصر مختلف شبکه بکار می رود.

به طور کلی در بسیاری از شبکه های کامپیوتری نرم افزار های مانیتورینگ وجود دارند که با این نرم افزارها می توان به بررسی اطلاعات کامل و دقیق از تمامی بخش های شبکه پرداخت. تمامی این نرم افزارها با استفاده از پروتکل های مختلفی مثل NetFlow ،ICMP ،ARP و از همه مهم تر SNMP اقدام به اسکن و بررسی شبکه می کنند.

 

معرفی پروتکل SNMP:

پروتکل SNMP یکی از پروتکل های لایه Application از هفت لایه OSI است که امکان نقل و انتقال اطلاعات مدیریتی را بین عناصر شبکه ایجاد می کند و در واقع قسمتی از پروتکل TCP/IP می باشد و همانطور که گفته شد در نرم افزارهای مانیتورینگ وجود دارد و در حال حاضر سه نسخه از پروتکل SNMP وجود دارد، SNMPv1، SNMPv2 و SNMPv3 که در ادامه با تفاوت های این سه نسخه از پروتکل SNMP آشنایی پیدا خواهید کرد.

یکی دیگر از مزایای استفاده از پروتکل SNMP این است که با استفاده از آن می توانید این امکان را در اختیار مدیران شبکه قرار دهید تا بتوانند به راحتی در کوتاه ترین زمان ممکن مشکلات در شبکه را تشخیص داده و سپس آن را حل نمایند. اما مانیتورینگ شبکه نه تنها برای بهبود عملکرد شبکه مورد استفاده قرار می گیرد بلکه به منظور جلوگیری از هر گونه حملات از داخل و خارج شبکه مورد استفاده قرار می گیرد به طوری که با کنترل ترافیک شبکه و تشخص نفوذ باعث افزایش امینت شبکه می شود.

در واقع لازم به ذکر است یک شبکه با هر تعداد تجهیزات به مانیتورینگ نیاز دارد زیرا ممکن است در نگاه اول شبکه دارای هیچ گونه اختلالی نباشد و به طور عادی به کار خود ادامه دهد ولی مانیتورینگ شبکه ممکن است مشکلاتی را مشاهده و گزارش کند که باعث افزاش عملکرد شبکه، کاهش هزینه های نگهداری تجهیزات شبکه، کاهش فعالیت های نیروی انسانی و در نهایت تضمینی برای آینده آن شبکه شود.

 

اجزاء اصلی پروتکل SNMP چیست؟

اجزاء اصلی پروتکل SNMP که شامل:

ـ SNMP Manager:

SNMP Manager که با نام Network Management System (NMS) هم شناخته می شود، وظیفه برقراری ارتباط و تبادل اطلاعات با SNMP Agent های فعال در تجهیزات شبکه را بر عهده دارد. به زبان ساده تر، یک SNMP Manager کامپیوتری است که بر روی آن یک نرم افزار مانیتورینگ شبکه نصب شده است و وظیفه مانیتور کردن شبکه را بر عهده دارد. به طور کلی وظایف یک SNMP Manager عبارتند از:

  • ارسال پرس و جو به Agent ها
  • دریافت پاسخ از Agent ها
  • ست کردن متغیر ها در Agent ها
  • دریافت پیغام های Trap از Agent ها

 

ـ Managed Devices:

منظور از Managed Device همه دستگاه های شبکه هستند که بر روی آنها SNMP Agent فعال شده باشد، مثل روتر ها، سوئیچ ها، سرورها و فایروال ها.

 

ـ SNMP Agent:

یک SNMP Agent در اصل برنامه ای است که بر روی تجهیزات شبکه کار گذاشته شده تا قابلیت SNMP را به آنها اضافه کند و وظیفه اصلی آن پاسخ دادن به درخواست های ارسال شده از طرف SNMP Manager است. وقتی SNMP Agent روی یک دستگاه فعال می شود، شروع به ثبت شاخص ها و اطلاعات دستگاه به صورت لوکال می کند و این اطلاعات را در دسترس NMS ها قرار می دهد.

 

ـ Management Information Base (MIB):

یک MIB یک پایگاه داده متنی است که فهرست پارامتر های قابل مانیتورینگ روی دستگاه را مشخص می کند و زبان مشترک بین Agent و Manager است، شاید بتوانیم بگوییم فایل های MIB مجموعه ای از سوالاتی است که یک NMS می تواند از دستگاه تحت مانیتورینگ بپرسد. MIB ها به دو دسته Public و Private تقسیم می‌شوند که:

  • MIB های Public در تمام دستگاه ها قالب یکسانی دارند و پشتیبانی می‌شوند.
  • MIB های Private توسط کمپانی یا شرکت سازنده دستگاه ها ارائه می شوند و فقط در دستگاه های آن ها وجود دارد.

 

آشنایی کلی با دستورهای ابتدایی در پروتکل SNMP:

 
در این پروتکل از دستورات پایه استفاده می شود که ما در این بخش قصد داریم آن ها را به شما معرفی کنیم:

ـ دستور Read:

با استفاده از این دستور می توان تجهیزاتی که مدیریت شده اند را با استفاده از NSM مشاهده کرد.

ـ دستور Write:

با استفاده از این دستور و البته با کمک NSM می توان متغیرهایی که در تجهیزات مدیریت شده قرار دارند را تغییر داد.

ـ دستور Trap:

در صورتی که قصد داشته باشید تجهیزات مدیریت شده را وادار کنید که گزارشات رخدادهای خود را به صورت غیر همزمان به NSM ارسال کنند باید از این دستور برای این کار استفاده کنید.

 
 

نسخه های مختلف پروتکل SNMP:

پروتکل SNMP

این پروتکل دارای چند نسخه است.

ـ SNMP V1:

امنیت این ورژن از پروتکل SNMP بسیار پایین است. هنگامی که ارسال جواب از سمت SNMP Agent به NMS در حال انتقال است، به راحتی می توان جواب را تغییر داد تا NMS (مثلا PRTG) جواب تغییر یافته توسط ما را دریافت کند. در واقع این نسخه فقط community-based است.

 

ـ SNMP V2:

این ورژن پروتکل SNMP شامل دو نوع است که در مجموع امنیت بهتری از ورژن 1 دارد:

  • SNMPv2c : نسخه ای از ورژن 2 است که فقط community-based است.
  • SNMPv2u : نسخه ای از ورژن 2 است که فقط user-based است. یعنی می‌توانید جهت احراز هویت، نام کاربری تعریف کنید.

نکته: این ورژن مشکل امنیتی ورژن 1 را حل کرده است. در این ورژن می‌توانید به جای ارتباط Read-Write به Read-Only بهره ببرید تا دیتاها توانایی تغییر نداشته باشند.

 

ـ SNMP V3:

این ورژن ایمن ترین کامل ترین و همچنین پر دردسر ترین ورژن پروتکل SNMP است.

در SNMPv3 بسته ها کاملا Encrypt (رمزنگاری) می شوند. همچنین user-based است و NMS نیاز به رمز برای احراز هویت دارد.

 

بهتر است از کدام نسخه SNMP استفاده کنیم؟

پاسخ به این سوال بستگی به محیط شبکه شما دارد، برای مثال:

  • اگر شبکه شما از طریق اینترنت قابل دسترسی است، شاید باید به SNMPv3 توجه کنید، چون از نظر امنیت بسیار بهتر است، اما باید این را هم در نظر بگیرید که رمز نگاری و ارتقاء امنیت روی این نسخه تا حدودی موجب افزایش بار کاری دستگاه ها و در نتیجه پایین آمدن سرعت (Performance) می شود.
  • اگر شبکه شما به خوبی توسط فایروال ها محفوظ شده است، استفاده از نسخه های SNMPv1 و SNMPv2 ممکن است کافی باشد.
  • از نقطه نظر مانیتورینگ، مثلا برای مانیتورینگ دستگاه ها از پروتکل SNMPv2 استفاده کنید که زمان اسکن پایین تری دارد و از شمارنده های 64bit پشتیبانی می کند.

 

نحوه پیکربندی SNMP بر روی روتر:

مراحل پیکربندی به شرح زیر است:

مرحله 1: پیکربندی اینترفیس FastEthernet 0/0 و تنظیمات IP Address بر روی روتر:

Router1#config t

Router1(config)#interface fastEthernet 0/0

Router1(config-if)#ip address 192.168.1.100 255.255.255.0

Router1(config-if)#no shutdown

مرحله 2: پیکربندی SNMP Agent بر روی روتر. در این مرحله SNMP Agent بر روی روتر برای ارتباطات Read و Write پیکربندی خواهد شد. مانند:

Router1#config t

Router1(config)#snmp-server community ccna1 ro

این یک دستور community string یا همان پسورد برای ارتباط read بر روی روتر تعریف خواهد کرد که در این مثال ccna1 تعیین شده است.

Router1(config)#snmp-server community ccna2 rw

این دستور یک community string یا همان پسورد برای ارتباط Read و Write بر روی روتر تعریف خواهد کرد که در این مثال ccna2 تعیین شده است.

 

مرحله 3: پیکربندی SNMP Agent بر روی سوئیچ. در این مرحله SNMP Agent بر روی سوئیچ برای ارتباطات Read و Write پیکربندی خواهد شد.

Switch1(config)#interface vlan 1

Switch1(config-if)#ip address 192.168.1.101 255.255.255.0

Switch1(config-if)#no shutdown

Switch1(config-if)#exit

با استفاده از دستور بالا آدرس 192.168.1.101 به VLAN 1 اختصاص داده خواهد شد.

Switch1(config)#snmp-server community ccna1 ro

این یک دستور community string یا همان پسورد برای ارتباط read بر روی سوئیچ تعریف خواهد کرد که در این مثال ccna1 تعیین شده است.

Switch1(config)#snmp-server community ccna2 rw

این دستور یک community string یا همان پسورد برای ارتباط Read و Write بر روی سوئیچ تعریف خواهد کرد که در این مثال ccna2 تعیین شده است.

 

مرحله 4: پیکربندی SNMP Trap بر روی روتر. در صورتی که Trap بر روی SNMP Agent پیکربندی شود در این حالت دستگاه SNMP Agent قادر به ارسال وقایع و رویدادها به سمت NMS خواهد بود. برای پیکربندی SNMP Trap بر روی روتر از دستور زیر استفاده نمایید.

Router1#config t

Router1(config)#snmp-server host 192.168.1.200 version2c

با استفاده از این دستور، IP Address مربوط به SNMP Server و Version مربوط به SNMP تعیین خواهد شد.

Router1(config)#snmp-server enabletraps snmplinkdown linkup

این دستور باعث فعال شدن Trap بر روی روتر برای ارسال وقایع مربوط به فعال شدن و غیر فعال شدن اتصالات به SNMP Server خواهد بود.

Router1(config)#snmp-server enable traps snmp authentication

این دستور باعث فعال شدن Trap بر روی روتر برای ارسال وقایع مربوط به احراز هویت به SNMP Server خواهد شد.

 

مرحله 5: پیکربندی SNMP Trap بر روی سوئیچ. در صورتی که Trap بر روی SNMP Agent پیکربندی شود در این حالت دستگاه SNMP Agent قادر به ارسال وقایع و رویدادها به سمت NMS خواهد بود. برای پیکربندی SNMP Trap بر روی سوئیچ از دستور زیر استفاده نمایید.

Switch1#config t

Switch1(config)#snmp-server host 192.168.1.200 version2c

با استفاده از این دستور، IP Address مربوط به SNMP Server و Version مربوط به SNMP تعیین خواهد شد.

Switch1(config)#snmp-server enabletraps snmplinkdown linkup

این دستور باعث فعال شدن Trap بر روی سوئیچ برای ارسال وقایع مربوط به فعال شدن و غیر فعال شدن اتصالات به SNMP Server خواهد بود.

Switch1(config)#snmp-server enable traps snmp authentication

این دستور باعث فعال شدن Trap بر روی سوئیچ برای ارسال وقایع مربوط به احراز هویت به SNMP Server خواهد شد.

 

SFlow ،SNMP و NetFlow: تفاوت آنها چیست؟

برگشت به بالا
محصول با موفقیت به سبد خرید اضافه شد.