Bug Report: NetworkManager causes (wired) connection to be intermittent (KDE); networkd does not

I don’t know if this goes here in the Support >> Network category
(Band-aid Solution at bottom)

Background:
I’ve been troubleshooting an issue the past couple of days. I built a new workstation to use at work in our NOC. I used a CPU (Ryzen 1700X) and Motherboard (Gigabyte AX370-Gaming-K5) that I used on a Ubuntu 20.04 desktop for the past several months, and made a new system and installed Manjaro KDE on it. Previously I was using a laptop with KDE Neon in the same NOC workspace. I use a wired connection at all time at work, laptop or desktop workstation.

The issue:
My network connection on this new workstation with the latest newly installed Manjaro KDE has intermittent disconnections. Around every 20-30mins, I will not be able to access anything. No domain resolutions, no pinging IP addresses.

Troubleshooting the Issue:
-Ran a continuous CLI MTR to watch when it happens. Happened around every 20-30min, sometimes more often.
-Not related to a bad cable, swapped all cables. Used existing known good cables.
-Not related to a bad switch, I did tests on multiple PCs on the same switch and only experienced on the same device
-Not related to enabled Wi-Fi or Bluetooth, they were disabled and it kept happening.
-The Network Applet in KDE says nothing about it being disconnected.
-ip a shows that no NIC is down and still has it’s DHCP address.
-NetworkManager logs (or any log output) show nothing before, during, or after this happens.
-Reinstalled NetworkManager through pacman and nothing changed.
-Checked loaded Linux modules to see if a conflicting one was enabled, there were none. Current loaded module is the one for this NIC.

Logs:
NetworkManager logs since startup 9 hours ago:

    /etc/NetworkManager  sudo journalctl -xe -u NetworkManager.service                                                                                                                      ✔  2h 5m 54s  
