0. NMS ( Network Management System )
네트워크 관리 시스템
NMS 란 네트워크 장비 중 어떠한 장애가 발생했을 때
그 장애를 최대한 신속하게 인지하고 대응하기 위해 만들어진 시스템.
쉽게 말해 수백, 수천대의 네트워크를 관리하기 위한 시스템이다.
NMS 에는 SNMP 방식과 Syslog ( 시스로그 ) 방식이 있다.
1. SNMP ( Simple Network Management Protocol )
TCP/UDP 161 Port ( SNMP Agent )
TCP/UDP 162 Port ( SNMP Manager )
SNMP 란 장비의 상태를 알려주는 프로토콜이다.
쉽게 말해 라우터나 스위치, 방화벽 등의 CPU, 메모리, 포트의 ON/OFF 상태를 알려주는 프로토콜이다.
보통 기업에서는 SNMP Trap 이라는 것을 이용하여 네트워크 장비 자체의 상태변화를 SNMP Manager 에 알려준다.
보통 이 트랩은 장비의 가용성에 해당하는 항목들을 나열한다.
어떠한 이슈로 인하여 장비가 다운되어 가용성에 문제가 생겼을 시
Trap 에 의해 자동으로 NMS 에 경보를 띄어주게 되어 관리자가 다른 일을 하고 있다가도
그 경보를 보고 장애상황을 빠르게 인지할 수 있다 라고 생각하면 된다.
2. Syslog ( 시스로그 )
Syslog 란 장비에서 일어나는 모든 상황 or 변화를 서버에 기록하는 프로토콜이다.
쉽게 말해 해당 장비에서 일어나는 모든 상황을 메모리에 기록하는 것이다.
대부분의 장비는 자체적으로 로그를 메모리에 남기고 있는데,
네트워크 관리자 즉, 엔지니어들은 이 로그를 참조하여 장비를 관리한다.
그러나 이 로그들은 장비가 리부팅되면 없어져 버리는 휘발성 메모리이다.
또한 이 로그들은 일일이 장비에 접속하여 확인해 봐야 하는 단점이 있다.
수백, 수천대의 장비에 일일이 접속하여 로그를 볼 수 없기에
대부분 라우터, 스위치들은 Syslog 프로토콜을 이용하여 이 로그들을 Syslog 서버로 보내는 것이다.
Syslog 는 형식이 단순하게 종류, 시간, 장비명(서버명), 로그 로 구성되어 있어서 관리자가
쉽게 인식이 가능하며, 항상 장비에서 보던 형식이라 다루기에 친숙한 환경이기에 자연스럽게
네트워크 관리 ( NMS ) 에 많이 이용되고 있는 형식이다.
Syslog 의 단점은 너무 많은 양의 로그를 기록하고 있기 때문에
장애 상황만을 분리해 내는것이 어려우며, 로그 홍수상태에 빠질 염려가 있다.
장비를 만지는 엔지니어들을 제일 선호하는 방식이나,
네트워크 장비를 관리하는 관리자들은 다소 선호하지 않는 방식이다.
3. ICMP ( Internet Control Message Protocol )
ICMP 는 TCP/IP 에서 IP 패킷을 처리할 때 발생되는 문제를 알려주는 프로토콜이다.
IP 에는 오로지 패킷을 목적지에 도달시키기 위한 내용들로만 구성되어 있다.
따라서 정상적으로 목적지 호스트로 도달하는 경우 IP 에서 통신이 성공하고 종료되므로 아무런 문제가 없다.
다만, 전달해야 할 호스트카 꺼져 있거나, 선이 단절된 비정상적인 경우 이 패킷 전달을 의뢰한 출발지 호스트에
이러한 사실을 알려야하지만, IP 에는 그런 에러에 대한 처리 방법이 명시되어있지 않다.
이런 IP 의 부족한 점을 메꾸기 위하여 사용되는 것이 ICMP 프로토콜이다.
ICMP 는 도착지 호스트가 없거나, 포트가 닫혀 있는 등의 에러 상황이 발생할 경우 IP 헤더에 기록되어 있는
출발지 호스트로 에러에 대한 정보를 보내주는 역할을 한다.
이러한 에러 상황정보 ( 에러 메시지, 코드 ) 를 받게 된 출발지 호스트에서는 목적지 호스트 상태를
대충이나마 확인 할 수 있게 된다.
에러 메시지로는 크게 아래 두 가지가 있다.
Destination Unreachable : 목적지에 도달하지 못함
Time Exceeded : 시간이 오래 걸려 목적지에 도달하지 못함
작게는 Redirect, source quench 등의 에러 메시지가 있다.
에러 메시지 안에는 또 에러 코드가 존재하여 원인을 조금 더 깊이 파악할 수 있다.
예를 들면 Destination Unreachable 에 관련 에러 코드는 아래 네 가지 코드가 있다.
Code 0 : Network Unreachable
Code 1 : Host Unreachable
Code 2 : Protocol Unreachable
Code 3 : Port Unreachable
해당 에러 코드를 통해서 통신이 어떤 문제가 있는지 파악이 가능하다.
가령 주로 발생하는 code 3번의 경우 도착지 포트가 열려있지 않아 에러가 뜬다고 생각하면 된다
.
ICMP 프로토콜을 생각보다 자주 사용하고 있다.
통신 상태 확인 시 자주 사용하는 윈도우의 ping 같은 경우가 ICMP 프로토콜을 이용한 방법이다.
출발지인 A 에서 도착지 B 의 상태를 보기 위해 명령어 "ping [B IP 주소]" 를 입력하면
윈도우에서는 자연스럽게 ICMP 프로토콜을 이용하여 해당 프로토콜을 목적지(B) 컴퓨터로 보내게 된다.
그렇게 되면 B로 가는 도중 생기는 에러들을 유형에 맞게 끔
에러 메시지 ( Destination Unreachable, Time Exceeded 등 ),에러 코드 ( code 3, 11 등 ) 로 회신하게 되며,
해당 정보를 바탕으로 송신자 컴퓨터(A)의 경우 수신자 컴퓨터(B)와의 현재 통신(네트워크) 상태를 확인 할 수 있다.
위 화면은 윈도우 cmd ( 명령 프롬프트 ) 창을 열고 ping 명령을 사용해 구글 DNS 8.8.8.8 의 정보를 받아온 모습이다.
32 바이트로 정보를 보냈고 걸린 시간은 얼마인지, 또 TTL (네트워크 구간 중 거쳐간 경로의 수) 도 표시해준다.
IGMP ( Internet Group Management Protocol )
멀티 캐스팅 데이터의 수신을 위해서 IGMP 프로토콜을 사용한다.
IGMP 는 인터넷 그룹 관리 규약이라 불린다.
NMS 출처: https://work-01.tistory.com/161
ICMP 출처: https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=rbdi3222&logNo=220602423771
'IT 지식 > IT 정보' 카테고리의 다른 글
공인 IP 와 사설 IP 의 차이 (0) | 2023.01.24 |
---|---|
쿠키와 세션의 특징 및 차이 (0) | 2023.01.23 |
파일서버 & CIFS / NFS / SMB 의 개념 (0) | 2023.01.18 |
페이로드 ( Payload ) 개념 (0) | 2023.01.04 |
로드밸런서(Load Balancer)의 개념과 특징 (0) | 2023.01.03 |