1

I am running GalliumOS natively on a Chromebook and loving it, but for one issue. Consistently, when I wake the laptop from sleep, or change WiFi networks, I lose the Internet connection. The route table is empty, until I issue the following command.

sudo systemctl restart openvpn

I am running ufw and openvpn, but I have found that completely disabling ufw does not resolve this issue. Only disabling and stopping openvpn seems to fix this. I have listed below my notes from what I have already tried, including syslog entries related to ufw, openvpn, and NetworkManager. I have also tried changing the ping, ping-restart, and keepalive options in the openvpn client.conf file. Nothing seems to work!!

My notes:

Rebooted at 11:47 and connected to iPhone hotspot.

Connection is good.

Routing table:

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         10.7.7.1        128.0.0.0       UG    0      0        0 tun0
default         172.20.10.1     0.0.0.0         UG    600    0        0 wlp2s0
10.7.7.0        *               255.255.255.0   U     0      0        0 tun0
128.0.0.0       10.7.7.1        128.0.0.0       UG    0      0        0 tun0
228-12-88-167.r 172.20.10.1     255.255.255.255 UGH   0      0        0 wlp2s0
link-local      *               255.255.0.0     U     1000   0        0 wlp2s0
172.20.10.0     *               255.255.255.240 U     600    0        0 wlp2s0

UFW status:

To                         Action      From
--                         ------      ----
[my VPN IP]                ALLOW OUT   Anywhere                  
Anywhere                   ALLOW OUT   Anywhere on tun0          
22                         ALLOW OUT   Anywhere                  
[my VPN DNS server1]       ALLOW OUT   Anywhere                  
[my VPN DNS server2]       ALLOW OUT   Anywhere                  
Anywhere (v6)              ALLOW OUT   Anywhere (v6) on tun0     
22 (v6)                    ALLOW OUT   Anywhere (v6)

OpenVPN service status

