A packet capture app without remote VPN server. A demonstration for how to use NEPacketTunnelProvider and NetworkExtension.framwork.

How to build

  1. Open this xcodeproj with XCode, select AUCapture target, in General > Identity section, change Bundle Identifier to your Bundle ID.

  2. Do the same thing for PacketTunnel target.

  3. Change the App Group of both targets to yours.

Presentation at iOSDC 2021


If you can run it correctly, the Xcode console will look like the following.

Screen Shot