SNMP 개념 및 동작 방식

반응형

 

개념

SNMP(Simple Network Management Protocol)는 네트워크 상의 여러 장치들로부터 정보를 수집하고 관리하는 TCP/IP 기반의 인터넷 표준 프로토콜이며, OSI 7 Layer 중 7계층(응용계층)에 해당한다. 일반적으로 NMS(Network Management System) 모니터링 시스템에서 사용되며, 서버/스위치/방화벽 등 SNMP 설정이 가능한 IT 장치들로부터 MIB/OID 값들을 요청하고 받아오는데 이 값들 안에는 장치들에 대한 정보(CPU, Memory, Disk, Interface 등)가 포함된다.

 

 

동작 방식

SNMP는 Manager와 Agent로 구분된다.

Managet는 Agent에게 정보를 요청하며, Agent는 Manager로부터 받은 정보 요청에 응하고 정보를 전달한다. 여기서 Agent는 SNMP를 사용할 수 있는 모든 장치들을 뜻하며, Agent로부터 받은 정보들을 시각화하여 인프라 운영을 보다 안정적이고 편리하게 할 수 있게 된다. (=NMS 모니터링 시스템을 뜻함)

 

1. Polling 방식

: UDP/161 사용하며, Manager의 요청에 Agent가 응답하는 방식

 

2. Reporting 방식

: UDP/162 사용하며, 이상 징후가 생긴(설정된 임계값에서 벗어나는 상황) Agent가 스스로 이 상황을 인지하고 해당 정보를 Manager에게 보내는 방식

 

 

SNMP 동작 원리

구분 설명
Get Request Manager가 Agent에게 특정 정보를 요청할 때 사용한다.
Get Next Request 기본적으로 Get과 같은 의미이지만, SNMP에서는 각 정보가 계층 구조로 관리된다. 그래서 Get Next는 특정 계층 아래에 있는 정보를 요청할 때 사용한다.
Set Request Manager가 Agent에게 특정 값을 설정할 때 사용한다.
Get Response Manager가 보낸 요청에 응답할 때 사용한다.
Trap Agent에 설정된 특정 임계값을 벗어나는 경우(이벤트가 발생) Manager에게 알리기 위해 사용한다.

Flag 항목별 의미 (0~6)
0, Cold Start : Agent 초기화
1, Warm Start : 아무런 설정 변경없이 Agent 초기화
2, Link Down : 인터페이스 통신 끊김
3, Link Up : 인터페이스 통신 연결
4, Authentication Failure : 커뮤니티 불일치(인증 실패)
5, Egp Neighbor Loss : EGP 상태 변화
6, Enterprise Specific : 벤더별 특정 코드값 (Trap)

 

 

조건

서로 간 통신을 위해 반드시 갖춰야 할 조건들은 아래와 같다.

 

1. SNMP Version

: 버전 별로 설정 파일의 차이가 존재하기에 반드시 서로 같은 버전을 사용해야 한다.

버전 설명
v1 정보 교환만을 목적으로 만들어졌기에 보안이나 인증 등이 없다.
Community String 값만 일치하면 정보 교환이 가능했기에 해킹에 취약하다.
v2 v1의 보안 문제를 해결하기 위해 암호화 기능(MD5, DES)이 적용되었다.
하지만 v1과의 호환 실패 및 복잡한 보안 기능으로 상용화에 실패했다.
v2c v2 버전에서 보안 기능을 제거한 버전이다. Community String을 사용한다.
가장 널리 사용되는 버전이다.
v3 v2의 단순 암호 공유(일반 텍스트)를 훨씬 안전한 인코딩 매개 변수로 대체한다. 

 

 

2. Community String

: Community String 값은 SNMP 통신에 필요한 암호이며, Default 값은 public와 private이다. 반드시 변경해야 하며, 서로 동일한 값으로 설정해야 한다. 또한, RO(Read Only), RW(Read & Write) 두 가지 중 RO를 권장하는데, RW로 했을 때 사용자에게 수정 권한이 주어지므로 예기치 못한 문제가 발생할 수 있기 때문이다.

반응형

댓글

Designed by JB FACTORY