Skip to content

Linux driver for Realtek RTL8111/8168/8411 PCIe GBE NIC

Notifications You must be signed in to change notification settings

airium/Realtek-PCIe-GBE-NIC-Driver

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Realtek PCIe GBE NIC Driver

Applicable for RTL8111/8168/8411 PCIe GBE NIC.

Using the official driver will resolve sending rate being capped at 4MB/s per tcp connection under tcp-bbr, typically when you're using the default r8169 nic driver on RTL8168 device. Newer distros like Ubuntu 18.04.3 with a mainline Linux 5.3 should not have the problem any more. You should try this driver only if you did notice the sending rate degradation.

  1. Install dependences (assume sudo su)

    apt update && apt install build-essential libelf-dev linux-headers-$(uname -r)

    Note: Download header packages by yourself if you are using Ubuntu PPA kernel.

  2. Download and install the driver (assume sudo su)

    This repo contains a copy of the official driver (8.047.05, tested working as of Linux 5.3):

    git clone https://github.com/airium/Realtek-PCIe-GBE-NIC-Driver.git
    cd Realtek-PCIe-GBE-NIC-Driver/r8168-8.047.05
    sh autorun.sh
    # this script will break the network temporarily
    # on Ubuntu 16/18, your ssh session will be automatically resumed in ~1 minute
    # on Debian 8/9, you might have to reboot manually after ~5 minutes

    Note: You can also check newer drivers from Realtek's official site. You probably have to search for new ones if Realtek once again changed their url). mtorromeo seems to be very happy to do a long-term mirroring.

  3. Check if the driver of the network interface in which you are interested has been updated (assume sudo su)

    for i in $(ls /sys/class/net); do
        echo $i '====================='
        ethtool -i $i
    done

    Example of success

    enp4s0 =====================
    driver: r8168
    version: 8.047.05-NAPI
    firmware-version:
    expansion-rom-version:
    bus-info: 0000:04:00.0
    supports-statistics: yes
    supports-test: no
    supports-eeprom-access: no
    supports-register-dump: yes
    supports-priv-flags: no
    

    Note: You need to re-install the driver after changing kernel.

Reference

https://www.unixblogger.com/how-to-get-your-realtek-rtl8111rtl8168-working-updated-guide/

Compared with the reference, this guide complements necessary dependencies, and removes the blacklist operation (it seems the Realtek driver will do it for you).

About

Linux driver for Realtek RTL8111/8168/8411 PCIe GBE NIC

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages