My VPN works fine but I keep getting “This device appears to be connected to a network but is unable to reach the internet.” message

Hi All,
I did a quick search of the forum but did not find this same problem.
I am running KDE if that matters and am using Express VPN.

As I said in the title, my VPN works just fine (the speed is great) but I keep getting a Network Management “Limited Connectivity” message that states “This device appears to be connected to a network but is unable to reach the internet.”

I installed Express VPN using the simple and straightforward instructions that they provided for Arch. Everything went off without a hitch and my VPN works great.

I just keep getting this error message popping up repeatedly.

I know I can turn off all network notifications, but am not sure that is wise.

I would greatly appreciate any help that you may provide.

This likely means your VPN is not set up properly and your initial connection is not entirely shut off.
(See also: dns leaking, etc)

What are those exactly?
I only see Ubuntu and Fedora as named distros in their instructions:

It’s a Network Manager issue. It’s been reported numerous times upstream for many different VPN providers and usually gets auto-closed due to inactivity without any fix. I have the same issue with AirVPN.

Here’s one that is still open (but not for long, since last reply was 6 months ago) - Connectivity check fails but everything else works when VPN is activated via official Private Internet Access app (#632) · Issues · NetworkManager / NetworkManager · GitLab

Just ignore it, there is nothing wrong with your VPN connection (but do test with something like https://www.dnsleaktest.com anyway).

I do.

Anyway you can disable the connectivity check:

sudo touch /etc/NetworkManager/conf.d/20-connectivity.conf

Ah, right, so I just checked on a quickly set up openvpn connection on a fresh install and it presents the same.

Does simply creating an empty file actually work?

I have done it like this:
(note it has the section header and iterates the variable with nothing:

@cscs, @dmt and @MrLavender, you guys are awesome! Thank you for your help, I do appreciate it!
I’ll post replies to your individual posts a little later, right now I am dealing with two larger problems on my fresh Manjaro install and will make new posts for those issues.

I did it like this as per the ArchWiki.

$ cat /etc/NetworkManager/conf.d/20-connectivity.conf 
[connectivity]
enabled=false

Ah nifty … I wonder if the empty uri approach was from a time before the switch?
Either way it seems it has the desired effect:
man NetworkManager.conf

uri
The URI of a web page to periodically request when connectivity is being checked. This page should return the header “X-NetworkManager-Status” with a value of “online”. Alternatively, its body content should be set to “NetworkManager is online”. The body content check can be controlled by the response option. If this option is blank or missing, connectivity checking is disabled.

Though I would rather use the toggle itself, so thanks for pointing it out.

Yes, I’ve been using it for 10+ years. It overrides this:

# /usr/lib/NetworkManager/conf.d/20-connectivity.conf

[connectivity]
uri=http://ping.manjaro.org/check_network_status.txt

As the empty override doesn’t contain an address, there’s nothing to check.

Seems likely, the empty file approach has been around for 10+ years, arch changed the wiki about 2-3 years ago (give or take).

However it could have just been preference, or bad docs on the part of network manager, or maybe the switch just hadn’t become well known yet. :man_shrugging:

@cscs here is a link to the Express VPN installation instructions, you have to scroll about a third of the way down before they give you the instructions for Arch.

The commands are:

sudo pacman -U [installer filename]
expressvpn activate

You have to enter your activation code from Express VPN and your all set.
I used Express VPN --help to activate an additional security feature that isn’t available just from the browser plugin (I also installed the Firefox browser plugin, it makes changing servers a breeze).

I will also point out that up til now I did not perceive this behavior while using wireguard connections.
(it even adds a nice little shield to the NM tray icon when connected)

Then again, I was blocking the connectivity check, which I can verify does quiet the complaint message.

The linked guide helps us verify it is indeed an OpenVPN type connection … but little else because their installer is behind a sign-in.

Good to know @MrLavender!
I ran the DNS leaktest and all is good.
Thank you for sharing that post with me, it didn’t come up in my search.

Many thanks @dmt!
I was thinking of turning off the notifications, but then I also wouldn’t get the notification that my VPN is connected.

1 Like

At first I thought this would disable all notifications, only later, when doing a deep dive into the notifications did I realize you could turn off specific ones.
This solution works like magic!

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.