0

So I have a recurring issue that's been driving me up the walls for weeks. It only happens with my ubuntu (18.04 LTS) laptop on my home network.

  • other devices on this network (windows 10 desktop, android phones, windows laptops) work fine
  • my ubuntu laptop on other networks works fine
  • wifi or wired connection makes no difference, and I've ruled out all intermediate devices
  • I have contacted my ISP, which says that everything looks fine and suggested replacing the router if it persists.

The only thing that seems to fix it, is rebooting the ubuntu laptop.

Below is a mtr 8.8.8.8 before the reboot:

Keys:  Help   Display mode   Restart statistics   Order of fields   quit
                                                                                  Packets               Pings
 Host                                                                           Loss%   Snt   Last   Avg  Best  Wrst StDev
 1. ???
 2. 78-22-192-1.access.telenet.be                                               94.7%   549   10.5  73.0   9.5 831.1 204.7
 3. dD5E0CEA1.access.telenet.be                                                 82.9%   549   11.9 180.8   9.7 1807. 443.7
 4. dD5E0FA71.access.telenet.be                                                 82.7%   549   15.6 202.2  12.8 2508. 479.2
 5. 74.125.32.88                                                                82.7%   549   28.8 189.8  27.0 2365. 429.8
 6. ???
 7. dns.google                                                                   0.0%   549   28.9  30.4  26.0  50.8   3.2

watch "netstat -s | egrep -i 'loss|retran'" also shows the TcpLossProbes steadily increasing.

And after a reboot:

Keys:  Help   Display mode   Restart statistics   Order of fields   quit
                                                                                  Packets               Pings
 Host                                                                           Loss%   Snt   Last   Avg  Best  Wrst StDev
 1. _gateway                                                                    99.9%   871    4.4   4.4   4.4   4.4   0.0
 2. 78-22-192-1.access.telenet.be                                                0.0%   871   13.1  17.4   9.1 175.8  15.1
 3. dD5E0CEA1.access.telenet.be                                                  0.0%   871   14.6  14.1   9.0 169.8  10.5
 4. dD5E0FA71.access.telenet.be                                                  0.0%   871  100.2  16.9  12.5 119.2   6.0
 5. 74.125.32.88                                                                 0.0%   870   31.8  32.9  27.2 208.2  13.0
 6. ???
 7. dns.google                                                                   0.0%   870   34.6  29.3  26.0  43.1   2.4

In the network settings, I've tampered with setting DNS manually (to google's, both on IPv4 and IPv6), but right now I've got everything back to fully automatic.

My /etc/resolv.conf currently looks like this:

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
# 127.0.0.53 is the systemd-resolved stub resolver.
# run "systemd-resolve --status" to see details about the actual nameservers.

nameserver 127.0.0.53
search telenet.be

I did change /etc/dhcp/dhclient.conf by adding

supersede domain-name "";
supersede domain-search "";
supersede search "";

supersede dhcp6.domain-name "";
supersede dhcp6.domain-search "";
supersede dhcp6.search "";

to the end of the file because I thought it might have been related to the order of domains in the search section of resolv.conf but that's apparently not the case.

I did notice something odd - before the reboot, the packet loss % in mtr decreases for 10 seconds, and then increases for 20 seconds, decreases for 10, increases for 20, and so on.

Additionally, some time after rebooting, the issue reoccurs, but I have no idea what triggers it. Running mtr shows the same symptoms as before the reboot when this happens (the first hop shows up as ??? again instead of _gateway)

I'm by no means a network expert and would gladly take any hints on this topic.

0

So, I finally found the problem. It was an overlap of IPs between the virtual network adapters created by docker, and my home network's IP range. My router is 192.168.0.1, and I had one of these in my ifconfig -a:

br-8ff3faad381d: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.0.1  netmask 255.255.240.0  broadcast 192.168.15.255
        ether 02:42:fd:b4:cf:f4  txqueuelen 0  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

A docker network prune immediately fixed the packet loss. I also configured docker to stick to a more convenient IP range:

cat /etc/docker/daemon.json:

{
  "bip": "192.168.1.5/24",
  "fixed-cidr": "192.168.1.5/25",
  "fixed-cidr-v6": "2001:db8::/64",
  "mtu": 1500
}

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.