【发布时间】:2021-09-11 22:51:26
【问题描述】:
我正在尝试为 iOS 创建一个 flutter+swift 应用程序,它可以确定是否存在活动的 VPN 连接,并可以确定我的应用程序是否通过 VPN 进行通信。
目前,我正在尝试检查我的应用,是否有类似的网络接口(如果有,则表示 VPN 连接处于活动状态):
tap, tun, ppp, ipsec, ipsec0, utun1, utun2, pptp
不幸的是,这效果不好。在某些 iOS 设备上,我看到有一个现有的“ipsec”接口,但实际上没有 VPN 连接。在其他一些设备上,我发现它可以正常工作(主要是 iOS14+)。
我读过它,似乎“ipsec”接口通常用于处理 WiFi 呼叫和 Apple 设备之间的通信。这是正确的吗?是否意味着无法确定是否设置了这个接口(因为它可以由网络提供商或Apple生态系统控制)?
我还想知道是否有可靠的方法来判断设备是否有活动的 VPN 连接,或者至少判断给定的应用目前是否正在使用 per-app VPN?
【问题讨论】:
标签: ios swift flutter vpn network-interface