Skip to content

Ethernet RTL 8168 driver on Debian

By default on Debian is used 8169 driver instead of 8168 (Realtek ethernet driver). Also, 8168 driver does not exist.

~# find /lib/modules/`uname -r`/kernel/drivers/net/ethernet/ -name *816*

The network device

~# lspci |grep Ether
03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 09)

The loaded driver

~# lsmod |grep 816
r8169                  68262  0 

Driver installation

~# apt-get update
~# apt-get install dkms
~# wget
~# dpkg -i r8168-dkms_8.040.00-1_all.deb 
Selecting previously unselected package r8168-dkms.
(Reading database ... 45372 files and directories currently installed.)
Preparing to unpack r8168-dkms_8.040.00-1_all.deb ...
Unpacking r8168-dkms (8.040.00-1) ...
Setting up r8168-dkms (8.040.00-1) ...
Loading new r8168-8.040.00 DKMS files...
First Installation: checking all kernels...
~# init 6

After reboot everything looks ok

~# lsmod |grep 816
r8168                 490633  0 
~# dmesg |grep 8168
[    0.245756] pci 0000:03:00.0: [10ec:8168] type 00 class 0x020000
[    0.538032] r8168 Gigabit Ethernet driver 8.040.00-NAPI loaded
[    0.538150] r8168 0000:03:00.0: irq 41 for MSI/MSI-X
[    0.559287] r8168: This product is covered by one or more of the following patents: US6,570,884, US6,115,776, and US6,327,625.
[    0.559290] r8168  Copyright (C) 2015  Realtek NIC software team  
[    4.557205] r8168: eth0: link up

// Update: For Debian Stretch, you can install r8168-dkms from non-free. Is not necessary to download the package.

apt-get install build-essential linux-headers-`uname -r` r8168-dkms

My ‘/etc/apt/sources.list’:

deb stretch main non-free contrib
deb-src stretch main non-free contrib

deb stretch/updates main non-free contrib
deb-src stretch/updates main non-free contrib

# stretch-updates, previously known as 'volatile'
deb stretch-updates main non-free contrib
deb-src stretch-updates main non-free contrib
Published inLinux