1. Libpcap(Portable Packet Capturing Library)

패킷을 캡쳐하기 위한 도구로는 BPF(Berkeley Packet Filter), DLPI, NIT, SNOOP, SNIT, SOCK_PACKET, LSF(Linux Socket Filter), drain등 각 운영체제별로 다양한 도구가 있다. 하지만 여러분이 운영체제별로 패킷을 캡쳐하기 위한 위한 코드를 별도로 구성해야 한다면 시작하기도 전에 포기할지도 모른다. 하지만 이 모든 도구들을 수용하는 Portable한 API가 있는데 이것이 바로 libpcap이다.

라이브러리 사용자는 운영체제의 각기 다른 datalink로의 접근 방법에 상관없이 libpcap을 이용하여 소기의 목적을 달성할 수 있다. libpcap을 이용한 대표적인 툴이 바로 tcpdump이다.