[sudo] password for msulsenti: 
Oct 03 01:54:05 Mike-Intrepid NetworkManager[805]: <warn>  [1633240445.7187] dhcp6 (enp5s0): request timed out
Oct 03 01:54:05 Mike-Intrepid NetworkManager[805]: <info>  [1633240445.7188] dhcp6 (enp5s0): state changed unknown -> timeout
Oct 03 02:23:13 Mike-Intrepid NetworkManager[805]: <info>  [1633242193.8919] dhcp4 (enp5s0): state changed bound -> extended, address=172.31.0.45
Oct 03 02:33:49 Mike-Intrepid NetworkManager[805]: <info>  [1633242829.6610] audit: op="statistics" interface="enp5s0" ifindex=2 args="2000" pid=1968 uid=1002 result="success"
Oct 03 02:33:49 Mike-Intrepid NetworkManager[805]: <info>  [1633242829.6650] audit: op="statistics" interface="enp5s0" ifindex=2 args="500" pid=2267 uid=1002 result="success"
Oct 03 02:33:56 Mike-Intrepid NetworkManager[805]: <info>  [1633242836.7039] audit: op="statistics" interface="enp5s0" ifindex=2 args="0" pid=1968 uid=1002 result="success"
Oct 03 02:33:56 Mike-Intrepid NetworkManager[805]: <info>  [1633242836.7079] audit: op="statistics" interface="enp5s0" ifindex=2 args="500" pid=2267 uid=1002 result="success"
Oct 03 02:53:13 Mike-Intrepid NetworkManager[805]: <info>  [1633243993.8686] dhcp4 (enp5s0): state changed extended -> extended, address=172.31.0.45
Oct 03 03:23:13 Mike-Intrepid NetworkManager[805]: <info>  [1633245793.8746] dhcp4 (enp5s0): state changed extended -> extended, address=172.31.0.45
Oct 03 03:30:00 Mike-Intrepid NetworkManager[805]: <info>  [1633246200.2237] caught SIGTERM, shutting down normally.
Oct 03 03:30:00 Mike-Intrepid systemd[1]: Stopping Network Manager...
░░ Subject: A stop job for unit NetworkManager.service has begun execution
░░ Defined-By: systemd
░░ Support: https://forum.manjaro.org/c/support
░░ 
░░ A stop job for unit NetworkManager.service has begun execution.
░░ 
░░ The job identifier is 4591.
Oct 03 03:30:00 Mike-Intrepid NetworkManager[805]: <info>  [1633246200.2248] dhcp4 (enp5s0): canceled DHCP transaction
Oct 03 03:30:00 Mike-Intrepid NetworkManager[805]: <info>  [1633246200.2249] dhcp4 (enp5s0): state changed extended -> terminated
Oct 03 03:30:00 Mike-Intrepid NetworkManager[805]: <info>  [1633246200.2249] dhcp6 (enp5s0): canceled DHCP transaction
Oct 03 03:30:00 Mike-Intrepid NetworkManager[805]: <info>  [1633246200.2249] dhcp6 (enp5s0): state changed timeout -> terminated
Oct 03 03:30:00 Mike-Intrepid NetworkManager[805]: <info>  [1633246200.2251] manager: NetworkManager state is now CONNECTED_SITE
Oct 03 03:30:00 Mike-Intrepid NetworkManager[805]: <info>  [1633246200.2253] device (wlp6s0): state change: unavailable -> unmanaged (reason 'unmanaged', sys-iface-state: 'managed')
Oct 03 03:30:00 Mike-Intrepid NetworkManager[805]: <info>  [1633246200.2257] device (wlp6s0): set-hw-addr: reset MAC address to 50:76:AF:87:A4:DD (unmanage)
Oct 03 03:30:00 Mike-Intrepid NetworkManager[805]: <info>  [1633246200.2263] device (p2p-dev-wlp6s0): state change: unavailable -> unmanaged (reason 'removed', sys-iface-state: 'removed')
Oct 03 03:30:00 Mike-Intrepid NetworkManager[805]: <info>  [1633246200.2283] exiting (success)
Oct 03 03:30:00 Mike-Intrepid systemd[1]: NetworkManager.service: Deactivated successfully.
░░ Subject: Unit succeeded
░░ Defined-By: systemd
░░ Support: https://forum.manjaro.org/c/support
░░ 
░░ The unit NetworkManager.service has successfully entered the 'dead' state.
Oct 03 03:30:00 Mike-Intrepid systemd[1]: Stopped Network Manager.
░░ Subject: A stop job for unit NetworkManager.service has finished
░░ Defined-By: systemd
░░ Support: https://forum.manjaro.org/c/support
░░ 
░░ A stop job for unit NetworkManager.service has finished.
░░ 
░░ The job identifier is 4591 and the job result is done.
Oct 03 03:30:00 Mike-Intrepid systemd[1]: NetworkManager.service: Consumed 43.098s CPU time.
░░ Subject: Resources consumed by unit runtime
░░ Defined-By: systemd
░░ Support: https://forum.manjaro.org/c/support
░░ 
░░ The unit NetworkManager.service completed and consumed the indicated resources.

System Specifications:
OS: Manjaro Linux x86_64
Kernel: 5.14.7-2-MANJARO
DE: KDE Plasma 5.22.5
CPU: AMD Ryzen 7 1700X
GPU: AMD Radeon Pro WX 2100
Motherboard: AX370-Gaming K5
Ethernet NIC: Intel I211 (Using Kernel module igb)

Band-Aid Solution:
I setup a systemd-networkd .network conf for my wired connection
nano /etc/systemd/network/10-wired.network

[Match]
Name=enp5s0

[Network]
DHCP=yes

Disabled NetworkManager
systemctl disable NetworkManager.service
systemctl disable NetworkManager-wait-online.service

Stopped NetworkManager
systemctl stop NetworkManager.service

Started systemd-networkd and systemd-resolved
systemctl start systemd-neworkd.service
systemctl start systemd-resolved.service

Conclusion:
After switching from NetworkManager to systemd-networkd, my system has now been connected just fine for the last 3 hours. I haven’t gotten systemd-networkd connected to my KDE Network management applet(s), but I don’t need to ever touch my networking again since I’m wired.

On several occations I have had similar issues using NetworkManager.

I only had to change my resolver from openresolv to systemd-resolved (using the stub-resolv.conf).

NetworkManager bugtracker is networkmanager · Search · GitLab

I can try using resolved with NetworkManager in the future and see if that works or not. However, resolved handles DNS requests. I still had issues with all ip networking.

I see - thank you for the info.

Maybe something related to IPv6? I know that sometimes that causes problems if activated but no used.

For the record, I use KDE and NetworkManager with cable without issues.