If you lose Internet connection under ProtonVPN

This may have happened to a few of us. Meanwhile, you will find some workarounds in these forums that will help you regain connectivity. Well, it’s time to get rid of the workarounds and address the issue head on with a solution that will work on all distros.

First, to identify the problem. You are not losing internet connection. ProtonVPN initiates two different connections when you fire it up. One is the actual VPN tunnel, while the other is a leak protection for the IPv6. If you shutdown, suspend, or reboot while ProtonVPN is still running, chances are - when you log back in - you won’t be able to visit any website or do updates. The reason is that the IPv6 leak protection is still active, but without the VPN tunnel.

In short, you have Internet access, but your system cannot resolve domains. You can verify that by opening up a terminal and typing:

ping -c 3 1.1.1.1

This is the Name Server address for Cloudflare, and you will notice that your system is still able to reach it. However, if you type something like:

ping -c 3 cloudflare.com

You will get an error.

So, how do you solve this?

While on terminal, type the following:

ip link

You will notice an additional connection tunnel that looks like the one below:

3: ipv6leakintrf0: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000

The only thing you need to do is delete it. First, keep note of the actual name of the connection. In our scenario, that name is: ipv6leakintrf0

Thus, all you need to do is this:

sudo ip link delete ipv6leakintrf0

And voila, your Internet name resolution is restored!

How to avoid this in the future?
Until ProtonVPN issues a correction to this problem, before you shutdown or reboot your system, make sure you disconnect from the VPN. If you have the graphic user interface client, just click on it and select disconnect.

If you’re a terminal person, just type in:

protonvpn-cli d

And that’s it.

Enjoy your Digital Freedom!

4 Likes

Tested on Fedora 35. Forced a shutdown without disconnecting ProtonVPN. Rebooted and no internet. Could ping 1.1.1.1 but no DNS. Checked ip link and sure enough there was an ipv6leakintrf0. Deleted it and internet was fully restored.
Good info, Thank you!

1 Like

I had this issue with Linux Mint. In an unsuccessful attempt to fix the problem, I had uninstalled ProtonVPN before finding these instructions. I did not re-install it. I deleted the ipv6leakintrf0 but still no internet. I was impatient and re-installed Linux Mint. Then I reinstalled ProtonVPN. All seems to be working fine, even when I try to trick it into causing problems by not logging off the VPN before shutting down. I did the new installation of ProtonVPN after they did the rebrand to Proton (late May 2022) and perhaps the app had been updated/fixed. Also, I believe that @vasileios may have mentioned that ProtonVPN’s kill switch had something to do with this issue. I did not enable that feature on the new install.

1 Like

Hey, @Margo!
If you enable the Kill Switch, then the process becomes more complicated indeed. This quick solution is for when you reboot or start your computer and have no Internet (but can still see the IP addresses). That’s what usually happens when one forgets to disconnect prior to shutting down or rebooting.

I haven’t tried doing this lately, as the disconnect-before-reboot has become a habit on the devices where I run ProtonVPN. :slight_smile: