---
title: Network Extensions Entitlement
framework: bundleresources
role: symbol
role_heading: Property List Key
path: bundleresources/entitlements/com.apple.developer.networking.networkextension
---

# Network Extensions Entitlement

The APIs an app can use to customize networking features.

## Possible Values

dns-proxy: The APIs you use to proxy DNS queries. app-proxy-provider: The APIs you use to proxy TCP and UDP connections. content-filter-provider: The filter APIs you use to allow or deny network connections created by other apps on the system. packet-tunnel-provider: The APIs you use to tunnel IP packets to a remote network using any custom tunneling protocol. dns-proxy-systemextension: The APIs you use to proxy DNS queries, when signed with a Developer ID profile. app-proxy-provider-systemextension: The APIs you use to proxy TCP and UDP connections, when signed with a Developer ID profile. content-filter-provider-systemextension: The filter APIs you use to allow or deny network connections created by other apps on the system, when signed with a Developer ID profile. packet-tunnel-provider-systemextension: The APIs you use to tunnel IP packets to a remote network using any custom tunneling protocol, when signed with a Developer ID profile. dns-settings: The APIs you use to create and manage a system-wide DNS configuration. app-push-provider: The APIs you use for providing functionality similar to Apple Push Notification Service when access to the wider internet is unavailable. relay: The APIs you use to relay TCP and UDP connections, when signed with a Developer ID profile. url-filter-provider: The APIs you use to create and manage URL filters.

## Discussion

Discussion To add this entitlement to an App Store app, enable the Network Extensions capability in Xcode. To add this entitlement to a macOS app distributed outside of the Mac App Store, perform the following steps: In the Certificates, Identifiers and Profiles section of the developer site, enable the Network Extension capability for your Developer ID–signed app. Generate a new provisioning profile and download it. On your Mac, drag the downloaded provisioning profile to Xcode to install it. In your Xcode project, enable manual signing and select the provisioning profile downloaded earlier and its associated certificate. Update the project’s entitlements.plist to include the com.apple.developer.networking.networkextension key and the values of the entitlement.

## See Also

### Networking

- [Personal VPN Entitlement](bundleresources/entitlements/com.apple.developer.networking.vpn.api.md)
- [Associated Domains Entitlement](bundleresources/entitlements/com.apple.developer.associated-domains.md)
- [com.apple.developer.networking.multicast](bundleresources/entitlements/com.apple.developer.networking.multicast.md)
- [com.apple.developer.associated-domains.applinks.read-write](bundleresources/entitlements/com.apple.developer.associated-domains.applinks.read-write.md)
- [com.apple.developer.networking.manage-thread-network-credentials](bundleresources/entitlements/com.apple.developer.networking.manage-thread-network-credentials.md)
- [5G Network Slicing App Category](bundleresources/entitlements/com.apple.developer.networking.slicing.appcategory.md)
- [5G Network Slicing Traffic Category](bundleresources/entitlements/com.apple.developer.networking.slicing.trafficcategory.md)
- [com.apple.developer.networking.vmnet](bundleresources/entitlements/com.apple.developer.networking.vmnet.md)
- [Configuring your app for ultra-constrained networks](bundleresources/configuring-your-app-for-ultra-constrained-networks.md)
- [com.apple.developer.networking.carrier-constrained.appcategory](bundleresources/entitlements/com.apple.developer.networking.carrier-constrained.appcategory.md)
- [com.apple.developer.networking.carrier-constrained.app-optimized](bundleresources/entitlements/com.apple.developer.networking.carrier-constrained.app-optimized.md)
