VPN 隧道问题

VPN Tunnels issue

提问人:Abhishek Choudhary 提问时间:11/17/2023 最后编辑:JonasAbhishek Choudhary 更新时间:11/18/2023 访问量:12

问:

我一直在开发一个需要创建两条隧道的 vpn 应用程序。我创建了 vpn 隧道并将其与特定服务器连接,然后断开了隧道并为另一个需要 vpn 隧道的功能制作了 vpn 隧道。此操作工作正常,但有时或随机激活错误的配置隧道。我确保在创建和启动新隧道之前停止以前的隧道。我一直在用这个

    /// code to stop tunnel session
   wg_log(.debug, message: "startDeactivation: Tunnel: \(name)")
   (tunnelProvider.connection as? NETunnelProviderSession)?.stopTunnel()

我尝试在加载首选项后调用它,但有时仍然显示随机错误,其中选择了具有不同配置的隧道。

NEVPNManager.shared().loadFromPreferences { error in
  assert(error == nil, "Failed to load preferences: \(error!.localizedDescription)")
  self.tunnelProvider.connection.stopVPNTunnel()
 
}

我是网络扩展的新手,无法想出更好的解决方案。我正在使用 wireguard 库进行 vpn 连接。有没有办法维护两条隧道,并根据要求使用特定的隧道,或者有没有办法覆盖以前的VPN配置。

我尝试使用 wireguard 库创建两条隧道,并根据需要断开一条隧道并连接另一条隧道。有几次我选错了隧道,即使我通过连接了另一条隧道,也要连接。 在创建第二条隧道之前,我断开了另一条隧道的连接,当需要再次激活第一条隧道时,我断开了第二条隧道的连接。这样我想维持循环,但最终我激活了错误的隧道(不是每次)。

iOS VPN 网络扩展 NEVPN管理器 WireGuard

评论


答: 暂无答案