Я сталкиваюсь с проблемой, когда я подключаю протокол IKEv2 в macOS Development, программа работает нормально при разъединении, но когда я работаю над подключением, необходимо перейти к настройке соединений
Я использую протокол IKEv2 для VPN-подключения, используяФайл NetworkExtention,
public func connectIKEv2(config: Configuration, onError: @escaping (String)->Void) {
let p = NEVPNProtocolIKEv2()
if config.pskEnabled {
p.authenticationMethod = NEVPNIKEAuthenticationMethod.sharedSecret
} else {
p.authenticationMethod = NEVPNIKEAuthenticationMethod.none
}
p.serverAddress = config.server
p.disconnectOnSleep = false
p.deadPeerDetectionRate = NEVPNIKEv2DeadPeerDetectionRate.medium
p.username = config.account
p.passwordReference = config.getPasswordRef()
p.sharedSecretReference = config.getPSKRef()
p.disableMOBIKE = false
p.disableRedirect = false
p.enableRevocationCheck = false
p.enablePFS = false
p.useExtendedAuthentication = true
p.useConfigurationAttributeInternalIPSubnet = false
// two lines bellow may depend of your server configuration
p.remoteIdentifier = config.server
p.remoteIdentifier = config.remote
p.localIdentifier = config.account
loadProfile { _ in
self.manager.protocolConfiguration = p
if config.onDemand {
self.manager.onDemandRules = [NEOnDemandRuleConnect()]
self.manager.isOnDemandEnabled = true
}
self.manager.isEnabled = true
self.saveProfile { success in
if !success {
onError("Unable to save vpn profile")
return
}
self.loadProfile() { success in
if !success {
onError("Unable to load profile,")
return
}
let result = self.startVPNTunnel()
print("Show Result, \(result)")
if !result {
onError("Can't connect")
}
}
}
}
}
private func startVPNTunnel() -> Bool {
do {
try self.manager.connection.startVPNTunnel()
return true
} catch NEVPNError.configurationInvalid {
NSLog("Failed to start tunnel (configuration invalid)")
} catch NEVPNError.configurationDisabled {
NSLog("Failed to start tunnel (configuration disabled)")
} catch {
NSLog("Failed to start tunnel (other error)")
}
return true
}
Я сталкиваюсь с ошибкой в macOS Development,
open (/ var / db / DetachedSignatures) - неопределенная ошибка: 0 Ошибка подключения: невозможно загрузить профиль,
но какой-то рабочий код кода при разработке под iOS,