【发布时间】:2020-08-06 15:57:09
【问题描述】:
我尝试在 iOS 14 测试版上运行我的应用。它在 iOS 13 上运行良好,但无法连接到 iOS 14 beta 上的任何服务器。 NEVPNManager.shared().connection.startVPNTunnel() 不会引发任何错误,并且 NEVPNStatus 与我连接的任何服务器变为 .disconnected。我在 iOS 14 上找不到 NEVPNManager 的变化。
这是我的经理的配置:
let p = NEVPNProtocolIKEv2()
p.authenticationMethod = NEVPNIKEAuthenticationMethod.none
p.serverAddress = account.server
p.disconnectOnSleep = false
p.deadPeerDetectionRate = NEVPNIKEv2DeadPeerDetectionRate.medium
p.username = account.account
p.passwordReference = KeychainWrapper.passwordRefForVPNID()
p.disableMOBIKE = false
p.disableRedirect = false
p.enableRevocationCheck = false
p.enablePFS = false
p.useExtendedAuthentication = true
p.useConfigurationAttributeInternalIPSubnet = false
p.remoteIdentifier = account.server
p.localIdentifier = account.account
let manager = NEVPNManager.shared()
manager.protocolConfiguration = p
manager.isEnabled = true
let ruleConnect = NEOnDemandRuleConnect()
ruleConnect.probeURL = account.probeUrl
manager.onDemandRules = [ruleConnect]
manager.isOnDemandEnabled = true
【问题讨论】:
-
因为你的服务器,你的服务器兼容IPv6。
-
我也有类似的问题。如果我手动创建 vpn 配置文件,它连接得很好。但是当我从代码连接时,它会立即断开连接
-
你找到解决办法了吗?
标签: ios swift networkextension nevpnmanager