24.03 and Realtek NICs
-
Hello,
Can someone please advise how I can go about installing the latest version of the Realtek NIC driver for 24.03?
I have tried the following:
[24.03-RELEASE][admin@pfSense.home.arpa]/root: pkg install realtek-re-kmod Updating pfSense-core repository catalogue... pfSense-core repository is up to date. Updating pfSense repository catalogue... pfSense repository is up to date. All repositories are up to date. Checking integrity... done (0 conflicting) The most recent versions of packages are already installed
If I try install the 199.01 version from FreeBSD my firewall locks up and is unable to get a stable connection.
Thanks
-
@monstafish have you added the required loader lines to load the realtek driver?
See https://forum.netgate.com/post/1171234 for example
echo 'if_re_load="YES"' >> /boot/loader.conf.local echo 'if_re_name="/boot/modules/if_re.ko"' >> /boot/loader.conf.local
-
@patient0 - I did but then had to disable as my firewall stopped processing traffic so I removed them thinking it was a driver version issue.
-
@monstafish what is the device you're running pfSense on and what RealTek NIC is used in it?
-
Details of NICs as follows:
re0@pci0:2:0:0: class=0x020000 rev=0x15 hdr=0x00 vendor=0x10ec device=0x8168 subvendor=0x10ec subdevice=0x0123 vendor = 'Realtek Semiconductor Co., Ltd.' device = 'RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller' class = network subclass = ethernet re1@pci0:3:0:0: class=0x020000 rev=0x15 hdr=0x00 vendor=0x10ec device=0x8168 subvendor=0x10ec subdevice=0x0123 vendor = 'Realtek Semiconductor Co., Ltd.' device = 'RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller' class = network subclass = ethernet
-
@monstafish There seem to be a few unhappy user of Realtek NIC out there. See FreeBSD forum.
It is suggested that it may is related to https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=275882.
The proposed solution is to install version 198 of the realtek driver (net/realtek-re-kmod198).
-
@patient0 Bummer - not ideal!
Stupid question, but how would I go about reverting to the the 198 version?
Thanks
-
@monstafish since quite a few people seem to run into it the maintainer created an extra package until the issue is resolved:
https://www.freshports.org/net/realtek-re-kmod198/
I'm not sure if it is available on pfSense+ (my SG-1100 is in the lab but I'm not), it's available on FreeBSD 15.
Running
pkg search realtek
on FreeBSD 15 show:# pkg search realtek realtek-re-kmod-199.00_1 ... realtek-re-kmod198-198.00 ...
-
There is only one version the realtek kmod pkg in out repo and that's the one you should use.
You need those loader variables to actually load the module at boot. If it is loaded you will see the driver version reported in the boot log like:
re0: <Realtek PCIe GbE Family Controller> port 0x1000-0x10ff mem 0xf7900000-0xf7900fff,0xf7800000-0xf7803fff irq 16 at device 0.0 on pci1 re0: Using Memory Mapping! re0: Using 1 MSI-X message re0: ASPM disabled re0: version:1.99.04 re0: Ethernet address: 00:0d:b9:37:30:10
Steve
-
Though I have not tested it with an RTL8125 based card. Is that what you're using?
-
There is only one version the realtek kmod pkg in out repo and that's the one you should use.
The Realtek kmod198 is in the pfSense repo (https://github.com/pfsense/FreeBSD-ports/tree/devel/net/realtek-re-kmod198) but that doesn't mean it's available in pfSense+ then?
-
If you compile it for the pfSense kernel it will work but that's.... non-trivial! You can't just install the FreeBSD port, the module won't load.
-
This is what gets reported from the console:
re0@pci0:2:0:0: class=0x020000 rev=0x15 hdr=0x00 vendor=0x10ec device=0x8168 subvendor=0x10ec subdevice=0x0123 vendor = 'Realtek Semiconductor Co., Ltd.' device = 'RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller' class = network subclass = ethernet
Searching for the drivers, this is what I can see:
[24.03-RELEASE][admin@pfSense.home.arpa]/root: pkg version | grep realtek realtek-re-kmod-199.00_1 =
Whats the best way to revert to the appropriate driver as the 199 driver seems to be buggy!
-
If you have removed the two loader values and rebooted it will not be loading the kmod driver.
If it is loaded it will show in the boot log:
[24.03-RELEASE][admin@apu.stevew.lan]/root: grep version:1 /var/log/dmesg.boot re0: version:1.99.04 re1: version:1.99.04 re2: version:1.99.04
-
@stephenw10 Thanks - I remove the loader values because I could not get my WAN connection up and no devices on my LAN were getting a DHCP address.
Commenting out the loader values and rebooting was the only way I could get a connection but now my firewall seems to lock up when under load (server backups to cloud).
Thanks
-
Hmm, but not using 2.5G NICs for either interface?
Your output above shows the same NICs I have in this APU with the driver loaded:
[24.03-RELEASE][admin@apu.stevew.lan]/root: pciconf -lv re0 re0@pci0:1:0:0: class=0x020000 rev=0x06 hdr=0x00 vendor=0x10ec device=0x8168 subvendor=0x10ec subdevice=0x0123 vendor = 'Realtek Semiconductor Co., Ltd.' device = 'RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller' class = network subclass = ethernet
-
@stephenw10 Nope, just 1Gbe NICs connected to a 1GB internet link.
Happy to re-enable and share any logs if you let me know what type of logs you’re looking for?
Cheers
-
Yes I would try it. First check the boot logs where is shows the output from the driver when it attaches (or fails to).