المحتويات

المقدمة

المتطلبات الأساسية

المتطلبات

المكونات المستخدمة

معلومات أساسية

التكوين

تكوينات إضافية

التحقق من الصحة

الإصدار 1

الإصدار 2

الإصدار 3

أستكشاف المشاكل وإصلاحها

المقدمة

يوضح هذا المستند كيفية تكوين بروتوكول إدارة شبكة بسيط (SNMP) ل Network Services Orchestrator (NSO).

المتطلبات الأساسية

المتطلبات

توصي Cisco بأن تكون لديك معرفة بالمواضيع التالية:

- تحميل تكوين SNMP في قاعدة بيانات تكوين NSO (CDB).

- تم إنشاء تنبيهات على NSO.

- أمر دعم "snmpwalk" على الخادم.

المكونات المستخدمة

لا يقتصر هذا المستند على إصدارات برامج ومكونات مادية معينة.

تم إنشاء المعلومات الواردة في هذا المستند من الأجهزة الموجودة في بيئة معملية خاصة. بدأت جميع الأجهزة المُستخدمة في هذا المستند بتكوين ممسوح (افتراضي). إذا كانت شبكتك قيد التشغيل، فتأكد من فهمك للتأثير المحتمل لأي أمر.

معلومات أساسية

تم إختبار التكوين والتحقق من صحته في نظام التشغيل CentOS 7. في Ubuntu 18.04، يكون الناتج مماثل لناتج CentOS، ولكن لا يتم توليد الإنذارات.

يمكن إيقاف خدمة SNMP المضمنة التي توفرها نظام التشغيل Linux:

[root@nso-recreate ~]# service snmpd status

Redirectin to /bin/systemctl status snmpd.service

snmpd.service - Simple Network Management Protocol (SNMP) Daemon.

Loaded: loaded (/usr/lib/systemd/system/snmpd.service; disabled; vendor preset: disabled)

Active: inactive (dead)

التكوين

في واجهة سطر أوامر NSO، انتقل إلى وضع التكوين وأدخل هذه التغييرات؛ تكوين SNMP النهائي هو:

admin@ncs# show running-config snmp

snmp agent enabled

snmp agent ip 0.0.0.0

snmp agent udp-port 4000

snmp agent version v1

snmp agent version v2c

snmp agent version v3

snmp agent engine-id enterprise-number 32473

snmp agent engine-id from-text testing

snmp agent max-message-size 50000

snmp system contact ""

snmp system name ""

snmp system location ""

snmp usm local user initial

auth sha password authpass

priv aes password privpass

!

snmp target monitor

ip 127.0.0.1

udp-port 162

tag [ monitor ]

timeout 1500

retries 3

v2c sec-name public

!

snmp community public

sec-name public

!

snmp notify foo

tag monitor

type trap

!

snmp vacm group initial

member initial

sec-model [ usm ]

!

access usm no-auth-no-priv

read-view internet

notify-view internet

!

access usm auth-no-priv

read-view internet

notify-view internet

!

access usm auth-priv

read-view internet

notify-view internet

!

!

snmp vacm group public

member public

sec-model [ v1 v2c ]

!

access any no-auth-no-priv

read-view internet

notify-view internet

!

!

snmp vacm view internet

subtree 1.3.6.1

included

!

!

snmp vacm view restricted

subtree 1.3.6.1.6.3.11.2.1

included

!

subtree 1.3.6.1.6.3.15.1.1

included

!

!

تكوينات إضافية

للتحقق من عمل SNMP، يمكنك إنشاء تنبيه والتحقق من التنبيه باستخدام show alarms alarm-list  :

admin@ncs# show alarms alarm-list

alarms alarm-list number-of-alarms 2

alarms alarm-list last-changed 2022-03-31T09:26:58.912259+00:00

alarms alarm-list alarm ios0 connection-failure /devices/device[name='ios0'] ""

is-cleared false

last-status-change 2022-03-31T09:26:58.912259+00:00

last-perceived-severity major

last-alarm-text "Failed to connect to device ios0: connection refused: NEDCOM CONNECT: Connection refused (Connection refused) in new state"

status-change 2022-03-31T09:26:58.912259+00:00

received-time 2022-03-31T09:26:58.912259+00:00

perceived-severity major

alarm-text "Failed to connect to device ios0: connection refused: NEDCOM CONNECT: Connection refused (Connection refused) in new state"

alarms alarm-list alarm jun0 connection-failure /devices/device[name='jun0'] ""

is-cleared false

last-status-change 2022-03-31T09:26:57.507969+00:00

last-perceived-severity major

last-alarm-text "Failed to connect to device jun0: connection refused"

status-change 2022-03-31T09:26:57.507969+00:00

received-time 2022-03-31T09:26:57.507969+00:00

perceived-severity major

alarm-text "Failed to connect to device jun0: connection refused"

التحقق من الصحة

للتحقق من صحة التكوينات، تحقق من إصدارات SNMP المختلفة:

ملاحظة: للحصول على الإخراج بالكامل، يمكنك إستخدام معرف فئة المورد (OID) .1.3.6.1. للحصول على الإنذار فقط، يمكنك إستخدام 1.3.6.1.4.1.

الإصدار 1

snmpWalk -v 1 -c عام 0.0.0.0:4000.1.3.6.1

