Always-On VPN on iPhone X?

I’m considering making the switch from Android to iPhone, and one of the things I love about Android is the Always-On VPN, which forces all packets to be encrypted with the VPN, regardless of whether your phone is in sleep or not.

Basically, Android VPN applications hook into the Android API allowing us to select a third-party VPN application as the system always-on VPN from Android’s settings.

If the VPN is in sleep mode or disconnected, no packets will go through, so it effectively serves as a killswitch.

Does iOS feature similar functionality?

I was looking at Apple Developer documentation and it seems like NEOnDemandRuleConnect does the trick - does anyone know if Private Internet Access uses this?

NEOnDemandRuleConnect

Overview
When rules of this class match, the VPN connection is started whenever an application running on the system opens a network connection. Network connectivity will be blocked until the VPN is connected.

You can get an app that does it. I use ZenMate VPN, and it has the “always on” functionality you speak of.

You cannot configure IPSec and L2TP protocols to be always connected on iOS. However, you should be able to configure a VPN service that uses IKEv2 protocol to be always connected.

I do know that Mullvad uses OpenVPN and they mention turning on “Seamless Tunnel” and “Layer 2 Reachability” that effectively make the connection ALWAYS on even when switching LTE to WiFi.

Look for vpns with connect on demand feature