Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Official Realtek Driver Binary 1.95 For 2.4.4 Release

    Hardware
    52
    194
    115.1k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • gregeehG
      gregeeh @knight-of-ni
      last edited by stephenw10

      @knight-of-ni said in Official Realtek Driver Binary 1.95 For 2.4.4 Release:

      but I have not found a substitute with Intel nics, quad core cpu, min 4GB ram,

      These are really good,[NUC-C3L2 Fanless Mini PC - link removed] but only dual core.

      Admin edit: Please don't post direct links to our competitors who do nothing to support the project.

      PfSense running on Qotom mini PC
      CPU N3150, 2 GB memory, 32 GB SSD & 2 Realtek Gb Ethernet ports.
      UniFi AC-Lite access point

      1 Reply Last reply Reply Quote 1
      • G
        Griffo @knight-of-ni
        last edited by

        @knight-of-ni Thanks for compiling and uploading the driver once again.

        I can confirm that on my setup the iPerf results from stock driver to your driver went from ~300Mbit per second to around 370Mbits. This is inter-vlan on a hair-pinned 1GB interface.
        And as a bonus the Firewall doesn't stop responding after the test :-)

        1 Reply Last reply Reply Quote 0
        • K
          KNG75
          last edited by

          I'm on the official realtek driver and I got almost 20 days without a watchdog timeout. Unfortunately, I lost connectivity today and had the timeout. Had to reboot to resolve.

          1 Reply Last reply Reply Quote 0
          • m4nf47M
            m4nf47
            last edited by

            Huge thanks to knight-of-ni for providing the latest compiled 1.96 driver and to everyone else in this thread, my rather nervous attempt at finally fixing this dreaded re watchdog timeout error seems to have worked for me using the current 2.4.5-RELEASE-p1. I have also forked and slightly updated the driver compilation instructions just in case anyone else needs to repeat this from scratch here -> https://gist.github.com/kmarf/960f3a00690756f978882607dec94179

            In case of above links not working I've mirrored the compiled driver here -> https://drive.google.com/file/d/15lsDnnCz0C9rD9qIsmT0JeniFsSxgxTR/view?usp=sharing

            and the original driver source file here -> https://drive.google.com/file/d/1rMRo3fM9U-bSHLtpuGsbDY8oao00DSac/view?usp=sharing

            Thanks again, fingers crossed this helps :)

            m4nf47M 1 Reply Last reply Reply Quote 0
            • K
              kmot @knight-of-ni
              last edited by kmot

              @knight-of-ni is there any change You could build if_re.ko for FreeBSD 12.1 as well? :)

              1 Reply Last reply Reply Quote 0
              • RicoR
                Rico LAYER 8 Rebel Alliance
                last edited by

                Here you go: rtl_bsd12.1_drv_v196.04.zip

                -Rico

                K S M 3 Replies Last reply Reply Quote 1
                • K
                  kmot @Rico
                  last edited by

                  @Rico said in Official Realtek Driver Binary 1.95 For 2.4.4 Release:

                  Here you go: rtl_bsd12.1_drv_v196.04.zip

                  -Rico

                  Thank you very much, Rico! :)

                  1 Reply Last reply Reply Quote 0
                  • m4nf47M
                    m4nf47
                    last edited by

                    UPDATE: GREAT NEWS! After 15 days using the compiled 1.96 driver (shared above) on 2.4.5-RELEASE-p1 my overall experience has been a huge reliability improvement, with not a single re watchdog timeout hang, even under traffic loads that were previously almost guaranteed to cause them. On this basis, I'd fully recommend testing this for anyone else struggling with Realtek. Thanks again to knight-of-ni for sharing, much appreciated.

                    1 Reply Last reply Reply Quote 1
                    • N
                      nitewolfgtr
                      last edited by

                      I have a Realtek 2.5G RTL8125B network card and after installing the 1.96 driver on my pfsense 2.4.5-p1, it recognized the card, however, I'm only getting about 500Mbps throughput on my WAN when I use it. I have a gigabit plan with Comcast and I should be getting roughly 1200Mbps but I'm getting nowhere near that. When I switch back over to my Intel gigabit NIC, I get about 950Mbps which tells me that the 1.96 driver isn't able to deliver on the full 2.5G speed.

                      is this what you are experiencing as well?

                      1 Reply Last reply Reply Quote 0
                      • stephenw10S
                        stephenw10 Netgate Administrator
                        last edited by

                        Does it link at 2.5Gbps? Can we see the ifconfig output?

                        What hardware are you using it in?

                        Steve

                        N 1 Reply Last reply Reply Quote 0
                        • N
                          nitewolfgtr @stephenw10
                          last edited by nitewolfgtr

                          @stephenw10
                          It does link at 2.5Gbps and my hardware is HP 290-p0043w w/ Celeron G4900 and 4GB of RAM.

                          I have Trendnet 2.5G network adapter installed in the PCIe x1 slot.

                          Here's the ifconfig output. The 2.5Gbps NIC is re1. When I set my WAN interface back to igb0, I get 950Mbps down on speedtest. I just ran another test on re1 and I'm getting 615Mbps down.

                          igb0: flags=8c02<BROADCAST,OACTIVE,SIMPLEX,MULTICAST> metric 0 mtu 1500
                              options=6403bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,VLAN_HWTSO,RXCSUM_IPV6,TXCSUM_IPV6>
                              ether ac:16:2d:95:08:dc
                              hwaddr ac:16:2d:95:08:dc
                              nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                              media: Ethernet autoselect
                              status: no carrier
                          igb1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
                              options=500b8<VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,VLAN_HWFILTER,VLAN_HWTSO>
                              ether ac:16:2d:95:08:dd
                              hwaddr ac:16:2d:95:08:dd
                              nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                              media: Ethernet autoselect (1000baseT <full-duplex>)
                              status: active
                          igb2: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
                              options=500b8<VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,VLAN_HWFILTER,VLAN_HWTSO>
                              ether ac:16:2d:95:08:dd
                              hwaddr ac:16:2d:95:08:de
                              nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                              media: Ethernet autoselect (1000baseT <full-duplex>)
                              status: active
                          igb3: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
                              options=500b8<VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,VLAN_HWFILTER,VLAN_HWTSO>
                              ether ac:16:2d:95:08:dd
                              hwaddr ac:16:2d:95:08:df
                              nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                              media: Ethernet autoselect (1000baseT <full-duplex>)
                              status: active
                          re0: flags=8803<UP,BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
                              options=2018<VLAN_MTU,VLAN_HWTAGGING,WOL_MAGIC>
                              ether c4:65:16:30:2b:67
                              hwaddr c4:65:16:30:2b:67
                              inet 172.16.2.1 netmask 0xffffff00 broadcast 172.16.2.255
                              inet6 fe80::1:1%re0 prefixlen 64 tentative scopeid 0x5
                              inet6 2601:2c2:780:6919:c665:16ff:fe30:2b67 prefixlen 64 tentative
                              nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                              media: Ethernet autoselect
                              status: no carrier
                          re1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
                              options=2018<VLAN_MTU,VLAN_HWTAGGING,WOL_MAGIC>
                              ether 3c:8c:f8:f9:7b:30
                              hwaddr 3c:8c:f8:f9:7b:30
                              inet6 fe80::3e8c:f8ff:fef9:7b30%re1 prefixlen 64 scopeid 0x6
                              inet6 2001:558:6022:76:cc0e:e073:c4d8:89b7 prefixlen 128
                              inet <REDACTED> netmask 0xfffff800 broadcast 255.255.255.255
                              nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL>
                              media: Ethernet autoselect (2500Base-T <full-duplex>)
                              status: active
                          enc0: flags=0<> metric 0 mtu 1536
                              nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                              groups: enc
                          lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
                              options=680003<RXCSUM,TXCSUM,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
                              inet6 ::1 prefixlen 128
                              inet6 fe80::1%lo0 prefixlen 64 scopeid 0x8
                              inet 127.0.0.1 netmask 0xff000000
                              nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                              groups: lo
                          pflog0: flags=100<PROMISC> metric 0 mtu 33160
                              groups: pflog
                          pfsync0: flags=0<> metric 0 mtu 1500
                              groups: pfsync
                          lagg0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
                              options=500b8<VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,VLAN_HWFILTER,VLAN_HWTSO>
                              ether ac:16:2d:95:08:dd
                              inet 172.16.1.1 netmask 0xffffff00 broadcast 172.16.1.255
                              inet6 fe80::1:1%lagg0 prefixlen 64 scopeid 0xb
                              inet6 2601:2c2:780:6910:ae16:2dff:fe95:8dd prefixlen 64
                              nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                              media: Ethernet autoselect
                              status: active
                              groups: lagg
                              laggproto lacp lagghash l2,l3,l4
                              laggport: igb1 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING>
                              laggport: igb2 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING>
                              laggport: igb3 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING>
                          lagg0.20: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
                              ether ac:16:2d:95:08:dd
                              inet 172.16.20.1 netmask 0xffffff00 broadcast 172.16.20.255
                              inet6 fe80::1:1%lagg0.20 prefixlen 64 scopeid 0xc
                              inet6 2601:2c2:780:6912:ae16:2dff:fe95:8dd prefixlen 64
                              nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                              media: Ethernet autoselect
                              status: active
                              vlan: 20 vlanpcp: 4 parent interface: lagg0
                              groups: vlan
                          lagg0.30: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
                              ether ac:16:2d:95:08:dd
                              inet 172.16.30.1 netmask 0xffffff00 broadcast 172.16.30.255
                              inet6 fe80::1:1%lagg0.30 prefixlen 64 scopeid 0xd
                              inet6 2601:2c2:780:6913:ae16:2dff:fe95:8dd prefixlen 64
                              nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                              media: Ethernet autoselect
                              status: active
                              vlan: 30 vlanpcp: 0 parent interface: lagg0
                              groups: vlan
                          lagg0.40: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
                              ether ac:16:2d:95:08:dd
                              inet 172.16.40.1 netmask 0xffffff00 broadcast 172.16.40.255
                              inet6 fe80::1:1%lagg0.40 prefixlen 64 scopeid 0xe
                              inet6 2601:2c2:780:6914:ae16:2dff:fe95:8dd prefixlen 64
                              nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                              media: Ethernet autoselect
                              status: active
                              vlan: 40 vlanpcp: 2 parent interface: lagg0
                              groups: vlan
                          lagg0.50: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
                              ether ac:16:2d:95:08:dd
                              inet 172.16.50.1 netmask 0xffffff00 broadcast 172.16.50.255
                              inet6 fe80::1:1%lagg0.50 prefixlen 64 scopeid 0xf
                              inet6 2601:2c2:780:6915:ae16:2dff:fe95:8dd prefixlen 64
                              nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                              media: Ethernet autoselect
                              status: active
                              vlan: 50 vlanpcp: 4 parent interface: lagg0
                              groups: vlan
                          lagg0.60: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
                              ether ac:16:2d:95:08:dd
                              inet 172.16.60.1 netmask 0xffffff00 broadcast 172.16.60.255
                              inet6 fe80::1:1%lagg0.60 prefixlen 64 scopeid 0x10
                              inet6 2601:2c2:780:6916:ae16:2dff:fe95:8dd prefixlen 64
                              nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                              media: Ethernet autoselect
                              status: active
                              vlan: 60 vlanpcp: 1 parent interface: lagg0
                              groups: vlan
                          lagg0.70: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
                              ether ac:16:2d:95:08:dd
                              inet 172.16.70.1 netmask 0xffffff00 broadcast 172.16.70.255
                              inet6 fe80::1:1%lagg0.70 prefixlen 64 scopeid 0x11
                              inet6 2601:2c2:780:6917:ae16:2dff:fe95:8dd prefixlen 64
                              nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                              media: Ethernet autoselect
                              status: active
                              vlan: 70 vlanpcp: 5 parent interface: lagg0
                              groups: vlan
                          lagg0.80: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
                              ether ac:16:2d:95:08:dd
                              inet 172.16.80.1 netmask 0xffffff00 broadcast 172.16.80.255
                              inet6 fe80::1:1%lagg0.80 prefixlen 64 scopeid 0x12
                              inet6 2601:2c2:780:6918:ae16:2dff:fe95:8dd prefixlen 64
                              nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                              media: Ethernet autoselect
                              status: active
                              vlan: 80 vlanpcp: 1 parent interface: lagg0
                              groups: vlan
                          lagg0.10: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
                              ether ac:16:2d:95:08:dd
                              inet 172.16.10.1 netmask 0xffffff00 broadcast 172.16.10.255
                              inet6 fe80::1:1%lagg0.10 prefixlen 64 scopeid 0x13
                              inet6 2601:2c2:780:6911:ae16:2dff:fe95:8dd prefixlen 64
                              nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                              media: Ethernet autoselect
                              status: active
                              vlan: 10 vlanpcp: 3 parent interface: lagg0
                              groups: vlan
                          
                          1 Reply Last reply Reply Quote 0
                          • stephenw10S
                            stephenw10 Netgate Administrator
                            last edited by

                            What if you use re0? What does the CPU load look like when you're testing? top -aSH

                            1 Reply Last reply Reply Quote 0
                            • N
                              nitewolfgtr
                              last edited by

                              @stephenw10 said in Official Realtek Driver Binary 1.95 For 2.4.4 Release:

                              top -aSH

                              re0 works great and I get the full 950Mbps during speedtest.

                              CPU load for re0 is around 20-25% during speedtest, whereas re1 is around 10-15%.

                              Also, does this mean anything?
                              Output of pciconfig -lv for re0 shows the correct controller, but re1 is missing the device attribute.

                              % pciconfig -lv re0
                              
                              re0@pci0:2:0:0: class=0x020000 card=0x843f103c chip=0x816810ec rev=0x15 hdr=0x00
                                      vendor     = 'Realtek Semiconductor Co., Ltd.'
                                      device     = 'RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller'
                                      class      = network
                                      subclass   = ethernet
                              
                              % pciconfig -lv re1
                              
                              re1@pci0:4:0:0: class=0x020000 card=0x012310ec chip=0x812510ec rev=0x00 hdr=0x00
                                  vendor     = 'Realtek Semiconductor Co., Ltd.'
                                  class      = network
                                  subclass   = ethernet
                              
                              1 Reply Last reply Reply Quote 0
                              • stephenw10S
                                stephenw10 Netgate Administrator
                                last edited by

                                The missing description is unlikely to matter.

                                I was more interested in the queue or interrupt loads on your CPU cores while testing. igb will use multiple CPU cores by default. re usually isn't but this is new hardware so....

                                CPU usage between those NICs looks to be inline with the throughput at least.

                                Steve

                                1 Reply Last reply Reply Quote 0
                                • P
                                  pedropetz19 @breakaway
                                  last edited by

                                  @breakaway Thanks, you save me!!!

                                  1 Reply Last reply Reply Quote 0
                                  • S
                                    spippo @Rico
                                    last edited by

                                    @Rico

                                    THANKS! it works (on Xigmanas 12.1)

                                    Do you know if WOL works? I tried to activate it, but I wasn't been able to make it work. Not sure if it's something that I do or it's just that it's not implemented in the driver (or the board for that matters).

                                    Thank you
                                    Bye

                                    1 Reply Last reply Reply Quote 0
                                    • RicoR
                                      Rico LAYER 8 Rebel Alliance
                                      last edited by

                                      Nope sorry, I don't own any Realtek Card. 😊

                                      -Rico

                                      1 Reply Last reply Reply Quote 0
                                      • stephenw10S
                                        stephenw10 Netgate Administrator
                                        last edited by

                                        Now that there is a FreeBSD package for this I would use that over a, relatively, unknown binary source:

                                        pkg add https://pkg.FreeBSD.org/FreeBSD:11:amd64/latest/All/realtek-re-kmod-v196.04_2.txz
                                        

                                        That would be much easier if it was in our repo though. Let me see...

                                        Steve

                                        1 Reply Last reply Reply Quote 4
                                        • stephenw10S
                                          stephenw10 Netgate Administrator
                                          last edited by

                                          https://redmine.pfsense.org/issues/11079

                                          Should be in snaphots soon.

                                          1 Reply Last reply Reply Quote 2
                                          • stephenw10S
                                            stephenw10 Netgate Administrator
                                            last edited by stephenw10

                                            Looks good:

                                            [2.5.0-DEVELOPMENT][admin@apu.stevew.lan]/root: pkg search realtek
                                            realtek-re-kmod-v196.04_2      Kernel driver for Realtek PCIe Ethernet Controllers
                                            

                                            So do:
                                            pkg install realtek-re-kmod
                                            then
                                            echo 'if_re_load="YES"' >> /boot/loader.conf.local

                                            Then reboot and check the boot logs for:

                                            re0: <Realtek PCIe GbE Family Controller> port 0x1000-0x10ff mem 0xf7a00000-0xf7a00fff,0xf7900000-0xf7903fff irq 16 at device 0.0 on pci1
                                            re0: Using Memory Mapping!
                                            re0: Using 1 MSI-X message
                                            re0: ASPM disabled
                                            re0: version:1.96.04
                                            re0: Ethernet address: 00:0d:b9:37:30:10
                                            

                                            Current version should be installed every time. It's built against our kernel source etc.

                                            It's unlikely this will be backported to 2.4.5 but far easier (and probably safer) to use in 2.5 when it's released or in snapshots now.

                                            Steve

                                            G 1 Reply Last reply Reply Quote 5
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.