본문 바로가기

IT인생_스크랩/Network

네트워크 분석 바이블 II - 스니퍼 활용 가이드

출처 까비모님의 블로그 | 까비모
원문 http://blog.naver.com/kabimo/40018469148
실시간 노드간 트래픽 분석 정보로 네트워크 효율성 확보
매트릭스 트래픽 맵 최대한 활용 … 실시간 모니터링 파악 가능


김근혜
피지피넷 스니퍼 분석 기술지원부 차장
kgsun@pgpnet.com

현 재 가장 널리 사용되고 있는 네트워크 분석 툴인 스니퍼를 이용해 네트워크 환경을 보다 정확하고 체계적으로 분석할 수 있는 스니퍼 활용 가이드를 소개한다. 이번호에서는 지난호에 이어 스니퍼의 모니터링 기능 중에 나머지 기능들에 대한 분석 방법론에 대해 알아본다. <편집자>


매트릭스(Matrix) 기능은 실시간으로 네트워크 노드들간의 트래픽 분석 정보를 제공한다. 두 노드간의 전반적인 트래픽 관찰을 통해 어떤 프로토콜을 사용하고 있는지 또는 데이터 양은 얼마인지에 대한 현황을 모니터링할 수 있으며, 유해 패턴을 유발하고 있는 노드에 대한 가장 간편한 분석 용도로 가장 널리 사용되고 있는 기능이다.
먼 저 매트릭스 트래픽 맵 기능을 살펴보자. 이 기능은 유해 트래픽을 유발하는 노드를 찾을 때 가장 많이 사용되고 있는 모니터링 기능으로, <그림 1>과 <그림 2>에 그 상세한 기능이 표시돼있다. 현재 세션을 맺고 있는 노드들에 대한 상황을 파악하고 노드간의 트래픽을 분석하기 위한 용도로 사용하면 된다.

네트워크 노드간의 트래픽 분석 정보 제공하는 매트릭스
트래픽 맵은 두 호스트 간의 연결 상태를 원형 맵 형식으로 관찰하기 위한 창으로 <그림 1>의 1번 항목처럼 한 노드를 선택하고 마우스 오른쪽 버튼을 클릭하면 해당 노드에 대해서 활용할 수 있는 다양한 부 메뉴가 나타나며, 특정 노드에 대한 세부 관찰이 가능하다.

< 그림 2>는 유해 트래픽을 유발하고 있는 노드 탐색과 특정 서버나 유저의 세션 정보를 실시간으로 모니터링할 때 사용하며, 소스나 데스티네이션(Destination) IP가 1인 반면에 상태측은 N개의 형태로 그려 질 경우에는 우선 그 IP를 확인해 물리적인 처리 후 세부 분석을 해야 할 것이다.

이런 형태의 모든 증상이 특정 유해 트래픽이라고 볼 수는 없지만 유사한 유형 중에 하나이므로 이런 형태의 패킷 유발은 네트워크 성능에 영향을 미칠 수 있기 때문에 심도 있는 분석이 필요할 것으로 보여진다.
호스트간의 데이터 송수신 상태, 프로토콜 사용 현황, 대역폭 점유율, 특정 서버의 트래픽 상태를 실시간으로 관찰하려면 <그림 3>에 제시된 매트릭스의 각 기능들을 이용하자.



호스트 테이블이나 매트릭스 테이블을 보다 편리하게 관찰하려면 스니퍼의 툴 메뉴에 있는 주소록(Address Book)을 활용하자.
주소록에 각 호스트의 이름, MAC 주소 및 IP 주소 등을 등록해 놓으면, 호스트 테이블 내에 있는 MAC, IP 계층에서 각 호스트의 주소들이 주소록에 등록된 호스트 이름이나 IP 주소로 보일 것이다. 또한 주소록은 나중에 파일로 저장해 보관이 가능, 필요하다면 많은 주소들을 등록해 놓자.
① 아웃라인 테이블은 MAC, IP, IPX 별 두 호스트간의 트래픽 발생 상태를 표시해 주며, 이것도 호스트 테이블과 마찬가지로 항상 정렬한 후 관찰에 들어가도록 하자.
② 디테일 테이블은 MAC, IP, IPX 프로토콜별로 두 호스트간의 트래픽을 표시해주며 실제 사용률이 많은 두 노드가 어떤 프로토콜을 사용 중인지 쉽게 확인이 가능하다.
③ 바/파이 차트는 트래픽을 가장 많이 발생시키는 호스트 쌍(Pair-Node)을 최대 20개 까지를 표시해 준다.
④ 캡쳐 기능은 특정 호스트 쌍을 클릭하면 활성화되며, 심층 분석이 필요한 두 노드간의 트래픽만을 별도의 필터를 적용하지 않고 바로 캡쳐할 수 있도록 가능하게 한다.
⑤ 디파인 필터는 특정 호스트 쌍에 대한 트래픽만을 모니터링 하기 위해 직접 필터를 정의하기 위해 사용한다.
⑥ 엑스포트는 현재 매트릭스 테이블에 올라와 있는 값을 csv,txt 파일로 변환해 저장할 때 사용한다.

