강좌

HOME > 강좌 >
강좌| 리눅스 및 오픈소스에 관련된 강좌를 보실 수 있습니다.
 
mtr : traceroute + ping 네트워크 진단도구(TUI, GUI)
조회 : 10,461  



mtr : traceroute + ping 네트워크 진단도구(TUI, GUI)


    작성자 : 에스유
    작성일 : 2014.06.
    대상 OS : SULinux Server 2014 64Bit


  매월 강좌를 쓰며 그동안 게을리 했던 리눅스에 대한 학습을 하고 있다. 열심히 배우고 익히면 4년후에는 완벽하게 그 기술을 써먹을 것이라고 확신한다. 4년전 열심히 배우고 익혔던 것이 내 지식이 되어 지금의 내가 있는 것이라 생각한다. 매월 강좌 한편을 쓰기로 하고 강좌 쓸만 한 것을 찾다가 mtr을 선택했다. 
  mtr은 오래전에 개발되어 대부분의 배포판에 포함되어 배포되고 있지만 그 존재를 아는 사람은 그리 많지 않다. 대부분 tracert 또는 traceroute를 사용하여 경로를 찾아내고 ping으로 응답시간을 측정하여 어렵게 네트워크 장애를 찾아내고 있다. mtr은 바로 이러한 어려움을 해소하기 위해 개발되었다. traceroute와 ping의 기능을 혼합하여 만든 네트워크 진단도구. mtr 또한 SSH등을 이용하여 서버에 터미널로 접속하여 시스템 상황을 볼 수 있는 TUI 프로그램이다. 또한 GTK 기반의 GUI를 제공한다. 


다음과 같은 기능이 있다. (0.85 기준)
    - 출발지에서 목적지까지 거쳐가는 경로 찾아냄(traceroute)
    - 경로에 존재하는 게이트웨이에  대해 응답시간 측정(ping)
    - 각 게이트웨이 응답시간으리 푱균, 최적, 최악, 누락(Loss)를 찾아냄
    - GUI 환경 제공
    - 리포트 기능 제공 (네트워크 진단용으로 용이)

 기능을 많이 적어두긴 했지만, 그리 많은 기능이 있지는 않다. 네트워크를 진단한는 강력한 프로그램만은 확실하다.



1. mtr 설치
    mtr은 대부분의 배포판에 이미 설치되어 있거나 패키지 형태로 제공된다. 
- 레드햇 계열을 사용한다면 "yum install mtr
    -우분투등 데비안 계열을 사용한다면 "apt-get install mtr" 으로 쉽게 설치할 수 있다.

   1.1. 소스 다운로드 
       이렇게 좋은 소프트웨어를 사용하려 한다면, 한번쯤 배포하는 사이트에 방문하는 예의라고 생각한다.
     최신 버전 및 기능(기능에 대한 설명이 없어 아쉽다) 또한 확인도 하고.

       배포사이트 : http://www.bitwizard.nl/mtr/index.html

 
      위 사이트에서 "ftp://ftp.bitwizard.nl/mtr/"링크를 클릭하여 최신버전을 다운로드 한다. 
      서버에서 직접 다운로드 하려면 

        wget ftp://ftp.bitwizard.nl/mtr/mtr-0.85.tar.gz

      2014.06.17 기준 0.85 이다.


   1.2. 압축해제 및 설치
tar xvfp mtr-0.85.tar.gz
  cd mtr-0.85
        ./configure
make && make install 

* 별 문제없이 설치되나, GUI 환경에서 사용하기 위해서는 gtk관련 옵션과 관련 라이브러리가 있어야 한다. 
       

2. mtr 사용

   2.1. mtr 사용법

   위와 같이 설치하였다면 터미널 창에서 다음과 같이 입력한다.


   mtr sulinux.net



  위 그림과 같은 결과를 얻을 수 있을 것이다. 
