본문 바로가기

리눅스

[draft] snmpwalk 명령어

728x90

snmpwalk 명령어

snmpwalk는 SNMP(Simple Network Management Protocol)를 사용하여 네트워크 장치 및 시스템에서 정보를 가져오는 유용한 명령어입니다. SNMP는 네트워크 장치 및 시스템의 상태 및 구성 정보를 모니터링하고 관리하는 데 사용됩니다. snmpwalk 명령어는 특정 장치의 MIB(Management Information Base) 트리에서 데이터를 검색하는 데 사용됩니다.

snmpwalk(net-snmp-utils) 패키지 설치

snmpwalk 명령어는 대부분의 Linux 배포판에 기본적으로 설치되어 있습니다. 만약 설치되어 있지 않은 경우 아래와 같이 설치할 수 있습니다.

 

RHEL 기반 시스템

sudo yum install -y net-snmp-utils

Debian 기반 시스템

sudo apt-get update
sudo apt-get install snmp

snmpwalk 명령어의 기본 구문

snmpwalk [옵션] [대상 IP 주소] [커뮤니티 이름] [OID]
  • 옵션 : snmpwalk 명령어의 동작을 조정하는 옵션입니다.
  • 대상 IP 주소 : snmpwalk 명령어를 실행할 대상 네트워크 장비의 IP 주소입니다.
  • 커뮤니티 이름 : SNMP를 통해 대상 네트워크 장비에 액세스하기 위한 인증 정보입니다.
  • OID : 조회할 정보나 상태의 OID입니다.

주요 옵션

  • -v1: SNMP 버전 1을 사용하여 조회합니다.
  • -v2c: SNMP 버전 2c를 사용하여 조회합니다.
  • -v3: SNMP 버전 3을 사용하여 조회합니다.
  • -c: SNMP 커뮤니티 문자열을 지정합니다. (v1, v2c에서 사용)
  • -l: SNMP 보안 수준을 지정합니다. (v3에서 사용)
  • -u: SNMPv3 유저 이름을 지정합니다. (v3에서 사용)
  • -a: SNMPv3 인증 프로토콜을 지정합니다. (v3에서 사용)
  • -A: SNMPv3 인증 암호를 지정합니다. (v3에서 사용)
  • -x: SNMPv3 암호화 프로토콜을 지정합니다. (v3에서 사용)
  • -X: SNMPv3 암호화 암호를 지정합니다. (v3에서 사용)주요 옵션
  • -r : 반복하는 OID 값을 표시합니다.
  • -t : 쿼리의 타임아웃을 지정합니다.
  • -d : OID를 계층 구조로 출력합니다.
  • -O : 출력 형식을 지정합니다.
  • -On : OID를 숫자 형식으로 표시합니다.
  • -Of : OID를 부풀린 표현으로 표시합니다.
728x90

사용 예시

192.168.1.1 IP 주소의 네트워크 장비의 sysDescr 정보를 조회합니다.

snmpwalk -v2c -c public 192.168.1.1 sysDescr

192.168.1.1 IP 주소의 네트워크 장비의 시스템 ID 정보를 조회합니다.

snmpwalk -v2c -c public 192.168.1.1 1.3.6.1.2.1.1

192.168.1.1 IP 주소의 네트워크 장비의 CPU 사용률 정보를 조회합니다.

snmpwalk -v2c -c public 192.168.1.1 1.3.6.1.2.1.2

192.168.1.1 IP 주소의 네트워크 장비의 메모리 사용률 정보를 조회합니다.

snmpwalk -v2c -c public 192.168.1.1 1.3.6.1.2.1.3

SNMP 버전 2c를 사용하여 OID 1.3.6.1.2.1.1 아래의 모든 MIB 변수 조회

snmpwalk -v2c -c public 192.168.1.1 1.3.6.1.2.1.1
  • 위 예제에서 public은 SNMP 에이전트에서 사용하는 커뮤니티 문자열입니다. 192.168.1.1은 대상 SNMP 에이전트의 IP 주소이고, 1.3.6.1.2.1.1은 OID의 루트입니다. 이 명령어는 SNMP 에이전트의 시스템 정보를 반환할 수 있습니다.

SNMP 버전 3를 사용하여 OID 1.3.6.1.2.1.2.2 아래의 모든 MIB 변수 조회

snmpwalk -v3 -l authPriv -u myuser -a SHA -A myauthpass -x AES -X myprivpass 192.168.1.2 1.3.6.1.2.1.2.2
  • 위 예제에서 -v3는 SNMP 버전 3을 사용하고 -l authPriv은 인증 및 암호화를 지정합니다. -u myuser, -a SHA, -A myauthpass, -x AES, -X myprivpass는 SNMPv3의 사용자 이름, 인증 프로토콜, 인증 암호, 암호화 프로토콜 및 암호화 암호를 지정합니다. 이 명령어는 SNMPv3에 대한 보안 설정을 사용하여 OID 1.3.6.1.2.1.2.2 아래의 인터페이스 정보를 반환할 수 있습니다.

SNMP v2c 커뮤니티 스트링 "public"을 사용하여 로컬 호스트(localhost)에서 SNMPv2c를 통해 시스템 정보를 가져오기

snmpwalk -v2c -c public localhost

SNMP v3 프로토콜을 사용하여 원격 호스트 "192.168.1.100"에서 시작 OID ".1.3.6.1.2.1.1"로부터 정보를 가져오기

snmpwalk -v3 -l authPriv -a SHA -A authpass -x AES -X privpass -u username 192.168.1.100 .1.3.6.1.2.1.1

 

snmpwalk -v2c -c 'communitystringscbyun' 211.111.0.2
$ snmpwalk -v2c -c 'communitystringscbyun' 211.111.0.2
Timeout: No Response from 211.111.0.2

 

snmpwalk -v2c -c scbyunc 192.168.0.182 system
$ snmpwalk -v2c -c scbyunc 192.168.0.182 system
SNMPv2-MIB::sysDescr.0 = STRING: VMware ESXi 7.0.0 build-15843807 VMware, Inc. x86_64
SNMPv2-MIB::sysObjectID.0 = OID: SNMPv2-SMI::enterprises.6876.4.1
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (1561876604) 180 days, 18:32:46.04
...
SNMPv2-MIB::sysORUpTime.15 = Timeticks: (0) 0:00:00.00
SNMPv2-MIB::sysORUpTime.16 = Timeticks: (0) 0:00:00.00
SNMPv2-MIB::sysORUpTime.17 = Timeticks: (0) 0:00:00.00

snmpwalk 명령어 활용

snmpwalk 명령어는 네트워크 장비의 정보를 조회하는 데 유용합니다.

  • 네트워크 장비의 상태를 모니터링하기 위한 용도로 사용할 수 있습니다.
  • 네트워크 장비의 보안 설정을 확인하기 위한 용도로 사용할 수 있습니다.
  • 네트워크 장비의 성능을 측정하기 위한 용도로 사용할 수 있습니다.

snmpwalk 명령어를 사용하여 네트워크 장비를 보다 효과적으로 관리할 수 있습니다.

 

참고URL

- 변군이글루 블로그 : CentOS 7에서 SNMP v3을 설정하는 방법

 

728x90