Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[Plugin] Realtek R8125 R8126 R8168 and R8152\6\7 drivers

Featured Replies

5 hours ago, JayDee73 said:

Do you think (or even know?) that this is a benefit of the newest 7.2 beta version? Did you also get C8/C10 states with this driver under 7.1.x version?

I don’t know for sure, I never made it this far in my experimenting with 7.1, but my guess is that the same tweaks of using this driver and modprobe conf file would have worked to get to higher c states as well. 7.2 has been working pretty well thus far so I’m not planning to downgrade to check though.

  • Replies 460
  • Views 175.1k
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • There are many unexplained  stories about Realtek cards and ASPM ... so I made a little investigation:   The kernel in-tree r8169 driver is a generic driver for all Realtek network cards, de

  • Thanks to ich777 and jinlife compiling the r8127 driver is incredibly easy: Just grab jinlife's repo (GitHub link) and compile it in ich777's unraid_kernel docker (GitHub link). Result: https://githu

  • Thanks for the plugins, looks like they are working fine both for the 8152 and 8125.   FYI, if with the 8152 you don't get 2.5GbE advertised link speed try adding to the go file:   e

Posted Images

On 8/26/2025 at 6:28 PM, olesam said:

I just would like to post some appreciation for this driver and thank those in this thread for their suggestions. I have a Gigabyte B760M DS3H motherboard with an RTL8125 Ethernet controller. Adding the modprobe.d r8125.conf file with the line "options r8125 aspm=1" has taken me from only reaching C2 to now seeing C10 at times (mostly C8 though) with all of my docker containers running. This is on Unraid 7.2.0-beta2.

This took my typical low load power use (drives spun down, 12 containers running but not doing much) from ~23 W to ~18W.

Another question: Did you try any iperf performance tests with this setup? I had the issue that as soon as I added the mentioned conf file, performance dramatically went down from 2.5G to about 250Mbit. At least in one direction and with 7.1 version. After weighing performance and power consumption, I decided to stick with the performance (so no conf file), but with activated powertop which at least brought me to C3 states.

But maybe things have improved with 7.2, which would be great news.

Edited by JayDee73

Hello! I've built a new Unraid server with an ASUS Z790 GAMING WIFI7 ATX LGA1700 motherboard (hey, it was on sale as part of a bundle). According to the specs, it should support 2.5 GbE, but I only get 1 GbE. I'm transferring a lot of data and the increased speeds would really help. I've connected it to an ethernet switch capable of 2.5 GbE, and have tested the cables to make sure every wire is punched down correctly.

In Tools > System Devices, I see this:

[10ec:8168] 05:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet Controller (rev 15)

That led me to believe that I have a Realtek 8168 in there, and that I should install this driver from Community Apps instead of using the driver from Unraid:

RTL8168(B)/RTL8111(B) PCI

However, when I do, I still only see 1 GbE for eth0. From the driver description, it doesn't seem like it supports 2.5 GbE:

This package contains the Realtek OOT Drivers and installs them, a reboot is required after installing the plugin (upgrading to a newer Unraid version maybe needs a second reboot too).

The following Chipsets are supported by this driver:

Network Interface Controllers > 10/100/1000M Gigabit Ethernet > PCI Express

RTL8111B/RTL8111C/RTL8111D/RTL8111E/RTL8111F/RTL8111G(S)/RTL8111H(S)//RTL8118(A)(S)/RTL8119i/RTL8111L/RTL8111K

RTL8168B/RTL8168E/RTL8168H

RTL8111DP/RTL8111EP/RTL8111FP

RTL8411/RTL8411B

Source: https://github.com/jinlife/unraid-r8125-r8152-driver

What can I do to enable 2.5 GbE for my motherboard's ethernet port?

Edited by flammable

Wow, thanks. I don't know how I misread that. I appreciate the quick help with this!

I hoping someone can assist an Unraid novice to get his machine to do C10 states. I was getting C10 before my migration to 7.1.4.

My Gigabyte motherboard has a R8125 chip. I have installed the R8125 drivers from apps. Everything works except I only achieve C3 states. Looking through this thread, I would like to try adding the line:

options r8125 aspm=1

to the r8125.conf file. However, this file does not exist. Do I need to create it? I do have a r8169.conf file, but that looks like it is only disabling the driver for the r8169 and only has the line:

blacklist r8169

Again, things work fine, just hoping to lower the power usage a little.

Edited by Cruzerman

On 8/29/2025 at 11:50 AM, JayDee73 said:

Another question: Did you try any iperf performance tests with this setup? I had the issue that as soon as I added the mentioned conf file, performance dramatically went down from 2.5G to about 250Mbit. At least in one direction and with 7.1 version. After weighing performance and power consumption, I decided to stick with the performance (so no conf file), but with activated powertop which at least brought me to C3 states.

