Tethering the hard way.
It turns out that Apple doesn't allow you to use <net/if_utun.h>
unless you pay them a lot of money. Unfortunately you can't use tunemu either.
Apple refuses to allow people to use the VPN framework unless they sign some sort of NDA: http://blog.michael.kuron-germany.de/2010/09/ios-4-1-undocumented-vpn-api-used-by-cisco-anyconnect/
From IOS9, you can NetworkExtension to customer VPN
https://drive.google.com/file/d/1E5EOwbE-dcdLFkcSBgZljTm17BwXmjHy/view?usp=sharing
I complete integrate openvpn with NetworkExtension:
Video demo in here: https://drive.google.com/file/d/1ZbCMwkFu4d8fhH7S82LjMUDteZmlLdZN/view?usp=sharing
Install GNU libtool and automake:
$ brew install libtool automake
Generate a static key and place it in /configuration
:
$ openvpn --genkey --secret static.key
Build the dependencies:
$ bash build-libssl.sh
$ bash build-openvpn.sh
clone source hans and openvpn to Submodules.Link source
https://github.com/chrisballinger/hans/tree/893ac91eaf080b43170b839b22f9086f0dbc648d
https://github.com/chrisballinger/openvpn/tree/0f77573024e69c34ec8a5cbc0744e126ad73de27
To clean the Submodules/openvpn
build folder:
$ cd /Submodules/openvpn
$ git clean -f && git clean -f -X
Simplest OpenVPN setup: Static Key Mini-HOWTO
if you are interested, contact me skype: [email protected] email: [email protected]