set app level proxy with Network Extension Framework?

Hello,


Anyone can give pointer as to how to set proxy server with the network extension framework? Looks like it only allows setting proxy for some VPN connection. My use case is to let all the network traffice (html, image, video, etc.) go through some proxy server.


Thanks,

Rao

Looks like it only allows setting proxy for some VPN connection.

Correct.

In general you can’t change the system-wide proxy settings programmatically. Can you explain more details about your use case? Do you want the proxy settings to apply to all interfaces? All apps? Are you in a managed environment?

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"

Hi, Qinn


Thank you for taking the question.


To be more specific:


All the network traffic/request (html, image, video, etc.) need to go through some proxy server before reaching the content servers.


The proxy settings need to be applied to wireless interfaces, including wifi and 3g/4g, as the app will be run on ios devices.


This is only for my app, not all apps on the device.


It may or may not be used in a managed environment.


Thanks!

Rao

There’s no way to meet those requirements. iOS supports a global HTTP proxy but:

  • that’s only on supervised devices

  • it affects all apps

  • it can only be configured via a configuration profile

iOS supports per-app VPN (NEAppProxyProvider), which is per-app and could probably be used to implement some sort of proxy, but it’s only available on managed devices.

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"

Hi eskimo


If I want to develop my personal VPN app and extension that only connect to standard network tunneling protocol IKEv2 type VPN server, by using NEPacketTunnelProvider, should I implement the whole IKEv2 protocol and connecting flow? or what should I do? Would you please give me some idea about this? Thanks!

I’ve responded to this in the separate thread that you created for it.

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"

Thank you, Quinn.


I will certainly test with NEAppProxyProvider and see if it works for my purpose.


Thanks,

Rao

what does "that’s only on supervised devices" mean? if it is an enterprise environment, how to set proxy by app? how to set device level proxy?

set app level proxy with Network Extension Framework?
 
 
Q