But maybe things have improved with 7.2, which would be great news.

I had never done an iperf test, but just tried using my Windows laptop as the client. My laptop and network switches are all 1GbE so I can't comment on 2.5GbE performance, but in the iperf3 test I averaged about 920 Mbits/sec, so seems like the settings are ok!

3 hours ago, Cruzerman said:

I hoping someone can assist an Unraid novice to get his machine to do C10 states. I was getting C10 before my migration to 7.1.4.

My Gigabyte motherboard has a R8125 chip. I have installed the R8125 drivers from apps. Everything works except I only achieve C3 states. Looking through this thread, I would like to try adding the line:

options r8125 aspm=1

to the r8125.conf file. However, this file does not exist. Do I need to create it? I do have a r8169.conf file, but that looks like it is only disabling the driver for the r8169 and only has the line:

blacklist r8169

Again, things work fine, just hoping to lower the power usage a little.

Yes you need to create the r8125.conf file and then restart your server. In the screenshot below you can see what I did...

image.png

  • 2 weeks later...

Hey everyone,

today I received my new Realtek 8127 10-Gbit's network card.

Is there any driver/plugin available for Unraid to get this card working?

Here’s the PCI output:

03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. Device 8127 (rev 05)

I already tried the plugin "RTL8126 PCI Drivers & RTL8125(B) PCI Drivers" since I thought maybe 8127 support is included (because it’s mentioned on GitHub), but unfortunately the card still doesn’t show up in my Unraid Network settings.

Thanks in advance for any hints!

  • 3 weeks later...

I recently bought the Wavlink 5gbps to USB-C adapter (which I think uses RTL8157): https://amzn.eu/d/hqWvtXS

It worked for the first two days when I used it with Unraid on my Beelink EQ12, no driver installation necessary. Just today it’s not connecting - would you recommend I install this plugin for more stability? I’m not sure if Unraid natively added support for this adapter. Thanks!

  • 2 weeks later...
On 9/20/2025 at 1:45 AM, Nerdcloud said:

Hey everyone,

today I received my new Realtek 8127 10-Gbit's network card.

Is there any driver/plugin available for Unraid to get this card working?

Here’s the PCI output:

03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. Device 8127 (rev 05)

I already tried the plugin "RTL8126 PCI Drivers & RTL8125(B) PCI Drivers" since I thought maybe 8127 support is included (because it’s mentioned on GitHub), but unfortunately the card still doesn’t show up in my Unraid Network settings.

Thanks in advance for any hints!

I too have just swapped from some Marvell AQC 10Gbe cards to the new RTL8127. All fine on the main PC under windows but not supported as yet on UnRAID. Looks like Linux kernel 6.1.6 adds support which may be a while off for us. I see the drivers are in the github files for this so would love to see them implemented with an update.

I will try to help with any testing if needed.

I reached out to support about the RTL8127. They said that we will likely see support in 7.3 with the next expected LTS kernel 6.18 depending on how release timings work out. So a little way off which is understandable as stability is the priority.

If a plug-in can be released before that would be ideal for those of us adopting early.

12 minutes ago, MedicalFlyer said:

I reached out to support about the RTL8127. They said that we will likely see support in 7.3 with the next expected LTS kernel 6.18 depending on how release timings work out. So a little way off which is understandable as stability is the priority.

If a plug-in can be released before that would be ideal for those of us adopting early.

Ah okay, perfect — thanks for checking! Let’s wait and see then. It’d be cool if the card gets supported soon, whether through the kernel or a plugin 🙂

  • 4 weeks later...

Looking for support for the 8127. Realtek 10GB adapter. I have seen it on Jin’s GitHub. But unsure how to implement it.

Thank you the community for the help.

EDIT just saw other comments. Hopefully we can get a plugin moving for this as it appears to be a hot item.

Thank you! Following now.

Edited by Projosh

  • 2 weeks later...

Could you create a plugin to make the wifi 7 rtl8912 cards work?

  • 2 weeks later...

I've been checking the README of the RTL8127 driver package from Realtek's website. I've pasted it below. Having no experience with installing drivers outside of plugins in CA, I have a few questions:

  1. Is manually installing the driver like the README instructs possible under Unraid?

  2. If so, this install would be wiped at every update, correct?

  3. Is this "manual" driver any different than the kernel driver that's coming soon ?

  4. Can this package serve as the basis for a CA plugin?

Moreover, I'd just like to join the voices calling for a plugin for this chipset. It is the 10Gbe NIC for the masses: it's dirt cheap (38€ on Aliexpress atm), supports both SFP+ and RJ45, comes in PCIe4.0 x1 slots, consumes less than 2W, and supports ASPM out of the box (even though it for now locks C-states at C3 - similar behaviour to other RTL kernel drivers that have power savings off due to instability).

