목차

소개

사전 요구 사항

요구 사항

사용되는 구성 요소

배경 정보

설정

추가 구성

다음을 확인합니다.

버전 1

버전 2

버전 3

문제 해결

소개

이 문서에서는 NSO(Network Services Orchestrator)에 SNMP(Simple Network Management Protocol)를 구성하는 방법에 대해 설명합니다.

사전 요구 사항

요구 사항

다음 주제에 대한 지식을 보유하고 있으면 유용합니다.

- SNMP 컨피그레이션이 CDB(NSO 컨피그레이션 데이터베이스)에 로드되었습니다.

- NSO에 생성된 경보

- 서버에서 'snmpwalk' 명령을 지원합니다.

사용되는 구성 요소

이 문서는 특정 소프트웨어 및 하드웨어 버전으로 한정되지 않습니다.

이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우 모든 명령의 잠재적인 영향을 미리 숙지하시기 바랍니다.

배경 정보

이 구성은 CentOS 7에서 테스트되고 검증되었습니다. Ubuntu 18.04에서 출력은 CentOS 출력과 유사하지만 경보는 생성되지 않습니다.

Linux에서 제공하는 내장형 SNMP 서비스를 중지할 수 있습니다.

[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 CLI에서 Configuration(컨피그레이션) 모드로 이동하여 이 설정을 변경합니다. 최종 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 public 0.0.0.0:4000 .1.3.6.1

snmpwalk -v 1 -c public 0.0.0.0:4000 .1.3.6.1.4.1

버전 2

snmpwalk -v 2c -c public 0.0.0.0:4000 .1.3.6.1

snmpwalk -v 2c -c public 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.0:4000 .1.3.6.1

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

의 예상 출력  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: Timeout(시간 초과)

다음과 같은 이유로 시간 초과가 발생할 수 있습니다.

- NSO가 다운되었습니다.

- 명령에 사용된 IP/포트가 잘못되었습니다.

- 알 수 없는 사용자 이름(v3만 해당)

연결된 사용자 이름이 잘못되었거나 잘못되었습니다. "-u" 매개 변수 뒤의 값

- 이 OID의 이 에이전트에서 해당 개체를 사용할 수 없습니다.

초기 사용자가 그룹에 할당되지 않았습니다. 다음 옵션 중 하나를 추가합니다.

snmp usm 로컬 사용자 관리

인증 sha 비밀번호....

priv aes 비밀번호 ....

또는

nacm groups ncsoper user-name [ 공용 초기 ]