So after several days digging, i finally found the issue.
the issue wasn't:
- bad cable
- bad switch
- bad NIC
- or anything physical there
So actually, i'm using dnsmasq
as the DNS and DHCP server for my home network. When you start dnsmasq
, by default it will fail because the service of systemd-resolved
is using same port 53
which is used by DNS. Many online guide on using dnsmasq
is asking to just disable the systemd-resolved
by using systemctl disable
, but many source actually say that this service is very important for entire system and do it at your own risk.
So i decided to backup most of my home server settings, and then i reinstall the ubuntu and do some testing. In that testing on fresh system, i do find that the ethernet speed and negotiation are stable. So here my testing:
I tested that fresh system as only NAS for 1 day, without using it as DHCP and DNS server. PASS
I then reconfigure that system with dnsmasq
but this time i dont disable systemd-resolved
, but instead i follow the guide here: https://www.linuxuprising.com/2020/07/ubuntu-how-to-free-up-port-53-used-by.html.
vim /etc/systemd/resolved.conf
- add
DNSStubListener=no
- reboot system
And viola! now my home server work perfectly even better than my router, using my old gaming pc:
- Gigabyte X79 UD3
- i7 3820
- 32GB Corsair Dominator 1600 C9
- 4x4 TB HDD in raid z1
- 1 NVMe for main purpose
- 64GB Sandisk USB 3.2 as boot
- Realtek 8125 PCIe 2.5gbe 4 port
And there we go!