问题标签 [networkextension]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1481 浏览

ios - Negotiation with the VPN server has failed (NEVPNProtocolIPSec, Swift 3.0.2)

guys.

I'm trying to setup a VPN connection to my server, but something goes wrong.

I've tried setting it up manually and it works.

Here's my configuration code. The server object has a name and a correct host for sure and i tried disabling extended authentication. Afaik remote and local identifiers are just random strings, so i have no idea what i could have done wrong.

After config is saved i do:

But it never throws an error, just prompts me with "Negotiation with the VPN server has failed" in a system alert. Btw, is it possible to catch this kind of errors?

0 投票
1 回答
500 浏览

ios - 我们如何更新服务器地址和用户名等 NEVPNProtocol 参数?

我的应用程序就像 IPSec VPN 服务器 (strongSwan) 的 VPN 客户端。我已经使用 NEVPNManager 来设置 VPN 配置文件。代码是这样的:

这里的用户名、密码服务器地址等值存储在上面定义的 MACROS 中。根据所需的设计,密码和 sharedSecret 将存储为 Persistent KeyChain 项。在此设置中,如何优雅地更改用户名、密码、serverAddress、sharedSecret 等值?

到目前为止我已经尝试过:

  1. 我更改了代码中的服务器地址、用户名等值。我使用 storeData 函数覆盖密码和 sharedSecret 持久钥匙串项。但是,当我在进行这些更改后运行应用程序时,我无法连接到新的 VPN 服务器。请注意,我必须使用的新值没有犯任何错误。我在更新前仔细检查了。另请注意,当我使用这些新参数创建 .mobileconfig 文件时,我能够连接到 VPN 服务器。只是我的 VPN 客户端应用程序无法再连接到服务器。它会尝试连接并再次断开连接。卸载应用程序也没有效果。

  2. 设置 manager.protocolConfiguration = nil。这样做没有任何效果。安装的 protocolConfiguration 保持不变。

我不想通过调用 manager removePreferencesWithCompletionHandler:] 来删除 VPN 配置文件,因为用户在尝试连接到 VPN 服务器时会再次看到与 VPN 相关的弹出窗口。如果有人以前这样做过,请提供帮助。谢谢。

0 投票
1 回答
1198 浏览

ios - 使用 iOS vpn 配置时,VPN 隧道卡在连接状态

我正在尝试使用网络扩展启动 VPN 数据包隧道,但 vpn 总是卡在“正在连接”状态。但是,个人 VPN 确实使用这些相同的设置进行连接。调用 startVPNtunnel 后,PackTunnel 扩展函数被调用,但状态仍为 Connecting

0 投票
1 回答
520 浏览

ios - 使用 NEPacketTunnelProvider 时被过滤的数据包

我正在使用 NEPacketTunnelProvider 的每个应用程序网络扩展,并且注意到当我使用利用 WKWebView 的测试程序时,我看到一些 URL 甚至没有进入 readPacketsWithCompletionHandler:

例如,当我尝试点击 URL“ http://testweb.eng.local ”时,我根本看不到它进入。但是,如果我使用 IP 地址,我会看到它通过处理程序进入,并看到它通过我的 VPN 正常,这样我就可以到达后端。

为什么“testweb.eng.local”会被过滤,我该如何控制?如果可能的话,我不想过滤任何内容,而是让该应用程序中的所有内容都通过 VPN。

更新:澄清一下,matchDomains 和 exceptionList(NEDNSSettings 的)都为零。所以我相信一切都应该经历。

0 投票
1 回答
5458 浏览

ios - 如何在 iOS 11 中使用 NEDNSProxyProvider

在网络方面,DNS 代理是 iOS 11 的最大功能之一。但他们没有提供太多关于它的文档或示例。还有一个关于它的讨论,他们刚刚描述了 DNS 代理的可能性。

我想创建一个工作样本,但直到现在还没有成功。因此,我创建了一个具有 DNS 代理权利的网络扩展,并添加了一个 DNS 代理提供程序。这是代码:

然后在 AppDelegate 中,我声明一个 NEDNSProxyManager 并将其用作:

问题/问题:

  1. 为什么不startProxy或不handleNewFlow叫?设置有什么问题吗?
  2. 如何提及自定义 DNS 地址?
0 投票
1 回答
105 浏览

ios - 我可以在 NETunnelProvider 子类 ios 中进行 Web 服务调用吗

我正在尝试进行网络服务调用以检查隧道提供商网络扩展中 DNS 服务的状态?根据苹果指南是否允许?

实际上我正在尝试使用网络扩展框架来实现自定义隧道,以便所有流量都应该通过这个隧道。现在,如果 VPN 已连接,我必须每 10 分钟使用网络服务调用检查一次 DNS 服务状态。

所以我的问题是 - 我可以使用调度时间在隧道代码(网络扩展)内进行网络服务调用吗?

谢谢

0 投票
0 回答
170 浏览

ios - 从 NEVPNManager 检索失败的连接原因?

我正在尝试IKEv2使用NEVPNManager.

我成功地使用并启动了连接过程更新了我的个人资料NEVPNProtocolIKEv2,但几秒钟后连接停止而没有任何错误。

有什么方法可以让我获得有关连接的更多信息以了解它失败的原因?该对象似乎没有任何帮助NEVPNManager

https://developer.apple.com/documentation/networkextension/nevpnconnection?language=objc

0 投票
0 回答
374 浏览

ios11 - 网络扩展 iOS 11

我正在使用 NEHotspotHelper API。在 iOS 11 beta 8 中,命令 filterScanList 发生了一个奇怪的行为。我交付的网络没有显示密钥 kNEHotspotHelperOptionDisplayName 的消息。我需要关闭/打开 Wi-Fi 才能显示它们。这是一个错误?

0 投票
1 回答
313 浏览

ios - Xcode 8 无效的代码签名权利

我正在创建一个使用 iOS 网络扩展的应用程序。该应用程序运行良好,我还可以导出 IPA 文件。但是当我尝试将其上传到 testFlight 时,会发生此错误:

试飞错误

我不知道发生了什么事。我已将网络扩展添加到配置文件和 appId。我的权利:

权利

0 投票
1 回答
1131 浏览

vpn - NEVPNErrorDomain 错误 2

我想通过 PacketTunnel 在 iOS 上开发 VPN,但是当我运行此代码时,它会返回错误消息“无法完成操作。(NEVPNErrorDomain 错误 2.)”。找不到这个错误码,有谁知道这个原因吗?

这是我的 Objective-C 代码:-(void)Loadvpn{

}

-(void)StartConnect:(NETunnelProviderManager*)man{ DLog("开始连接");

}