With the NetworkExtension framework, you can customize and extend the core networking features of iOS and macOS. Specifically, you can:
Change the system’s Wi-Fi configuration
Integrate your app with the hotspot network subsystem (Hotspot Helper)
Create and manage VPN configurations, using the built-in VPN protocols (Personal VPN) or a custom VPN protocol
Implement an on-device content filter
Implement an on-device DNS proxy
The NetworkExtension framework is available in macOS and iOS, but not all features are available on both platforms and some features have specific restrictions (for example, some features only work on supervised iOS devices). The documentation for each feature describes these restrictions.