I am trying to connect with a proxy VPN, all of the confines are correct, but I don't know why I got error
here is my code:
NETunnelProviderManager.loadAllFromPreferences { (savedManagers: [NETunnelProviderManager]?, error: Error?) in
if let error = error {
print(error)
}
if let savedManagers = savedManagers {
if savedManagers.count > 0 {
self.vpnManager = savedManagers[0]
}
}
self.vpnManager.loadFromPreferences(completionHandler: { (error:Error?) in
if let error = error {
print(error)
}
let providerProtocol = NETunnelProviderProtocol()
providerProtocol.providerBundleIdentifier = self.tunnelBundleId
providerProtocol.providerConfiguration = ["port": self.serverPort,
"server": self.serverAddress,
"ip": self.ip,
"subnet": self.subnet,
"mtu": self.mtu,
"dns": self.dns
]
providerProtocol.serverAddress = self.serverAddress
self.vpnManager.protocolConfiguration = providerProtocol
self.vpnManager.localizedDescription = "NEPacketTunnelVPNDemoConfig"
self.vpnManager.isEnabled = true
self.vpnManager.saveToPreferences(completionHandler: { (error:Error?) in
if let error = error {
print(error)
} else {
print("Save successfully")
do {
try self.vpnManager.connection.startVPNTunnel()
} catch NEVPNError.configurationInvalid {
print("Failed to start tunnel (configuration invalid)")
} catch NEVPNError.configurationDisabled {
print("Failed to start tunnel (configuration disabled)")
} catch {
print("Failed to start tunnel (other error)")
}
}
})
})
}