In comparison:

  • Intel X710 supports ASPM and C7+; but cost an arm and a leg, have 2 ports minimum, and come only in x8 format.

  • AQC113 comes in PCIe 4.0 x1 slots; but is 50-100% more expensive than the RTL8127, uses double the power, is RJ45 only, and needs to be flashed with custom firmware to even support ASPM and C7+.

  • AQN100 is SFP+, supports ASPM and C7+, but the driver is apparently not included in the kernel anymore, and is now unstable according to Unraid forums.

  • Then there's all the X520/X540/X550 which "support" ASPM, but lock C-states to C3.

I've seen how long we had to wait for Unraid to update the Kernel. And I've seen how bad these kernel drivers can be (RTL8125 still have power saving disabled in the kernel due to instability on early models, fucking over other users). I'd literally be down to pool some money to get this plugin done by the community, but done right with ASPM and C-state support. Even if Unraid updates the kernel, the RTL8127 kernel driver is currently broken and does not go further than C3. But some commenters seem to claim using this driver from Realtek directly would allow for better power management.

<Linux device driver for Realtek Ethernet controllers>

	This is the Linux device driver released for Realtek 5 Gigabit Ethernet controllers with PCI-Express interface.

<Requirements>

	- Kernel source tree (supported Linux kernel 2.6.x and 2.4.x)
	- For linux kernel 2.4.x, this driver supports 2.4.20 and latter.
	- Compiler/binutils for kernel compilation

<Quick install with proper kernel settings>
	Unpack the tarball :
		# tar vjxf r8127-11.aaa.bb.tar.bz2

	Change to the directory:
		# cd r8127-11.aaa.bb

	If you are running the target kernel, then you should be able to do :

		# ./autorun.sh	(as root or with sudo)

	You can check whether the driver is loaded by using following commands.

		# lsmod | grep r8127
		# ifconfig -a

	If there is a device name, ethX, shown on the monitor, the linux
	driver is loaded. Then, you can use the following command to activate
	the ethX.

		# ifconfig ethX up

		,where X=0,1,2,...

<Set the network related information>
	1. Set manually
		a. Set the IP address of your machine.

			# ifconfig ethX "the IP address of your machine"

		b. Set the IP address of DNS.

		   Insert the following configuration in /etc/resolv.conf.

			nameserver "the IP address of DNS"

		c. Set the IP address of gateway.

			# route add default gw "the IP address of gateway"

	2. Set by doing configurations in /etc/sysconfig/network-scripts
	   /ifcfg-ethX for Redhat and Fedora, or /etc/sysconfig/network
	   /ifcfg-ethX for SuSE. There are two examples to set network
	   configurations.

		a. Fixed IP address:
			DEVICE=eth0
			BOOTPROTO=static
			ONBOOT=yes
			TYPE=ethernet
			NETMASK=255.255.255.0
			IPADDR=192.168.1.1
			GATEWAY=192.168.1.254
			BROADCAST=192.168.1.255

		b. DHCP:
			DEVICE=eth0
			BOOTPROTO=dhcp
			ONBOOT=yes

<Modify the MAC address>
	There are two ways to modify the MAC address of the NIC.
	1. Use ifconfig:

		# ifconfig ethX hw ether YY:YY:YY:YY:YY:YY

	   ,where X is the device number assigned by Linux kernel, and
		  YY:YY:YY:YY:YY:YY is the MAC address assigned by the user.

	2. Use ip:

		# ip link set ethX address YY:YY:YY:YY:YY:YY

	   ,where X is the device number assigned by Linux kernel, and
		  YY:YY:YY:YY:YY:YY is the MAC address assigned by the user.