snmpWalk -v 1 -c عام 0.0.0.0:4000.1.3.6.1.4.1

الإصدار 2

snmpWalk -v 2c -c عام 0.0.0.0:4000.1.3.6.1

snmpWalk -v 2c -c عام 0.0.0.0:4000.1.3.6.1.4.1

الإصدار 3

snmpwalk -on -v3 -a SHA -x AES -a 'authpass' -x 'privpass' -l 'authPriv' -u 'initial' 0.0.0:4000.1.3.6.1

snmpWalk -on -v3 -a SHA -x AES -a 'authpass' -x 'privpass' -l 'authPriv' -u 'initial' 0.0.0:4000.1.3.6.1.4.1

الناتج المتوقع ل  snmpwalk الأمر:

[root@nso-recreate ~]# snmpwalk -On -v3 -a SHA -x AES -A 'authpass' -X 'privpass' -l 'authPriv' -u 'initial' 0.0.0.0:4000 .1.3.6.1.4.1

.1.3.6.1.4.1.24961.2.103.1.1.1.0 = Gauge32: 2

.1.3.6.1.4.1.24961.2.103.1.1.2.0 = Hex-STRING: 07 E6 03 1F 09 1A 3A 09 2B 00 00

.1.3.6.1.4.1.24961.2.103.1.1.5.1.2.1 = STRING: "connection-failure"

.1.3.6.1.4.1.24961.2.103.1.1.5.1.2.2 = STRING: "connection-failure"

.1.3.6.1.4.1.24961.2.103.1.1.5.1.3.1 = STRING: "jun0"

.1.3.6.1.4.1.24961.2.103.1.1.5.1.3.2 = STRING: "ios0"

.1.3.6.1.4.1.24961.2.103.1.1.5.1.4.1 = STRING: "/ncs:devices/ncs:device[ncs:name='jun0']"

.1.3.6.1.4.1.24961.2.103.1.1.5.1.4.2 = STRING: "/ncs:devices/ncs:device[ncs:name='ios0']"

.1.3.6.1.4.1.24961.2.103.1.1.5.1.5.1 = OID: .0.0

.1.3.6.1.4.1.24961.2.103.1.1.5.1.5.2 = OID: .0.0

.1.3.6.1.4.1.24961.2.103.1.1.5.1.6.1 = ""

.1.3.6.1.4.1.24961.2.103.1.1.5.1.6.2 = ""

.1.3.6.1.4.1.24961.2.103.1.1.5.1.7.1 = ""

.1.3.6.1.4.1.24961.2.103.1.1.5.1.7.2 = ""

.1.3.6.1.4.1.24961.2.103.1.1.5.1.8.1 = INTEGER: 2

.1.3.6.1.4.1.24961.2.103.1.1.5.1.8.2 = INTEGER: 2

.1.3.6.1.4.1.24961.2.103.1.1.5.1.9.1 = Gauge32: 0

.1.3.6.1.4.1.24961.2.103.1.1.5.1.9.2 = Gauge32: 0

.1.3.6.1.4.1.24961.2.103.1.1.5.1.10.1 = Hex-STRING: 07 E6 03 1F 09 1A 39 05 2B 00 00

.1.3.6.1.4.1.24961.2.103.1.1.5.1.10.2 = Hex-STRING: 07 E6 03 1F 09 1A 3A 09 2B 00 00

.1.3.6.1.4.1.24961.2.103.1.1.5.1.11.1 = Hex-STRING: 07 E6 03 1F 09 1A 39 05 2B 00 00

.1.3.6.1.4.1.24961.2.103.1.1.5.1.11.2 = Hex-STRING: 07 E6 03 1F 09 1A 3A 09 2B 00 00

.1.3.6.1.4.1.24961.2.103.1.1.5.1.12.1 = INTEGER: 4

.1.3.6.1.4.1.24961.2.103.1.1.5.1.12.2 = INTEGER: 4

.1.3.6.1.4.1.24961.2.103.1.1.5.1.13.1 = INTEGER: 2

.1.3.6.1.4.1.24961.2.103.1.1.5.1.13.2 = INTEGER: 2

.1.3.6.1.4.1.24961.2.103.1.1.5.1.14.1 = STRING: "Failed to connect to device jun0: connection refused"

.1.3.6.1.4.1.24961.2.103.1.1.5.1.14.2 = STRING: "Failed to connect to

device ios0: connection refused: NEDCOM CONNECT: Connection refused (Connection refused) in new state"

أستكشاف المشاكل وإصلاحها

ومن بين القضايا المعروفة:

- SNMPwalk: المهلة

المهلة يمكن أن تحدث بسبب:

- تم إيقاف NSO

- المنفذ/IP المستخدم في الأمر غير صحيح

- اسم مستخدم غير معروف (v3 فقط)

اسم المستخدم المقترن خاطئ/غير صحيح، القيمة بعد المعلمة "-u"

- لا يتوفر هذا الكائن على هذا العامل في معرف المستخدم (OID) هذا

لم يتم تعيين المستخدم الأولي إلى أي مجموعة. إضافة أحد الخيارات:

مسؤول المستخدم المحلي ل SNMP USM

كلمة مرور المصادقة ....

كلمة مرور priv aes ....

أو

اسم المستخدم الخاص بمجموعة NACM [عام أولي]