Posts

Post not yet marked as solved
5 Replies
Here we don’t want to push our configuration profile via MDM. We want to create our VPN configuration profile programmatically, so that we can have all the controls over the VPN Profile (like switching on/off the VPN or other telemetry data).That’s why I tried to use the inbuilt IPSec/IKEv2 Protocol of iOS as the VPN Protocol and used NETunnelProvider framework to create the profile in ‘VPN CONFIGURATIONS’ programmatically via our iOS App.
Post not yet marked as solved
5 Replies
We are using our application for Enterprise organisations. So, we need our application in ‘VPN CONFIGURATIONS’ instead of in ‘PERSONAL VPN’. Earlier we used NEVPNManager and it landed up in ‘PERSONAL VPN’ and it worked properly with our VPN Server which is using IPSec/IKEv2 Protocol. Now, we want the same profile to be in ‘VPN CONFIGURATIONS’ for which we need to use NETunnelProvider. As our backend VPN Server is using IPSec/IKEv2 Protocol so, we want to use inbuilt IPSec/IKEv2 Protocol of iOS as the VPN Protocol.How I tried to use inbuilt IKEv2 protocol is followed this-self.vpnManager.protocolConfiguration = self.ikev2Type()where the body of self.ikev2Type() is something like this-func ikev2Type() -> NEVPNProtocolIKEv2 { let vpnProtocolIKEv2 = NEVPNProtocolIKEv2() vpnProtocolIKEv2.serverAddress = Constant.serverAddress vpnProtocolIKEv2.remoteIdentifier = Constant.remoteIdentifier // Other setup related to IKEv2 Protocol …………… …………… return vpnProtocolIKEv2 }What I have tried is to use inbuilt IKEv2 protocol as a helper and setting the same object of protocolConfiguration. Thats how I am trying to use inbuilt IKEv2 protocol of iOS. Please let me know, if I am going to right direction or not. Otherwise what I can do further to make it work.TIA.