如何将代理配置添加到VPN?

时间:2017-06-04 04:22:19

标签: ios swift swift3 proxy nevpnmanager

以下是我用来通过我的应用添加VPN配置的一些示例代码。我的问题是,我怎样才能添加代理配置。在设置应用程序和Apple Configurator中,用户可以添加代理设置(自动或手动)及其VPN设置。

下面是我找到的一些示例代码,但我找不到关于如何添加代理的最轻微线索。

let manager = NEVPNManager.shared()
    manager.loadFromPreferences { (error) -> Void in
        if manager.protocolConfiguration  == nil {
            let newIPSec = NEVPNProtocolIKEv2()
            newIPSec.serverAddress = "mycompany.vpn"
            newIPSec.username = "myvpnusername"
            newIPSec.identityDataPassword = "myvpnpassword"
            newIPSec.authenticationMethod = NEVPNIKEAuthenticationMethod.none
            newIPSec.disconnectOnSleep = false

            manager.protocolConfiguration = newIPSec
            manager.isEnabled = true

            manager.saveToPreferences(completionHandler: { (error) -> Void in

            })
        }

1 个答案:

答案 0 :(得分:1)

在调用saveToPreferences之前,只需添加:

let proxy = NEProxySettings()
proxy.autoProxyConfigurationEnabled = true
proxy.proxyAutoConfigurationURL = URL(string: "url_of_proxy.pac")
manager.protocolConfiguration.proxySettings = proxy