Qubes-tunnel vs. qubes-vpn-support

@tasket: I’ve been using qubes-tunnel for a long time, but I most often see discussions of Qubes-vpn-support. So, what exactly is the difference(s) between qubes-tunnel and Qubes-vpn-support?

The qubes-tunnel GitHub says “This is closely based on the Qubes-vpn-support project.”, but doesn’t seem to say much more beyond that…

Are they each meant to address different use cases? Or is qubes-tunnel the evolution of Qubes-vpn-support and therefore preferred?

Sorry if this is explained somewhere else and I missed it…

@QubicRoot this is a very good question.
I struggled with VPN setups for a very long time:


I was able to setup the VPN but it was very unstable. Sometimes it worked somtimes not.


I was not able to get the VPN working.


It worked just perfect. Personally, I like the blog since beside the setup it helped me a lot with all the explanations.

I would be interesting in a kind of compare matrix: qubes-tunnel vs. qubes-vpn-support vs. Network-Manager vs … ?

i.e. Criteria: easiness to setup, robustness, security, flexibility (changing VPN provider), security, …

You can think of qubes-tunnel as the more conservative version of
Qubes-vpn-support. Right now the latter has some tweaks that
qubes-tunnel doesn’t, but nothing big.

Thanks @tasket.

But… That unfortunately doesn’t really clarify very much. Could you be more explicit as to what “conservative” actually means?

Different design goals?

Different VPNs supported?

Different target users?

Or perhaps the same design goals, etc., but qubes-tunnel is more “mature”? Maybe more like “release” and Qubes-vpn-support is “next version beta”?



New features generally go to Qubes-vpn-support first.

what newer features are in Qubes-vpn-support that are not in qubes-tunnel?