mike@mikecb:/var/log$ sudo systemctl status openvpn
● openvpn.service - OpenVPN service
   Loaded: loaded (/lib/systemd/system/openvpn.service; enabled; vendor preset: enabled)
   Active: active (exited) since Mon 2019-02-04 11:47:06 CST; 4min 12s ago
  Process: 898 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
 Main PID: 898 (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/openvpn.service

Feb 04 11:47:06 mikecb systemd[1]: Starting OpenVPN service...
Feb 04 11:47:06 mikecb systemd[1]: Started OpenVPN service.

I am getting a lot of entries in the syslog showing that UFW is blocking outgoing requests. However, disabling UFW entirely doesn't resolve the main issue I'm having, so I suspect it's unrelated.

No entries in syslog.1 after boot. No entries in boot.log after boot.

Interesting entries related to NetworkManager in syslog:

Feb  4 11:47:15 mikecb NetworkManager[794]: /etc/resolvconf/update.d/libc: Warning: /etc/resolv.conf is not a symbolic link to /run/resolvconf/resolv.conf
Feb  4 11:47:59 mikecb NetworkManager[794]: <warn>  [1549302479.5826] dhcp6 (wlp2s0): request timed out
Feb  4 11:47:59 mikecb NetworkManager[794]: <info>  [1549302479.5827] dhcp6 (wlp2s0): state changed unknown -> timeout
Feb  4 11:47:59 mikecb NetworkManager[794]: <info>  [1549302479.5848] dhcp6 (wlp2s0): canceled DHCP transaction, DHCP client pid 1194
Feb  4 11:47:59 mikecb NetworkManager[794]: <info>  [1549302479.5849] dhcp6 (wlp2s0): state changed timeout -> done

No problems seen in syslog related to openvpn.

Disconnected from hotspot at 12:03pm.

No new entries in syslog related to openvpn.

New entries in syslog from NetworkManager:

Feb  4 12:03:54 mikecb NetworkManager[794]: <info>  [1549303434.5421] device (wlp2s0): state change: activated -> deactivating (reason 'user-requested') [100 110 39]
Feb  4 12:03:54 mikecb NetworkManager[794]: <info>  [1549303434.5425] manager: NetworkManager state is now CONNECTED_LOCAL
Feb  4 12:03:54 mikecb NetworkManager[794]: <info>  [1549303434.5628] audit: op="device-disconnect" interface="wlp2s0" ifindex=2 pid=1111 uid=1000 result="success"
Feb  4 12:03:54 mikecb NetworkManager[794]: <info>  [1549303434.5645] device (wlp2s0): state change: deactivating -> disconnected (reason 'user-requested') [110 30 39]
Feb  4 12:03:54 mikecb NetworkManager[794]: <info>  [1549303434.5962] dhcp4 (wlp2s0): canceled DHCP transaction, DHCP client pid 1087
Feb  4 12:03:54 mikecb NetworkManager[794]: <info>  [1549303434.5963] dhcp4 (wlp2s0): state changed bound -> done
Feb  4 12:03:54 mikecb NetworkManager[794]: <info>  [1549303434.6379] dns-mgr: Writing DNS information to /sbin/resolvconf
Feb  4 12:03:54 mikecb NetworkManager[794]: /etc/resolvconf/update.d/libc: Warning: /etc/resolv.conf is not a symbolic link to /run/resolvconf/resolv.conf
Feb  4 12:03:54 mikecb NetworkManager[794]: <info>  [1549303434.7019] dns-mgr: Removing DNS information from /sbin/resolvconf
Feb  4 12:03:54 mikecb NetworkManager[794]: /etc/resolvconf/update.d/libc: Warning: /etc/resolv.conf is not a symbolic link to /run/resolvconf/resolv.conf
Feb  4 12:03:54 mikecb NetworkManager[794]: <warn>  [1549303434.7436] sup-iface[0x29790c0,wlp2s0]: connection disconnected (reason -3)
Feb  4 12:03:54 mikecb NetworkManager[794]: <info>  [1549303434.7439] device (wlp2s0): supplicant interface state: completed -> disconnected

Routing table is empty and I have no connection, as expected.

Reconnected to hotspot at 12:07pm.

Routing table is still empty.

Cannot connect to internet.

Interesting entries in syslog from openvpn:

Feb  4 12:06:53 mikecb ovpn-client[746]: [us2838.nordvpn.com] Inactivity timeout (--ping-restart), restarting
Feb  4 12:06:53 mikecb ovpn-client[746]: SIGUSR1[soft,ping-restart] received, process restarting
Feb  4 12:06:53 mikecb ovpn-client[746]: Restart pause, 5 second(s)
Feb  4 12:06:58 mikecb ovpn-client[746]: NOTE: --fast-io is disabled since we are not using UDP
Feb  4 12:06:58 mikecb ovpn-client[746]: Socket Buffers: R=[87380->425984] S=[16384->425984]
Feb  4 12:06:58 mikecb ovpn-client[746]: Attempting to establish TCP connection with [AF_INET][MY VPN IP]:443 [nonblock]
Feb  4 12:07:08 mikecb ovpn-client[746]: TCP: connect to [AF_INET][MY VPN IP]:443 failed, will try again in 5 seconds: Connection timed out
Feb  4 12:07:23 mikecb ovpn-client[746]: TCP: connect to [AF_INET][MY VPN IP]:443 failed, will try again in 5 seconds: Connection timed out
Feb  4 12:07:38 mikecb ovpn-client[746]: TCP: connect to [AF_INET][MY VPN IP]:443 failed, will try again in 5 seconds: Connection timed out
Feb  4 12:07:53 mikecb ovpn-client[746]: TCP: connect to [AF_INET][MY VPN IP]:443 failed, will try again in 5 seconds: Connection timed out
Feb  4 12:08:08 mikecb ovpn-client[746]: TCP: connect to [AF_INET][MY VPN IP]:443 failed, will try again in 5 seconds: Connection timed out

NetworkManager entries in syslog:

Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.0757] device (wlp2s0): Activation: starting connection 'MICHAEL’s iPhone' (0daa18c3-2521-4029-8808-eeca7c222c67)
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.0761] audit: op="connection-activate" uuid="0daa18c3-2521-4029-8808-eeca7c222c67" name="MICHAEL’s iPhone" pid=1111 uid=1000 result="success"
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.0766] device (wlp2s0): state change: disconnected -> prepare (reason 'none') [30 40 0]
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.0772] manager: NetworkManager state is now CONNECTING
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.0784] device (wlp2s0): state change: prepare -> config (reason 'none') [40 50 0]
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.0789] device (wlp2s0): Activation: (wifi) access point 'MICHAEL’s iPhone' has security, but secrets are required.
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.0790] device (wlp2s0): state change: config -> need-auth (reason 'none') [50 60 0]
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.1031] device (wlp2s0): state change: need-auth -> prepare (reason 'none') [60 40 0]
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.1044] device (wlp2s0): state change: prepare -> config (reason 'none') [40 50 0]
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.1050] device (wlp2s0): Activation: (wifi) connection 'MICHAEL’s iPhone' has security, and secrets exist.  No new secrets needed.
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.1052] Config: added 'ssid' value 'MICHAEL’s iPhone'
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.1052] Config: added 'scan_ssid' value '1'
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.1053] Config: added 'key_mgmt' value 'WPA-PSK'
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.1053] Config: added 'auth_alg' value 'OPEN'
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.1053] Config: added 'psk' value '<omitted>'
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.1142] sup-iface[0x29790c0,wlp2s0]: config: set interface ap_scan to 1
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.1530] device (wlp2s0): supplicant interface state: disconnected -> authenticating
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.1736] device (wlp2s0): supplicant interface state: authenticating -> associating
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.1963] device (wlp2s0): supplicant interface state: associating -> 4-way handshake
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.2374] device (wlp2s0): supplicant interface state: 4-way handshake -> completed
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.2375] device (wlp2s0): Activation: (wifi) Stage 2 of 5 (Device Configure) successful.  Connected to wireless network 'MICHAEL’s iPhone'.
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.2377] device (wlp2s0): state change: config -> ip-config (reason 'none') [50 70 0]
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.2384] dhcp4 (wlp2s0): activation: beginning transaction (timeout in 45 seconds)
Feb  4 12:07:15 mikecb NetworkManager[794]: <info>  [1549303635.2487] dhcp4 (wlp2s0): dhclient started with pid 3937
Feb  4 12:07:17 mikecb NetworkManager[794]: <info>  [1549303637.2311] dhcp6 (wlp2s0): activation: beginning transaction (timeout in 45 seconds)
Feb  4 12:07:17 mikecb NetworkManager[794]: <info>  [1549303637.2407] dhcp6 (wlp2s0): dhclient started with pid 3942
Feb  4 12:07:18 mikecb NetworkManager[794]: <info>  [1549303638.4130]   address 172.20.10.8
Feb  4 12:07:18 mikecb NetworkManager[794]: <info>  [1549303638.4131]   plen 28 (255.255.255.240)
Feb  4 12:07:18 mikecb NetworkManager[794]: <info>  [1549303638.4131]   gateway 172.20.10.1
Feb  4 12:07:18 mikecb NetworkManager[794]: <info>  [1549303638.4131]   server identifier 172.20.10.1
Feb  4 12:07:18 mikecb NetworkManager[794]: <info>  [1549303638.4132]   lease time 85536
Feb  4 12:07:18 mikecb NetworkManager[794]: <info>  [1549303638.4132]   nameserver '172.20.10.1'
Feb  4 12:07:18 mikecb NetworkManager[794]: <info>  [1549303638.4132] dhcp4 (wlp2s0): state changed unknown -> bound
Feb  4 12:07:18 mikecb NetworkManager[794]: <info>  [1549303638.4172] device (wlp2s0): state change: ip-config -> ip-check (reason 'none') [70 80 0]
Feb  4 12:07:18 mikecb NetworkManager[794]: <info>  [1549303638.4198] device (wlp2s0): state change: ip-check -> secondaries (reason 'none') [80 90 0]
Feb  4 12:07:18 mikecb NetworkManager[794]: <info>  [1549303638.4205] device (wlp2s0): state change: secondaries -> activated (reason 'none') [90 100 0]
Feb  4 12:07:18 mikecb NetworkManager[794]: <info>  [1549303638.4207] manager: NetworkManager state is now CONNECTED_LOCAL
Feb  4 12:07:18 mikecb NetworkManager[794]: <info>  [1549303638.4402] manager: NetworkManager state is now CONNECTED_GLOBAL
Feb  4 12:07:18 mikecb NetworkManager[794]: <info>  [1549303638.4417] policy: set 'MICHAEL’s iPhone' (wlp2s0) as default for IPv4 routing and DNS
Feb  4 12:07:18 mikecb NetworkManager[794]: <info>  [1549303638.4419] policy: set 'MICHAEL’s iPhone' (wlp2s0) as default for IPv6 routing and DNS
Feb  4 12:07:18 mikecb NetworkManager[794]: <info>  [1549303638.4420] dns-mgr: Writing DNS information to /sbin/resolvconf
Feb  4 12:07:18 mikecb NetworkManager[794]: /etc/resolvconf/update.d/libc: Warning: /etc/resolv.conf is not a symbolic link to /run/resolvconf/resolv.conf
Feb  4 12:07:18 mikecb NetworkManager[794]: <info>  [1549303638.5022] device (wlp2s0): Activation: successful, device activated.
Feb  4 12:08:02 mikecb NetworkManager[794]: <warn>  [1549303682.0797] dhcp6 (wlp2s0): request timed out
Feb  4 12:08:02 mikecb NetworkManager[794]: <info>  [1549303682.0798] dhcp6 (wlp2s0): state changed unknown -> timeout
Feb  4 12:08:02 mikecb NetworkManager[794]: <info>  [1549303682.0827] dhcp6 (wlp2s0): canceled DHCP transaction, DHCP client pid 3942
Feb  4 12:08:02 mikecb NetworkManager[794]: <info>  [1549303682.0828] dhcp6 (wlp2s0): state changed timeout -> done

