Skip to main content
Version: v22.05

Getting Started

PcapPlusPlus is a multi-platform C++ library for capturing, parsing and crafting of network packets. It is designed to be efficient, powerful and easy to use.

PcapPlusPlus enables decoding and forging capabilities for a large variety of network protocols. It also provides easy to use C++ wrappers for the most popular packet processing engines such as libpcap, WinPcap, Npcap (WinPcap's successor), DPDK and PF_RING.

v22.05 Release

Quick Start​

This guide will help you install and build your first PcapPlusPlus application. You can find more information in the Tutorials and in the installation guide.

Please choose your platform:

Step 1 - install PcapPlusPlus​

Before installing PcapPlusPlus make sure you have the prerequisites installed for Linux.

Pre-compiled packages are available for recent versions of Ubuntu, Fedora and CentOS. You can find them under the v22.05 release. After downloading and extracting the archive file go to: /path/to/your/package/ and run the installation script:

./install.sh

Another option is using Homebrew on Linux if you have it installed on your system:

brew install pcapplusplus

If you have another Linux distribution or GCC version you'll need to build PcapPlusPlus from source. Make sure not to skip the installation part.

Step 2 - create your first app​

If you downloaded a pre-compiled package go to: /path/to/your/package/example-app.

If you built it from source go to: /path/to/pcapplusplus/source/Tutorials/Tutorial-HelloWorld.

Make sure you see the following files:

|-- main.cpp
|-- 1_packet.pcap

main.cpp is the example application we'll use.

1_packet.pcap is a pcap file the app reads from.

Step 3 - create a Makefile​

If you downloaded a pre-compiled package you can find a Makefile in /path/to/your/package/example-app. This Makefile is already configured.

If you built it from source:

  • go to /path/to/pcapplusplus/source/Tutorials/Tutorial-HelloWorld
  • rename Makefile.non_windows to Makefile

Step 4 - build and run your app​

Run make to build the app:

$ make

An executable file will be created which contains the compiled app. You can now run it and should be able to see the following output:

Source IP is '10.0.0.138'; Dest IP is '10.0.0.1'