0

我在 ios 上遇到 VPN 问题。我使用此代码。

let result = NEOnDemandRuleConnect()
result.interfaceTypeMatch = .any
manager.onDemandRules = [result]
manager.isOnDemandEnabled = true

有时,如果我在 1-2 小时的睡眠后解锁 iPhone,VPN 将无法正常工作。显示状态栏中的 VPN 图标,显示 wifi 连接图标,但网络无法正常工作(我无法在 safari 中加载任何页面)。如果我在应用程序或系统设置中手动重新连接 VPN - 它开始正常工作。我正在使用ipsec协议。

我该如何解决这个问题?

4

2 回答 2

1

我没有使用过 IPSec 协议,但对网络扩展中的 VPN 有一些经验。覆盖你的睡眠和唤醒方法PacketTunnelProvider。您应该在此处指定隧道在进入睡眠状态时的行为方式以及在唤醒方法中如何重新激活它。在 Apple 的论坛中查看答案。

您还应该设置disconnectOnSleepfalse防止隧道在进入睡眠状态时断开连接(不言自明)。

于 2019-09-04T20:24:36.067 回答
0

我们以其他方式解决了一个问题——我们用ikev2替换了ipsec ,现在 VPN 可以正常工作了。

于 2019-09-28T18:29:09.103 回答