Restarted openvpn service at 12:12pm (sudo systemctl restart openvpn). Connection to internet is successful.

Routing table:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         10.7.7.1        128.0.0.0       UG    0      0        0 tun0
default         172.20.10.1     0.0.0.0         UG    600    0        0 wlp2s0
10.7.7.0        *               255.255.255.0   U     0      0        0 tun0
128.0.0.0       10.7.7.1        128.0.0.0       UG    0      0        0 tun0
228-12-88-167.r 172.20.10.1     255.255.255.255 UGH   0      0        0 wlp2s0
link-local      *               255.255.0.0     U     1000   0        0 wlp2s0
172.20.10.0     *               255.255.255.240 U     600    0        0 wlp2s0

Interesting entries in syslog related to openvpn, taken from right after the service restart began:

Feb  4 12:12:38 mikecb ovpn-client[746]: message repeated 18 times: [ TCP: connect to [AF_INET][my VPN IP]:443 failed, will try again in 5 seconds: Connection timed out]
Feb  4 12:12:47 mikecb ovpn-client[746]: /sbin/ip route del [MY VPN IP]/32
Feb  4 12:12:47 mikecb ovpn-client[746]: ERROR: Linux route delete command failed: external program exited with error status: 2
Feb  4 12:12:47 mikecb ovpn-client[746]: /sbin/ip route del 0.0.0.0/1
Feb  4 12:12:47 mikecb ovpn-client[746]: /sbin/ip route del 128.0.0.0/1
Feb  4 12:12:47 mikecb ovpn-client[746]: Closing TUN/TAP interface