- Host : 목적지까지 거쳐가는 게이트웨이어 IP
- Loss : 손실율
- Snt : ping을 보낸 수(누적)
- Last : ping 최근 응답시간
- Avg : ping 평균 응답시간 
- Best : ping 중 제일 빠른 응답시간
- Wrst : ping 중 최악 응답시간
  - StDev : 표준편차
* H : 설명, D:디스플레이모드, R: 통계 재시작, O:정렬 필드 선택, q:종료

 
   2.2. mtr 대화형 명령어


"h"키를 누르게 되면 위 그림과 같은 도움말을 볼 수 있다.


- 호스트 이름 및 bind하는 IP, 시간을 보여준다. 
- 각 키들은 다음과 같은 역할을 한다.
h 또는 ? : 본 도움말 화면
p : 정지 , SPACE 키로 복귀
d : 디스플레이 모드 변경
e : MPLS 정보 on/off
n : DNS 역질의 on/off , 명령어 옵션 -n
r : 카운터 재설정
o 문자열 : 표시할 컬럼 선택, 기본 "LRS N BAWV", 명령어 옵션 -o
j : 지연(LS NABWV)/jitter(DR AGJMXI) 상태 표시 유무
c 숫자 : 조사할 회수 설정 , 기본은 무한대, 명령어 옵션 -o
i 숫자 : ping 간격(초) 설정,  기본 1초, 명령어 옵션 -i
f 숫자 : 초기 TTL 설정 , 기본 1, 
m 숫자 : 최대 TTL 설정 , 기본 = 홉수
s 숫자 : 패킷사이즈 설정, 음수 설정시 렌덤, 명령어 옵션 -s
b 숫자 : ping 비트 패턴 , 숫자는 0이상, 255이하, 음수 설정시 렌덤
Q 숫자 : ping 패킷 TOS 설정
u : ICMP ECHO 또는 UDP 다이어그램 선택
y : IP 정보
z : ASN 정보 on/off



   2.3. mtr 옵션을 사용한 실무 예제
  
--help 옵션을 주게되면 다음과 같은 옵션들을 볼 수 있다. 아쉬운 점은 옵션에 대한 설명이 너무 없어 어렵다는 것이다.
옵션에 대한 설명은 man 페이지를 참조하는 것이 빠를 것이다.

mtr --help
usage: mtr [-hvrwctglspniuT46] [--help] [--version] [--report]
[--report-wide] [--report-cycles=COUNT] [--curses] [--gtk]
[--csv|-C] [--raw] [--split] [--mpls] [--no-dns] [--show-ips]
[--address interface] [--filename=FILE|-F]
[--ipinfo=item_no|-y item_no]
[--aslookup|-z]
[--psize=bytes/-s bytes]
[--report-wide|-w] [-u|-T] [--port=PORT] [--timeout=SECONDS]
[--interval=SECONDS] HOSTNAME


     2.3.1. 네트워크 진단 리포트
네트워크 진단이 필요할 때 다음과 같은 옵션으로 해보자.
mtr -r -c 10 sulinux.net



위 옵션에 대한 설명은
  -r  : 리포트 모드로 실행
-c 10 : 조사할 횟수는 10회

위와 같이 실행하여 호스트만 바꾼다면, 리포트를 만들 수 있을 것이다.


 
  이상으로 mtr에 대한 강좌를 마무리 합니다. mtr은 꼭 기억해야할 필수 명령어입니다. 시스템 장애시 빠르게 파악하고 판단하는 근거가 되기 때문입니다. 강좌의 설명에 있어 오타가 있거나, 내용이 다른 부분이 있으면 언제든지 service@suidc.com으로 신고 해 주시기 바랍니다. 2014년 이렇게 좋은 것이 있다는 것을 많은 사람들에게 알려 주고 싶어하는 doly가...


[원글링크] : https://www.linux.co.kr/home2/board/subbs/board.php?bo_table=lecture&wr_id=1811


이 글을 트위터로 보내기 이 글을 페이스북으로 보내기 이 글을 미투데이로 보내기

 
관리자