SimpleTunnel: Customized Networking Using the NetworkExtension Framework

Last Revision:
Version 1.3, 2016-10-04
Updated to Swift 3
(Full Revision History)
Build Requirements:
Xcode 8.0, iOS 9.0 SDK, OS X 10.11 SDK
Runtime Requirements:
iOS 9.0, OS X 10.11

The Network Extension framework exposes APIs that give you the ability to customize the networking features of iOS and OS X. This sample project demonstrates how to:

- Use the NEPacketTunnelProvider class to implement a custom VPN tunneling protocol. - Use the NETunnelProviderManager class to create and manage VPN configurations that use the custom VPN tunneling protocol. - Use the NEAppProxyProvider class to implement a custom transparent network proxy protocol. - Use the NEAppProxyProviderManager class to manage VPN configurations that use the transparent network proxy protocol. - Use the NEFilterControlProvider and NEFilterDataProvider classes to implement a custom on-device content filtering service. - Use the NEFilterManager class to configure the custom filtering service.