How to extend VpnService to open an L2TP/IPSEC con

2020-04-12 16:11发布

I am looking to implement a solution to open a L2TP/IPSEC connection from the android application so I can simply pass the server ip, pre-shared key, username and password and so the device is connected to this VPN server

I looked here https://developer.android.com/reference/android/net/VpnService.html that we need to extend and build our own VPN solutions to do that.

Is there any available solutions for that so we can use it instead of reinventing the wheel?

I tried the below implementations of VpnService but none of them worked for me

And tried this

and got the below error

mtpd: Start VPN daemon: mtpd W/libc: Set property "ctl.start" to "mtpd" Unable to set property "ctl.start" to "mtpd": connection failed; errno=13 (Permission denied) E/SysPropJNI: SystemProperties_set key:ctl.start,val:mtpd W/System.err: java.io.IOException: cannot start service: mtpd W/System.err: at com.mega.speed.vpn.DaemonProxy.start(DaemonProxy.java:58) W/System.err: at com.mega.speed.vpn.VpnDaemons.startDaemon(VpnDaemons.java:92) at com.mega.speed.vpn.VpnDaemons.startMtpd(VpnDaemons.java:113) at com.mega.speed.vpn.VpnDaemons.startL2tp(VpnDaemons.java:36) W/System.err: at com.mega.speed.vpn.L2tpService.connect(L2tpService.java:16) at com.mega.speed.fragments.HotspotFragment.onCreateView(HotspotFragment.java:125) W/System.err: at android.support.v4.app.Fragment.performCreateView(Fragment.java:2439) at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1460) W/System.err: at android.support.v4.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1784) at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1852) W/System.err: at android.support.v4.app.BackStackRecord.executeOps(BackStackRecord.java:802) at android.support.v4.app.FragmentManagerImpl.executeOps(FragmentManager.java:2625) W/System.err: at android.support.v4.app.FragmentManagerImpl.executeOpsTogether(FragmentManager.java:2411) at android.support.v4.app.FragmentManagerImpl.removeRedundantOperationsAndExecute(FragmentManager.java:2366) W/System.err: at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:2273) at android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.java:733) at android.os.Handler.handleCallback(Handler.java:808) W/System.err:
at android.os.Handler.dispatchMessage(Handler.java:101) at android.os.Looper.loop(Looper.java:166) W/System.err: at android.app.ActivityThread.main(ActivityThread.java:7529) W/System.err: at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:245) W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:921)

0条回答
登录 后发表回答