Issue with Ethernet dropping Connection Irregularly Ubuntu-Budgie
I have been running into intermittent ethernet connection issues using a custom build, Ubuntu-Budgie 64, system.
I have gone through so many of the other conversations about applying fixes via NetworkManager and various other methods I've seen through the threads, but nothing is working. My ethernet connections connect and then, without disconnection notifications, the connection randomly drops. (and today after a reinstall, a few 'disconnected' notifications did appear when the connection randomly dropped).
I'm out of ideas to go through with system configurations. Ifconfig shows everything working correctly (without dropped RX), and I have a WiFi, plus 2 ethernet ports (1 from the main Motherboard and the other as an added addition. I haven't checked only WiFi yet, but both ethernet ports do the same thing...drop connection intermittently without notification.
My motherboard is a Zenith Extreme from Asus... It holds an AMD Threadstripper and 2 Gigabit ethernet connections (one is directly from the motherboard, one is (i think) a pcie adapter into the MB, it plugs in the same way).
I have also ran through the threads about known bugs with Ubuntu ethernet connection issues, but I have done all I can do but I am still lost :/, the 'fixes' aren't working correctly.
My final solution is that somehow my ethernet in the office is running into issues, it works perfectly fine through a Window Pc using the same switch connected to my Ubuntu-Budgie instalation... But this seems less likely.
Any suggestions would be super helpful, please give me some pointers, I have not been this frustrated with Linux since I started, and I have never had this issue.
Update From Terminal Command sudo lshw -C network
*-network
description: Wireless interface
product: QCA6174 802.11ac Wireless Network Adapter
vendor: Qualcomm Atheros
physical id: 0
bus info: pci@0000:03:00.0
logical name: wlp3s0
version: 32
serial: e0:4f:43:70:c6:46
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
configuration: broadcast=yes driver=ath10k_pci driverversion=4.15.0-39-generic firmware=WLAN.RM.4.4.1-00079-QCARMSWPZ-1 latency=0 link=no multicast=yes wireless=IEEE 802.11
resources: irq:105 memory:d8c00000-d8dfffff
*-network
description: Wireless interface
product: Wil6200 802.11ad Wireless Network Adapter
vendor: Wilocity Ltd.
physical id: 0
bus info: pci@0000:04:00.0
logical name: wlp4s0
version: 02
serial: dc:ef:ca:ff:5f:95
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
configuration: broadcast=yes driver=wil6210 driverversion=4.15.0-39-generic firmware=4.1.0.55 latency=0 multicast=yes wireless=IEEE 802.11
resources: irq:104 memory:d8a00000-d8bfffff
*-network
description: Ethernet interface
product: I211 Gigabit Network Connection
vendor: Intel Corporation
physical id: 0
bus info: pci@0000:05:00.0
logical name: enp5s0
version: 03
serial: 10:7b:44:93:e6:70
size: 1Gbit/s
capacity: 1Gbit/s
width: 32 bits
clock: 33MHz
capabilities: pm msi msix pciexpress bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
configuration: autonegotiation=on broadcast=yes driver=igb driverversion=5.4.0-k duplex=full firmware=0. 6-1 ip=192.168.254.119 latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s
resources: irq:24 memory:d8f00000-d8f1ffff ioport:2000(size=32) memory:d8f20000-d8f23fff
*-network
description: Ethernet interface
physical id: 0
bus info: pci@0000:07:00.0
logical name: enp7s0
version: 02
serial: 10:7b:44:93:47:5d
size: 1Gbit/s
capacity: 10Gbit/s
width: 64 bits
clock: 33MHz
capabilities: pciexpress pm msix msi vpd bus_master cap_list rom ethernet physical tp 100bt-fd 1000bt-fd 10000bt-fd autonegotiation
configuration: autonegotiation=on broadcast=yes driver=atlantic driverversion=2.0.2.1-kern duplex=full firmware=1.5.58 latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s
resources: irq:35 memory:d8840000-d884ffff memory:d8850000-d8850fff memory:d8400000-d87fffff memory:d8800000-d883ffff
Showing ifconfig -a
now there are dropped RX Packets on enp5s0
and enp7s0
enp5s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.254.119 netmask 255.255.255.0 broadcast 192.168.254.255
inet6 fe80::98a1:7ebf:e58f:c031 prefixlen 64 scopeid 0x20<link>
ether 10:7b:44:93:e6:70 txqueuelen 1000 (Ethernet)
RX packets 78660 bytes 98174918 (98.1 MB)
RX errors 0 dropped 1372 overruns 0 frame 0
TX packets 13985 bytes 1394435 (1.3 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device memory 0xd8f00000-d8f1ffff
enp7s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
ether 10:7b:44:93:47:5d txqueuelen 1000 (Ethernet)
RX packets 17843 bytes 3772904 (3.7 MB)
RX errors 0 dropped 147 overruns 0 frame 0
TX packets 1592 bytes 200963 (200.9 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 299697 bytes 54030617 (54.0 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 299697 bytes 54030617 (54.0 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlp3s0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether e0:4f:43:70:c6:46 txqueuelen 1000 (Ethernet)
RX packets 276725 bytes 123455776 (123.4 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 36957 bytes 5944516 (5.9 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlp4s0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether dc:ef:ca:ff:5f:95 txqueuelen 4000 (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
The blurb:
This smells a lot like an Ethernet auto-negotiation issue and you should fix the network speed to the highest level that the Network Interface Card (NIC) can sustain by starting with 10Mbps, Half Duplex (HD) and work upwards to 10Mbps Full Duplex (FD), 100Mbps HD, ... until the problem starts. When you reach that point, go back to the previous setting and leave it at that speed.
The fix:
-
Install
ethtool
(if already installed you will just get a warning that the latest version is already installed)sudo apt install ethtool
-
Type the following command (and test them one by one)
sudo ethtool --change enp5s0 speed xxx duplex yyy autoneg off
where
xxx
=10
,100
or1000
andyyy
=half
orfull
.So start with
10 half
,10 full
,100 half
, ... -
Do an
ifconfig
to check whether you drop any packets. -
Go back to 1 until it stops working and use the previous values that still worked!
-
To make the change permanent, execute the following command:
sudo nano /etc/network/interfaces
and type at the
pre-up
section:pre-up /usr/sbin/ethtool --change enp5s0 speed xxx duplex yyy autoneg off
-
rinse and repeat for
enp7s0
You may have a hardware problem and Fabby's answer covers part of the solution possibly to diagnose that.
You may have both a hardware and software problem. Hard to know.
I would inspect and replace cabling, as Fabby said reduce speed and see if problem goes away, shorten your cable length, and make sure you have good quality cabling and connectors.
I had same problem this morning with a bad cable, and Ubuntu 18.04 would just shut off the iface.
Go figure.
Your WIFI won't likely matter much since you are dropping the wired connnections, as you said both Gigabit ports. Same kind of cable on each?
I'd remove one port, make it quiescent, and just use say the mobo port and get it to fail. Try backing down the speeds since it seems that kernel is shutting down your hardware.
What do your system logs say about the iface?
Running DHCP on them? etc...
You can simulate this problem, contrary to what Fabby said, by stressing the cable and transceivers on the network end points. Doing lots of traffic to saturate them, move large files for long periods of time, and lots of short bursts of use will cause less than optimal, say cable that is too slow, connections to fail.
Your USB test does help, but may not challenge your cable at the speeds you need, nor would it challenge the same hardware layer end points, you can change your config to do that, but this says at one level you have working hard ethernet etc. And your kernel is working to some degree for this problem.
The receive errors tell me that you are getting bad data sent to the Linux machine, and this is what you will see. Tx errors are going to mean something else and likely will only be seen by the peer Linux box sends to, in your case.
You are overrunning the FIFOs and/or getting bad data and fail on CRC-32 sums on the Linux side and likely having bad signal quality issues. I'd drop speed, way down, and see if they go away, and since you are sure you have good cables, and no breaks etc, make sure they are short and of right capacity.
I still think cabling and/or other hardware, on the wires.