검색어 입력폼

[리눅스]tcpdump

등록일 2006.06.22 파일확장자기타파일 (c) | 가격 1,000원

소개글

tcpdump를 이용하여 서버에서 출발 혹은 도착하는 모든 패킷을 파일에 저장하고 이를 프린트하는 프로그램.

컴파일 실행환경

리눅스/gcc

본문내용

#include <stdio.h>

int main(int argc, char** argv)
{
// 매게변수의 수 체크 하여 에레메세지 출력 및 프로그램 종료
if(argc != 3)
{
printf("Usage : %s <packet size> <host address>n", argv[0]);
exit(1);
}

char judge; // 출력 관련 사용자의 입력을 저장하기 위한 변수 선언
char m_strExecute[100]; // system() 호출시 사용될 string을 저장하기 위한 배열 선언
int m_Size = atoi(argv[1]); // 확인할 패킷의 양을 저장할 변수 선언 및 값 저장

// system() 호출시 사용될 string 값 m_strExecute에 저장
// -c 옵션으로 패킷수 지정, -w 옵션으로 출력 위치 파일로 전환
sprintf(m_strExecute, "tcpdump -c %d -w packet.pck host %s",m_Size, argv[2]);
system(m_strExecute); // m_strExecute에 저장된 shell command를 실행
다운로드 맨위로