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:

  1. Install ethtool (if already installed you will just get a warning that the latest version is already installed)

     sudo apt install ethtool
    
  2. Type the following command (and test them one by one)

     sudo ethtool --change enp5s0 speed xxx duplex yyy autoneg off
    

    where xxx = 10, 100 or 1000 and yyy = half or full.

    So start with 10 half, 10 full, 100 half, ...

  3. Do an ifconfig to check whether you drop any packets.

  4. Go back to 1 until it stops working and use the previous values that still worked!

  5. 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 
    
  6. 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.