<Force Link Status>

	1. Force the link status when insert the driver.

	   If the user is in the path ~/r8127, the link status can be forced
	   to one of the 5 modes as following command.

		# insmod ./src/r8127.ko speed=SPEED_MODE duplex=DUPLEX_MODE autoneg=NWAY_OPTION

		,where
			SPEED_MODE	= 1000	for 1000Mbps
					= 100	for 100Mbps
					= 10	for 10Mbps
			DUPLEX_MODE	= 0	for half-duplex
					= 1	for full-duplex
			NWAY_OPTION	= 0	for auto-negotiation off (true force)
					= 1	for auto-negotiation on (nway force)
		For example:

			# insmod ./src/r8127.ko speed=100 duplex=0 autoneg=1

		will force PHY to operate in 100Mpbs Half-duplex(nway force).

	2. Force the link status by using ethtool.
		a. Insert the driver first.
		b. Make sure that ethtool exists in /sbin.
		c. Force the link status as the following command.

			2.5G before kernel v4.10
			# ethtool -s eth0 autoneg on advertise 0x802f

			2.5G for kernel v4.10 and later
			# ethtool -s eth0 autoneg on advertise 0x80000000002f

			5G for kernel v4.10 and later (Couldn't be supported before kernel v4.10)
			# ethtool -s eth0 autoneg on advertise 0x180000000002f

			# ethtool -s eth0 autoneg on advertise 0x1000 (10G)
			# ethtool -s eth0 autoneg on advertise 0x002f (1G)
			# ethtool -s eth0 autoneg on advertise 0x000f (100M full)
			# ethtool -s eth0 autoneg on advertise 0x0003 (10M full)

<Jumbo Frame>
	Transmitting Jumbo Frames, whose packet size is bigger than 1500 bytes, please change mtu by the following command.

	# ifconfig ethX mtu MTU

	, where X=0,1,2,..., and MTU is configured by user.

	RTL8127 supports Jumbo Frame size up to 9 kBytes.

<EEE>
    Get/Set device EEE status

		Get EEE device status
		# ethtool --show-eee enp1s0

		Set EEE device status
		# ethtool --set-eee enp1s0 eee on tx-lpi on tx-timer 1546 advertise 0x0008 (100M full)
		# ethtool --set-eee enp1s0 eee on tx-lpi on tx-timer 1546 advertise 0x0020 (1G)
		# ethtool --set-eee enp1s0 eee on tx-lpi on tx-timer 1546 advertise 0x8000 (2.5G)
  • 4 weeks later...

I would also be willing to put some money in for the driver support for RTL8127. The ASPM and low power of this NIC makes it perfect for a home server! I just about bought one, but searched the forums first and found this thread.

Edited by IDQ

For the RTL8127 just install a custom kernel from https://github.com/thor2002ro/unraid_kernel. All you have to do is put those files on your usb boot drive and Bob's your uncle. I have had the RTL8127 running on my unraid at full 10Gbps for almost a month now with no issues whatsoever.

6 minutes ago, spencerthomass said:

For the RTL8127 just install a custom kernel from https://github.com/thor2002ro/unraid_kernel. All you have to do is put those files on your usb boot drive and Bob's your uncle. I have had the RTL8127 running on my unraid at full 10Gbps for almost a month now with no issues whatsoever.

Thanks, I'll take a look.
I've been missing the 10G link with my main system when backing up to my server.

7 hours ago, spencerthomass said:

I have had the RTL8127 running on my unraid

Would you mind answering a few questions, since you're daily driving this setup?

  1. How do you backup and restore before taking the plunge to a custom kernel? I've never done this outside atomic distros. Do you just use Unraid Connect's flash backup function?

  2. What happens to this custom kernel through restarts/updates? It gets replaced by the default kernel every update, correct?

  3. Is ASPM correctly enabled? (Can be checked with ASPM Helper plugin or lspci -vvv )

  4. Even if ASPM is enabled, kernel Realtek drivers are known to limit CPU C-states. Would you mind confirming with Powertop that your setup can go below C3 at idle? (If your other components allow it of course)

Thanks in advance!

11 hours ago, IDQ said:

I would also be willing to put some money in for the driver support for RTL8127.

This will be supported by Unraid 7.3 natively, since there's a stock kernel driver.

7 hours ago, SinoBreizh said:
  1. How do you backup and restore before taking the plunge to a custom kernel? I've never done this outside atomic distros. Do you just use Unraid Connect's flash backup function?

  2. What happens to this custom kernel through restarts/updates? It gets replaced by the default kernel every update, correct?

1) Use the Connect backup and you can also make a manual backup before, just in case.
2) Restarts won't affect the USB filesystem but an update might (more probably) especially if it does a verify to make sure things have updated correctly.

With Kernel 6.18 being out and LTS then 7.3 should have native support. As for the power states I'm not sure but it'll be a good start.

9 hours ago, JorgeB said:

This will be supported by Unraid 7.3 natively, since there's a stock kernel driver.

Will the RTL8125 chipset be supported as well?

And the Plug-in has an update available. What does it have?

8125 has worked without plugin for a long time. In some setups the plugin works better, in others default is fine.

Edited by Kilrah

11 hours ago, JorgeB said:

This will be supported by Unraid 7.3 natively, since there's a stock kernel driver.

Unfortunately, as I mentioned in a previous comment, the kernel driver is apparently bad and disables power saving. A system running an RTL8126 (5Gbe) or 8127 (10Gbe) will be unable to go below C3:

image.png

Package stays at C3, so it looks like standard r8169 behavior. Kernel's r8169 driver has power saving disabled by default even if card supports it.

I've read here and there that the dedicated driver from Realtek fixes this, which is why I've been inquiring about packaging the Realtek driver instead.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.