12:18pm: ran the following command to try to resolve the warning I was seeing in the NetworkManager syslog entries. Will see if this makes a difference.

sudo ln -nsf ../run/resolvconf/resolv.conf /etc/resolv.conf

I wasn't able to connect to the internet after this. No DNS service.

This replaced the /etc/resolv.conf file that I had put in there following the instructions here:

rm -r /etc/resolv.conf
nano /etc/resolv.conf

File contents:
    nameserver [my VPN DNS server1 IP]
    nameserver [my VPN DNS server2 IP]

chattr +i /etc/resolv.conf
reboot now

Reverted to my file at /etc/resolv.conf so that I could connect to the internet. After doing a bit more googling, I don't think the issue is related to this syslog entry.

  • 1
    Are you honestly believing a VPN connection will survive one nights sleep? – Rui F Ribeiro Feb 4 at 23:19
  • I'm new to all of this and apparently naive. If I don't change networks or put the laptop to sleep, it seems pretty solid. – mblem22 Feb 4 at 23:21
  • Mine does in Mint 18.3 and 19.1 – K7AAY Feb 5 at 0:19
  • 1
    @K7AAY It probably reconnects open waking up...My Mac also reconnects to any VPN upon opening the lid; but the connection does not stay open. – Rui F Ribeiro Feb 5 at 1:22
  • 1
    The thing I don't understand is why my route table is empty on waking up or changing wifi networks. I can see in the logs that openvpn is trying to reconnect, but it's not able to, and I know it's not because of ufw. – mblem22 Feb 5 at 1:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.