Server Engineer/AIX

iptrace / ipreport

까만핀치 2016. 2. 18. 20:55

고객사에 문제가 있어서 네트워크 패킷을 봐야할 일이 생겼다..

tcpdump와는 다른 정보가 필요해서 찾아보니 iptrace 라는 툴이 있네..

 

1. iptrace

# iptrace -a -i en0 -s 192.168.0.1 -b -d 192.168.0.2 -p 9988 /check/iptrace.bin

 

en0 인터페이스를 통해 192.168.0.1과 192.168.0.2가 9988 포트로 주고 받는 패킷을

/check/iptrace.bin로 저장하는 명령이다.

-a 는 arp 패킷을 표시하지 않는 옵션.

 

2. ipreport

iptrace로 저장한 로그는 바이너리 파일이기 때문에 텍스트 형식으로 변환이 필요하다.

# ipreport -ns /check/iptrace.bin > /check/iptrace.txt

 

-ns 옵션은 -n은 패킷 뭐 넘버를 어찌저찌해서 표시해주는거 같고, -s는 문장 앞에 프로토콜 종류를 붙여준다.

여튼 저렇게 하면 텍스트 형식으로 바뀌어서 vi로 열어 볼 수 있는데,

몇번 해본 결과 바이너리 파일의 대충 5배 크기가 되는거 같다.

 

iptrace.bin이 5MB면 iptrace.txt는 25MB가 된다는 것..

어휴 뭐 쫌만 모니터링 하니 바이너리 파일이 몇십MB는 그냥 넘던데 24시간 걸어두면 어찌되려나;;;

변환 하다가 서버 뻗는거 아닌가 모르겠네.... -_-a

 

여튼 이 2가지를 잘 쓰면 좀 더 폼나는 엔지니어가 될 수 있을거 같다.

 

라지만...

문제 처리는 못하고 블로그에 글이나 올리는 현실... ㅜㅜ

 

----------

 

혹시나 해서 올려두는 크론탭 등록 용 시작 / 종료 스크립트.

사용하기 전에 디스크 공간이 충분히 있나 꼭 확인 하자!

 

1. 시작 스크립트

#!/bin/sh
export DAY=`date +%Y%m%d`
iptrace -a -i en0 -s 192.168.0.1 -b -d 192.168.0.2 -p 1415 /iptrace/bin/$DAY.iptrace

 

2. 종료 스크립트

#!/bin/sh
ps -ef | grep iptrac[e] | awk '{print "kill -15 "$2}' | sh -x