2013-06-26 2 views
0

libjpcap을 사용하여 네트워크에서 패킷을 캡처하고 응용 프로그램에서 처리합니다. 현재 필터를 사용하여 특정 대상에서만 캡처 할 수 있습니다. 예를 들어 src host 10.159.2.3은 해당 끝점의 트래픽 만 캡처합니다.GRE 패킷의 필터 페이로드 ip/dst

최근에 우리는 GRE 패킷 지원을 추가했지만 필터는 사용자가 예상 한대로 작동하지 않습니다. 우리의 경우, GRE 패킷의 페이로드는 IPv4 패킷입니다.

포함 된 IPv4 패킷의 src 및/또는 dst를 기반으로 패킷을 필터링하는 필터를 입력하는 방법이 있습니까? 위리어 마크가 사건을 처리 할 것이라는 것을 알고 있습니다. 그래서 여기에 그것을 포함하려고합니다.

미리 감사드립니다.

답변

0

이 방법이 있습니다. pcap filter expresions을 사용하면 오프셋과 길이로 필터링 할 수 있습니다. wireshark를 사용하여 .pcap 캡처를 검사하여 페이로드 IP 패킷 (GRE 내부 패킷)의 src 주소가 외부 IP 패킷의 헤더에서 54 바이트 오프셋을 갖는지 확인했습니다. 페이로드에 IP 패킷의 DST 주소 그래서 우리는 필터 16 진수 16 진수로 변환 연결된 진수를 나타낸다

(ip[54:4] = 0X0ac004ef) or (ip[58:4] = 0X0ac004ef) 

으로서이 표현을 포함 58.

의 바이트 오프셋을 갖는다. 우리가 필터링하고자하는 ip의 값.