The problem is that ubuntu loads wrong driver for the network - r8169 instead of r8168. The solution is to download correct driver from realtek website and use it.
- Check to see if the r8169 module is loaded
lsmod | grep r816 r8168 41104 0 -> lspci -v 01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 03) Subsystem: ASRock Incorporation Device 8168 Kernel driver in use: r8169 Kernel modules: r8169
- Download the official Realtek driver
Realtek RTL8111/RTL8168
- Remove the r8169 module
-> rmmod r8169 -> mv /lib/modules/`uname -r`/kernel/drivers/net/r8169.ko ~/r8169.ko.backup
( the ` is a backtick, it is not an apostrophe or single quote )
- Build the new r8168 module for the kernel
-> bzip2 -d r8168-8.009.00.tar.bz2 -> tar -xf r8168-8.009.00.tar -> cd r8168-8.009.00 -> make clean modules -> make install
- Rebuild the kernel module dependencies
-> depmod -a -> insmod ./src/r8168.ko
- Add r8168 module to /etc/modules
-> echo "r8168" >> /etc/modules
Reboot, You are done!
- Examine that ONLY the r8168 module is loaded for the interface
-> lspci -v 01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 03) Subsystem: ASRock Incorporation Device 8168 Kernel driver in use: r8168 Kernel modules: r8168
-> mv /initrd.img ~/initrd.img.backup -> mkinitramfs -o /boot/initrd.img-`uname -r` `uname -r`
Links: