Is it possible to run a Per-App VPN side-by-side with a Personal VPN on an iOS device?
Specifically I would like to assign a Per-App VPN to a specific iOS application so that the traffic of that application flows through the Per-App VPN, and to have a Personal VPN installed that handles the traffic for all other applications.
I recall previously testing this on an iOS 11.1 device and from memory it worked. I have tested this again today using an iPhone X running iOS 12.1.2, and it seems that the ability to run each VPN is mutually exclusive. I.e. to run the Per-App VPN the Personal VPN must first be disabled, and to run the Personal VPN the Per-App VPN must be disabled.
I am using 'SurfEasy VPN' as a Personal VPN, and the Per-App VPN is a custom VPN application operating as a NEPacketTunnelProvider.
The following appears in the console when I try to connect 'SurfEasy VPN' while the Per-App VPN is running:
strings debug com.apple.CFBundle 10:22:27.482880 +1100 nesessionmanager Bundle: <private>, key: VPN_DISCONNECT_ERROR_INTERNAL_ERROR, value: VPN_DISCONNECT_ERROR_INTERNAL_ERROR, table: Localizable, localizationName: (null), result: The VPN session failed because an internal error occurred.
Is this behaviour as expected, or should both VPNs be able to operate side-by-side? Is there something that could be set in my custom Per-App VPN or the SurfEasy VPN that could cause conflict?
Kind regards,
Jordan