매트릭스 기능의 활용방안은 다음과 같다.
① 두 스테이션 사이의 전반적인 트래픽을 관찰할 때 사용한다.
② 두 스테이션 사이에 어떤 프로토콜을 이용하고 있는가를 확인한다.
③ 어느 정도의 트래픽을 발생시키고 있는가를 확인한다.
④ 경향 분석을 위해 히스토리 데이터 수집 및 파일 변환을 시도하여 파악한다.

프로토콜 사용현황 실시간 제공하는 프로토콜 디스트리뷰션
다 음은 측정하고 있는 세그먼트의 프로토콜 사용현황에 대한 분석을 제공하는 프로토콜 디스트리뷰션(Protocol Distri bution) 기능을 살펴본다. 이 기능은 실제 네트워크의 대역폭을 어떤 프로토콜들이 점유하고 있는지, 비업무용/업무용 애플리케이션들의 사용현황이 어떤지, 유해 트래픽을 유발할 수 있는 용도로 사용되는 포트 사용현황은 어떤지에 대한 분석을 손쉽게 한눈에 파악하기 위한 용도로 사용할 수 있다.
네트워크 관리자가 이를 쉽게 분석하기 위해서는 미리 사용되는 포트들을 등록해야 한다. 스니퍼에는 웰 노운 포트(Well-Known Port)에 대해서만 등록돼 있을 뿐 나머지 포트들에 대한 포트들은 등록돼 있지 않다. 따라서 이 상태로 분석에 들어간다면 다른 포트로만 분석될 뿐이다. 이 부분은 스니퍼를 사용해 측정하는 관리자들이 가장 간과하기 쉬운 부분으로 맨 처음 스니퍼를 인스톨해서 사용하는 사용자라면 반드시 이 부분 셋업은 아래 설명한 대로 수정한 후 측정에 들어가야 할 것이다.
스니퍼 포트를 등록하는 부분은 <그림 4> Tool→Option→Protocol으로 이동해 각각 TCP/UDP에 등록하면 된다.

 

[Tech Guide / 스니퍼 활용 가이드]

아래 3가지는 꼭 등록해야 될 포트에 대한 설명이다.
첫째, 인터넷 사용현황을 파악하기 위해 인터넷 관련(P2P포함)한 포트를 등록하는 방법을 설명하겠다. 이와 관련된 포트등록은 포트 수가 많고 실제 관리자들이 P2P에 대한 포트를 잘 알지 못하므로 레지스터 파일을 이용하도록 하자.
우선 스니퍼 동호회 자료실에 가면 기존에 등록돼 있던 포트와 관련한 레지스터 파일들이 올라와 있을 것이다. 자신이 사용하는 스니퍼 버전과 OS를 확인 후 일치하는 파일을 다운로드하면 된다. 다운로드 받은 파일을 더블 클릭하면 바로 레지스터 파일에 P2P 관련 포트들이 등록될 것이다. 이의 확인은 Tool→Option→Protocol에 가서 등록됐는지 체크한다.


둘째, Syn Attack에 많이 이용되는 유해 트래픽에 많이 사용되는 포트를 분석하기 위해 TCP 135,445 포트를 등록하자. 평상시 TCP 135,445 포트들의 사용 현황을 파악한 후 관리자는 평상시 이들의 사용률보다 급격히 증가될 경우에는 패킷 캡쳐 후 그 로우 데이터 분석을 통해 그 원인이 무엇 이였는지를 정확히 파악해 보아야 할 것이다.
셋째, 모든 네트워크에는 그 당사에서 사용하는 주요 애플리케이션들이 있다. 예를 들면 그룹웨어나 재고관리 등 사용 애플리케이션에 대한 트래픽을 분석하고자 한다면 그 포트를 서버 담당자에게 문의해 등록해야 한다. 이는 업무용 트래픽에 대한 점유율을 파악하기 위해서 꼭 필요한 작업이다.


이렇게 모두 등록하고 난 후 프로토콜 디스트리뷰선 기능을 이용한다면 보다 쉽게 관리자가 현재 네트워크 트래픽의 사용 포트 현황 파악할 수 있을 것이다.
다음은 위와 같이 설정 후에도 다른 포트 사용률이 20~30% 이상을 차지하고 있다면, 이를 사용하는 포트가 무엇인지 네트워크 관리자는 궁금해 질 것이다. 이를 분석하기 위한 방법을 <그림 6>에 자세히 설명돼 있다.



