2014-02-15 2 views

답변

0

파일을 직접 읽는 대신 pcap_open_offline 또는 pcap_fopen_offlinelibpcap에서 사용하십시오. 이렇게하면 저장 파일을 읽고 필터를 제공 할 수 있습니다. 의사 코드는 (당신이 오류 처리를 추가해야합니다) 다음과 같이 진행됩니다

char *fname = "/path/to/my/file"; 
const u_char *packet; 
pcap_t *handle; 

handle = pcap_open_offline (fname, errbuf); 

while (packet = pcap_next(handle,&header)) 
{ 
    char *data = (char *) packet; 
    ... 
} 

pcap_close (handle); 

혹시 당신은 이미 libpcap를 사용하는 경우, 당신은 코드를 게시해야합니다. IP 헤더를 안정적으로 찾으려면 이더넷 유형 (vs ETHER_TYPE_8021Q)을 확인한 다음 TCP 헤더 (IP 헤더의 길이가 다를 수 있음)를 찾아 TCP 헤더에 대한 포인터를 얻으십시오 .