SNMPWALK(1) Net-SNMP SNMPWALK(1)

snmpwalk - بازیابی زیردرختی از مقادیر مدیریتی با استفاده از درخواست‌های SNMP GETNEXT

snmpwalk [APPLICATION OPTIONS] [COMMON OPTIONS] AGENT [OID]

دستور snmpwalk یک برنامهٔ SNMP است که از درخواست‌های SNMP GETNEXT برای پرس‌وجوی درختی از اطلاعات از یک موجودیت شبکه استفاده می‌کند.

می‌توان یک شناسهٔ شیء (OID) را در خط فرمان مشخص کرد. این OID تعیین می‌کند که کدام بخش از فضای شناسه‌های شیء با استفاده از درخواست‌های GETNEXT جستجو خواهد شد. تمام متغیرهای موجود در زیردرخت پایین‌تر از OID داده‌شده پرس‌وجو شده و مقادیر آن‌ها به کاربر نمایش داده می‌شود. نام هر متغیر در قالبی که در variables(5) مشخص شده ارائه می‌گردد.

اگر هیچ آرگومان OID مشخص نشده باشد، snmpwalk زیردرختی را که ریشه در SNMPv2-SMI::mib-2 دارد جستجو خواهد کرد (شامل هرگونه مقادیر شیء MIB از سایر ماژول‌های MIB که به عنوان بخشی از این زیردرخت تعریف شده‌اند). اگر موجودیت شبکه در پردازش بستهٔ درخواست با خطایی مواجه شود، یک بستهٔ خطا بازگردانده شده و پیامی نمایش داده می‌شود که به تعیین دقیق دلیل نادرست بودن قالب درخواست کمک می‌کند.

اگر جستجوی درخت منجر به تلاش برای جستجو فراتر از انتهای MIB شود، پیام "End of MIB" نمایش داده خواهد شد.

بررسی صعودی بودن ترتیبی OIDهای بازگردانده‌شده را انجام ندهید. برخی از agentها (برای نمونه چاپگرهای LaserJet) شناسه‌های OID را نامرتب برمی‌گردانند، اما با این حال می‌توانند پیمایش (walk) را کامل کنند. agentهای دیگر OIDهایی را به صورت نامرتب بازمی‌گردانند که می‌تواند باعث شود snmpwalk در حلقه‌ای بی‌پایان بیفتد. به‌طور پیش‌فرض، snmpwalk تلاش می‌کند این رفتار را شناسایی کرده و هنگام برخورد با agentای که رفتار غیرمجاز دارد، به شما هشدار دهد. از -Cc برای غیرفعال کردن این بررسی استفاده کنید.
پیمایش را به‌جای یک زیردرخت ساده، در OID مشخص‌شده پایان دهید. این گزینه می‌تواند برای پیمایش یک زیردرخت جزئی، ستون‌های انتخابی یک جدول، یا حتی دو یا چند جدول در یک دستور منفرد به کار رود.
شناسهٔ OID داده‌شده را در محدودهٔ جستجو بگنجانید. به‌طور معمول snmpwalk از درخواست‌های GETNEXT با شروع از OID مشخص‌شده توسط شما استفاده می‌کند و تمام نتایج موجود در زیردرخت MIB با ریشهٔ آن OID را برمی‌گرداند. گاهی ممکن است بخواهید OID مشخص‌شده در خط فرمان را نیز، در صورتی که یک OID معتبر در خود درخت باشد، در نتایج چاپ‌شده بگنجانید. این گزینه به شما امکان می‌دهد این کار را صریحاً انجام دهید.
در واقع، اگر پیمایش زیردرخت اصلی هیچ مقدار قابل استفاده‌ای برنگرداند، OID داده‌شده به‌طور خودکار بازیابی خواهد شد. این امر به پیمایش یک نمونهٔ منفرد (single instance) اجازه می‌دهد تا طبق انتظار معمول رفتار کند و مقدار نمونهٔ مشخص‌شده را برگرداند. این گزینه درخواست پایانی GET را غیرفعال می‌کند، بنابراین پیمایش یک نمونهٔ منفرد هیچ چیزی بازنخواهد گرداند.
پس از تکمیل پیمایش، تعداد متغیرهای یافت‌شده را چاپ کنید.
پس از تکمیل پیمایش، کل زمان واقعی سپری‌شده (wall-clock time) برای جمع‌آوری داده‌ها را (به ثانیه) چاپ کنید. توجه داشته باشید که زمان‌سنج دقیقاً پیش از آغاز مجموعه درخواست‌های داده شروع شده و بلافاصله پس از پایان آن متوقف می‌شود. مهم‌تر از همه، این بدان معناست که این زمان شامل مقداردهی اولیهٔ کتابخانه snmp، فرایند خاموش شدن، پردازش آرگومان‌ها و سایر سرآیندهای اجرایی نمی‌شود.

علاوه بر این گزینه‌ها، snmpwalk گزینه‌های عمومی شرح داده‌شده در صفحهٔ راهنمای snmpcmd(1) را نیز می‌پذیرد.

توجه داشته باشید که همان‌طور که در آنجا شرح داده شده است، snmpwalk نیاز به یک آرگومان برای تعیین agent مورد پرس‌وجو و حداکثر یک آرگومان OID دارد. دستور:

snmpwalk -Os -c public -v 1 zeus system

تمامی متغیرهای زیر system را بازیابی خواهد کرد:

sysDescr.0 = STRING: "SunOS zeus.net.cmu.edu 4.1.3_U1 1 sun4m"
sysObjectID.0 = OID: enterprises.hp.nm.hpsystem.10.1.1
sysUpTime.0 = Timeticks: (155274552) 17 days, 23:19:05
sysContact.0 = STRING: ""
sysName.0 = STRING: "zeus.net.cmu.edu"
sysLocation.0 = STRING: ""
sysServices.0 = INTEGER: 72
(به‌علاوهٔ محتویات sysORTable).

دستور:

snmpwalk -Os -c public -v 1 -CE sysORTable zeus system

مقادیر اسکالر (scalar) را بازیابی کرده، اما sysORTable را نادیده می‌گیرد.

snmpcmd(1), snmpbulkwalk(1), variables(5).

28 May 2007 V5.9.5.2