그 사용 순서는 아래 내용을 참조하기 바란다.
① 매트릭스 맵 화면에서 좌측 상단에서 MAC, IP 또는 IPX를 선택한다.
② 화면의 좌측에 나타나는 프로토콜 가운데 사용자가 보고자 하는 패킷이 포함된 프로토콜을 선택한다.
③ 화면 중앙에 보이는 맵에서 원하는 호스트를 선택한 후, 화면의 상단에 있는 비주얼 필터 버튼을 클릭한다.
④ 위 과정을 정상적으로 수행했다면, 화면의 하단에 ‘Filtered N’이라고 하는 탭이 새로 추가됨. 이 탭에 필터링된 패킷들이 포함돼 있다. 이 패킷들에서 데스티네이션 노드(Destination Node)가 서비스중인 서버의 패킷을 보고 데스티네이션 포트(Desti nation Port)를 등록해 사용하면 될 것이다.

아래는 <그림 7>에 대한 기타 각각의 기능 설명이다.
① 앞에서 언급했듯이 막대 차트의 크기와 파이 차트의 조각 이동이 가능하다.
② 왼쪽에 있는 메뉴 바의 중간에 있는 Packets과 Bytes 버튼은 막대 차트의 y축 스케일이나 막대 및 파이 차트를 클릭했을 때 표시되는 상세 정보를 패킷 또는 바이트 수로 표시하도록 하는 기능이다. 테이블과는 관련 없다.
③ 테이블에 있는 정보는 하단의 Export 버튼을 클릭해 텍스트 파일로 저장할 수 있다.

네트워크 각 값에 대한 트렌드 파악 위한 히스토리 샘플
히스토리 샘플 기능은 일정 시간 동안의 초당 패킷 전송률, 초당 바이트 전송률, 대역폭 점유율, 종류별 에러 발생률, 패킷 크기별 전송률을 관찰하기 위해서 <그림 8>에 제시한 히스토리를 사용하자. 히스토리는 앞서 언급한 데시보드에 있는 정보를 항목별로 분리해서 관찰하는 기능이다. 따라서 각각의 작은 아이콘들을 더블 클릭하거나 원하는 아이콘을 선택한 후, 창의 왼쪽에 있는 메뉴 바에서 Start Sample을 클릭하면 선택된 항목의 그래프 창이 나타난다.
Properties 창에서 그래프의 모양을 막대(bar), 영역(area) 및 선(line) 형태로 표시하도록 설정할 수 있으며, 더불어 각각의 색상 및 샘플 간격을 수정할 수 있다. 히스토리 창의 왼쪽에 있는 메뉴 바에서 Large icon, Small icon, List와 Detail 버튼은 창에 표시되는 아이콘의 배열 방법을 정의하는 것이다.
히스토리 셈플은 각각 아이콘 별 모니터링 보다는 여러 항목들을 같이 비교하면서 분석해야 될 필요가 있다. 이때 다양한 히스토리 셈플을 사용하면 되는데, 그 방법은 <그림 10>에 설명했다. 가장 중점으로 같이 비교분석해야 될 값들은 Packets/s, Octets/s, 65-127Bytes/s, 1024-1518Bytes/s, errors/s다. 이 다섯 가지 항목을 추가해서 같이 비교하도록 하자.


히 스토리 샘플의 활용 방안은 다음과 같다.
① 네트워크 트래픽에 대한 실시간 리포팅
② 네트워크 세그먼트에 대한 Long term reporting : Utilization/s, Errors/s, Frame 크기별 분포, Broadcast/s, Multicast/s 등등
③ 항목별 비교를 위해 다양한 샘플 활용 및 보고서 작성을 위해 데이터 저장(Csv or hst)
④ 네트워크 트래픽의 경향 분석
④ 프레임 크기별 분포
- 가장 트래픽이 많은 시간대에 30~60분 관찰
- 대역폭 사용의 효율성 문제
·작은 패킷(<256 bytes)이 많은가?
·큰 패킷 (>1024 bytes)이 적은가?
- 특정 장비의 성능을 알아보기 위해 해당 장비의 CPU나 메모리를 함께 모니터할 것

지 난호와 이번호에 걸쳐 스니퍼에서 제공하는 실시간 모니터링 기능을 살펴봤다. 앞에서 언급된 스니퍼 모니터링 기능은 트래픽의 현재 상황을 모니터링해서 파악하기 위한 기능들로 실제 상세 패킷분석을 하기 위해서는 캡처를 해야만 가능하다. 다음호에서는 실제 패킷을 캡처하고, 분석하기 위한 사전 절차와 분석 보고서 작성 요령 등에 대해 설명하도록 하겠다.