问题标签 [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 投票
0 回答
809 浏览

ios - 调试网络扩展

我在我的应用程序中添加了 NEPacketTunnelProvider 扩展来连接 openvpn,但连接状态已断开连接,没有任何错误。现在我想使用断点调试扩展,但我的断点没有在扩展中调用,我已经在谷歌上做了很多研发但没有成功。

0 投票
1 回答
627 浏览

ios - 使用带有网络扩展的隧道模式的 iOS VPN 应用程序

目前个人 iOS Vpn 应用程序使用 IKEv2 协议和网络扩展 api 实现,但我想在隧道模式下使用带有数据包隧道提供程序的网络扩展来实现相同的东西。

那么可以解释清楚的架构如何实现以及库需要什么?

0 投票
1 回答
1173 浏览

ios - 如何获取网络 SSID 列表,它可以在搜索时刻用于设备?

我需要使用 NetworkExtensions 获取可用网络及其参数(例如 SSID)的列表。现在,我正在访问 NetworkExtensions 库,这在请求后需要一些时间。

如果有人已经存在代码,也许是一些个人编写的 func 并且可以与我和其他论坛用户共享该代码 - 这样做:)

UPD:kNEHotspotHelperCommandTypeFilterForScan 的答案中有一些好主意和链接,但我真的不知道如何使用它。

0 投票
1 回答
155 浏览

ios - Wifi断开或Wifi到蜂窝网络切换回调在后台

谁能告诉我,当应用程序处于后台时,是否有办法检测网络连接何时断开?

我想在 Wifi 网络关闭时以及从 Wifi 切换到蜂窝网络时收到回调。

我目前正在使用 NEHotspotHelper,当 Wifi SSID 更改时我会收到回调。即当设备从 Wifi-A 移动到 Wifi-B 时。当网络从蜂窝网络切换到 Wifi 时,我也会收到回调,但反之亦然。

请帮忙 !!

使用以下代码获取回调。

0 投票
0 回答
270 浏览

ios - 如果使用 NEHotspotConfigurationManager,如何获取设备的 IP 地址?

我使用这里的代码来获取设备的 IP 地址,如果设备已经连接到特定的 Wi-Fi,它可以正常工作,但是如果我使用NEHotspotConfigurationManager强制设备连接到 Wi-Fi,它会返回一些奇怪的东西,这是什么问题?

这是我的代码:

注意: getIPAddresses()此处的代码相同

0 投票
0 回答
2958 浏览

ios - 如何使用设备内部 VPN 设置数据包隧道提供程序

我正在尝试构建一个列出从设备发出的所有请求的 iOS 应用程序,就像这样Charles Proxy做一样。就像查尔斯一样,我的想法是创建一个Packet Tunnel Provider并让它设置一个本地 VPN 连接,而无需外部 VPN 服务器。然后,流量将在内部路由到数据包隧道,而无需外部 VPN 服务器。

既然Charles Proxy这样做了,我知道这在技术上是可行的,但我找不到任何关于如何使用内部 VPN 连接而不是使用“真正的”外部 VPN 服务器来设置隧道的信息。人们引用的唯一资源是SimpleTunnelApple 示例项目,该项目已有几年历史,使用 Swift 3 编写。

我已经下载了SimpleTunnel示例代码项目,创建了正确的权利,现在可以运行该项目并创建在“设置”下列出的 VPN 配置,但我无法连接 VPN 隧道。我尝试将服务器地址更改为127.1.0.0和使用IKEv2,但没有成功。我还在https://github.com/lxdcn/NEPacketTunnelVPNDemo下载了源代码,但也没有让它工作。

有谁知道如何设置内部 VPN 服务器NetworkExtensions并让隧道使用该连接?

0 投票
0 回答
516 浏览

ios - NetworkExtension NEKit NETunnelProviderManager VPN 连接错误 4097

全部。当我启动VPNTunnelWithOptions 时,NEKIT 出现错误。

我的项目是一个 Objective-C 程序。然后我使用 Cartfile 来集成 NEKit 框架并将 Binary 与所有库链接到我的 PacketTunnel 目标。例如这张照片。 项目图片

我的 PacketTunnelProvider 目标与 Swift 语言 PacketTunnelProvider 目标图

有我的connect方法 connect方法图片

然后有日志

我不知道是什么原因导致了这个问题。我仔细检查了我的 info.plist 和权利。

我还尝试将 Nekit 框架添加到我的项目目标中,并且框架选择可选(当我选择必需时,我启动项目时会崩溃)不起作用。

但是当我创建一个 Swift 演示来归档 VPN 连接时。使用相同的 BundleID、保存 info.plist 和权利。VPN 连接成功。 我的 Swift 项目

我很困惑。请帮助我!谢谢!

0 投票
1 回答
999 浏览

ios - 如何使用 NEOnDemandRule 类设置规则以通过 VPN 自动连接?

我是 iOS 网络扩展的新手。我正在尝试制作一个管理 VPN 连接的应用程序。

连接 VPN 后,应在任何情况下连接(重启设备或更改移动连接(Wifi 到蜂窝,蜂窝到 Wifi)后)。

始终应自动连接 VPN。

我已阅读有关 Always-On VPN 的文章: https ://help.apple.com/deployment/ios/#/iore8b083096

这不是我的选择。因为它需要设备监督。

所以,现在我对“VPN On Demand”有很好的解决方案。

如何设置 VPN 在任何情况下始终自动连接?

谢谢你。

0 投票
0 回答
55 浏览

swift - NetService 在调试时获得正确的 Inet 类型,但不能从存档的 IPA 工作

我正在使用网络服务并使用以下函数来获取 IPV4 和 IPV6 地址。在调试或简单 IPA 文件时获取正确的地址。但是存档后我没有得到正确的 INET 类型。

这是一个奇怪的问题。

0 投票
1 回答
734 浏览

ios11 - 从应用程序内连接到 Wi-Fi 网络,无需访问互联网

我正在开发热点帮助应用程序,它在连接到强制网络后尝试连接到它,我需要在应用程序中处理身份验证。

方法一

我使用 NEHotspotConfigurationManager 以编程方式连接到 WiFi 网络,效果很好。我面临的问题是在连接到强制网络后,iOS 不会将请求发送到连接的网络,直到连接的网络可以访问互联网,或者我手动转到设置并弹出用于身份验证的网页,然后单击取消和选择无网络使用。

方法二

我使用的第二种方法是使用本教程中描述的 NEHotSpotHelper

在这种方法中,当我收到 commandType authenticate 时,它​​不会向 Wi-Fi 网络发送请求(如果设备连接到 4g,则请求通过它,否则返回互联网连接似乎处于脱机状态)

那么,在连接到受限访问的 WiFi 后,如何从应用程序中对用户进行身份验证?

截屏