Official Realtek Driver Binary 1.95 For 2.4.4 Release
-
@Nazar Well, this isn't really a pfsense question. pfsense is based on freebsd and pf. So any drivers are talking to the os kernel, and this is definetely os specific.
I doubt if it makes any difference if its on lan or wan.
Its very difficult for such a backdoor to go undetected in any case.
In doubt, you should compile it yourself (and then you also need to trust the compilation environment too.)
Since realtek ethernet chipsets seem to have issues with freebsd, any important installation is using intel cards anyways. -
@Nazar , it's not easy / not worth, use the one you have downloaded, i'm pretty sure it's safe..
you need a freebsd installation with source (virtual machine or something)
instructions are here anyway
https://gist.github.com/jovimon/524e116471f249626fd2ccd141f3fe05just changing the commands from 1.94 to those of 1.95.
-
Ok Thanks.
And here extra question about custom driver for Realtek.
If i use custom driver does it mean that everytime when pfsense update i have to search/compile new custom driver for new version?
Thanks
-
@Nazar That really depends if the update also changes underlying os version.
Sometimes it does sometimes it does not.
it is something to be aware of, however pf versions don't come that often.
And opting for an Intel based lan chipset solves all this. -
If it fails to load because of a kernel mismatch it will just use the in-kernel driver instead. It's not as bad as an otherwise unsupported device.
Steve
-
Interestingly I was using the 2.4.5 compiled driver and it fixed all my issues. I then upgraded pfsense to 2.4.5_P1. Kldstat showed that driver was still loading fine after the upgrade.
But the interface stopped responding after approx 48 hours.I've now updated to the 2.4.5_p1 compiled driver from above, I will test this out for stability and report back.
Edit: Anyone else using this version and using vlans with hairpinning on a single interface? I'm getting atrocious performance now however it used to work perfectly.
Connecting to host 192.168.1.20, port 5201
[ 4] local 192.168.20.116 port 35122 connected to 192.168.1.20 port 5201
[ ID] Interval Transfer Bandwidth Retr Cwnd
[ 4] 0.00-1.01 sec 253 KBytes 2.05 Mbits/sec 2 1.41 KBytes
[ 4] 1.01-2.00 sec 0.00 Bytes 0.00 bits/sec 1 1.41 KBytes
[ 4] 2.00-3.00 sec 0.00 Bytes 0.00 bits/sec 0 1.41 KBytes
[ 4] 3.00-4.16 sec 0.00 Bytes 0.00 bits/sec 1 1.41 KBytes
[ 4] 4.16-5.01 sec 0.00 Bytes 0.00 bits/sec 0 1.41 KBytes
[ 4] 5.01-6.02 sec 0.00 Bytes 0.00 bits/sec 0 1.41 KBytes
[ 4] 6.02-7.10 sec 0.00 Bytes 0.00 bits/sec 1 1.41 KBytes
[ 4] 7.10-8.01 sec 0.00 Bytes 0.00 bits/sec 0 1.41 KBytes
[ 4] 8.01-9.01 sec 0.00 Bytes 0.00 bits/sec 0 1.41 KBytes
[ 4] 9.01-10.00 sec 0.00 Bytes 0.00 bits/sec 0 1.41 KBytes
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-10.00 sec 253 KBytes 207 Kbits/sec 5 sender
[ 4] 0.00-10.00 sec 65.0 KBytes 53.3 Kbits/sec receiver -
Today i have to setup old server for pfSense (X7SLM-L MB with 2xRealtek RTL8111C-GR). After some time of intensive load by LAN networks - connection is hangs for few minutes and then themselves restore work. I build Realtek drivers 1.95, and install, seems that they works stable, but that drivers didn't use MSI-X interrupts and CPU usage is 10-20% more (40-60%), than on stock FreeBSD drivers (25-30%).
Then i try to disable "CPU Spread Spectrum" in BIOS and use stock FreeBSD drivers, and with a big surprise Realtek starts works stable!
So, you can try do this, maybe there is a point of problem with Relatek LAN. -
A little update (for those who wants to try it out):
New Realtek driver 1.96.04 for BSD systems
I compiled it against FreeBSD 11.3-release (latest) and worked for me.
Unfortunatey i am not able to upload it here, so you are about to compile for yourself at the moment.
-
@wkn said in Official Realtek Driver Binary 1.95 For 2.4.4 Release:
1.96.04
Any chance for a link/paste to the change log? (googling didn't reveal anything)
-
I want to thank the original poster TheNarc, this thread and the compiled drivers provided were very helpful. The compiled driver is much better than the default drivers, it really made me realize how terrible the default drivers are.
In the end I chose to switch to another PC/server with Intel NICs, even if this is just for a home network.
Thanks again!
-
Realtek is not very "open" in their information policies. So don't expect anything. Also the update frequency is very slow for network drivers.
-
Just downloaded, built, and installed the 196.04 if_re.ko driver on one of my pfsense boxes. It's too soon to declare success, but so far so good.
For those that don't already know a good set of instructions can be found here:
https://gist.github.com/jovimon/524e116471f249626fd2ccd141f3fe05 -
Anyone care to also upload the compiled driver please?
-
Here is the 196.04 driver I built:
https://www.dropbox.com/s/mjye6acwfwgwv7s/if_re.ko?dl=0 -
huge size increase, from 509128 to 852256....
april driverServer listening on 5201
Accepted connection from 192.168.31.51, port 50796
[ 5] local 192.168.31.1 port 5201 connected to 192.168.31.51 port 50797
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 31.3 MBytes 262 Mbits/sec 65 72.7 KBytes
[ 5] 1.00-2.00 sec 42.5 MBytes 356 Mbits/sec 65 62.7 KBytes
[ 5] 2.00-3.00 sec 42.8 MBytes 359 Mbits/sec 53 41.3 KBytes
[ 5] 3.00-4.00 sec 42.3 MBytes 355 Mbits/sec 51 51.3 KBytes
[ 5] 4.00-5.00 sec 44.3 MBytes 372 Mbits/sec 42 68.4 KBytes
[ 5] 5.00-6.00 sec 43.9 MBytes 368 Mbits/sec 67 49.9 KBytes
[ 5] 6.00-7.00 sec 40.0 MBytes 336 Mbits/sec 32 72.7 KBytes
[ 5] 7.00-8.01 sec 39.5 MBytes 327 Mbits/sec 42 67.0 KBytes
[ 5] 8.01-9.00 sec 39.0 MBytes 332 Mbits/sec 60 54.2 KBytes
[ 5] 9.00-9.99 sec 39.5 MBytes 334 Mbits/sec 52 40.5 KBytes
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-9.99 sec 405 MBytes 340 Mbits/sec 529 senderServer listening on 5201
Accepted connection from 192.168.31.51, port 50807
[ 5] local 192.168.31.1 port 5201 connected to 192.168.31.51 port 50808
[ ID] Interval Transfer Bitrate
[ 5] 0.00-1.00 sec 27.8 MBytes 233 Mbits/sec
[ 5] 1.00-2.01 sec 35.0 MBytes 292 Mbits/sec
[ 5] 2.01-3.00 sec 31.4 MBytes 265 Mbits/sec
[ 5] 3.00-4.00 sec 34.8 MBytes 292 Mbits/sec
[ 5] 4.00-5.00 sec 35.3 MBytes 296 Mbits/sec
[ 5] 5.00-6.00 sec 36.2 MBytes 304 Mbits/sec
[ 5] 6.00-7.00 sec 34.7 MBytes 291 Mbits/sec
[ 5] 7.00-8.00 sec 34.6 MBytes 290 Mbits/sec
[ 5] 8.00-9.03 sec 36.9 MBytes 301 Mbits/sec
[ 5] 9.03-10.00 sec 35.4 MBytes 307 Mbits/sec
[ ID] Interval Transfer Bitrate
[ 5] 0.00-10.00 sec 342 MBytes 287 Mbits/sec receiverServer listening on 5201
new driver
Server listening on 5201
Accepted connection from 192.168.31.51, port 51061
[ 5] local 192.168.31.1 port 5201 connected to 192.168.31.51 port 51062
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 35.4 MBytes 297 Mbits/sec 51 59.9 KBytes
[ 5] 1.00-2.00 sec 44.6 MBytes 374 Mbits/sec 43 78.4 KBytes
[ 5] 2.00-3.01 sec 34.8 MBytes 290 Mbits/sec 78 60.2 KBytes
[ 5] 3.01-4.00 sec 45.6 MBytes 387 Mbits/sec 71 59.9 KBytes
[ 5] 4.00-5.00 sec 45.0 MBytes 377 Mbits/sec 46 75.6 KBytes
[ 5] 5.00-6.00 sec 45.1 MBytes 378 Mbits/sec 41 69.9 KBytes
[ 5] 6.00-7.00 sec 44.4 MBytes 374 Mbits/sec 52 72.7 KBytes
[ 5] 7.00-8.00 sec 41.7 MBytes 349 Mbits/sec 32 48.5 KBytes
[ 5] 8.00-9.00 sec 44.9 MBytes 377 Mbits/sec 56 2.85 KBytes
[ 5] 9.00-10.00 sec 42.8 MBytes 359 Mbits/sec 47 49.9 KBytes
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 424 MBytes 356 Mbits/sec 517 senderServer listening on 5201
Accepted connection from 192.168.31.51, port 51064
[ 5] local 192.168.31.1 port 5201 connected to 192.168.31.51 port 51065
[ ID] Interval Transfer Bitrate
[ 5] 0.00-1.00 sec 28.5 MBytes 239 Mbits/sec
[ 5] 1.00-2.00 sec 36.2 MBytes 303 Mbits/sec
[ 5] 2.00-3.00 sec 35.6 MBytes 299 Mbits/sec
[ 5] 3.00-4.00 sec 35.7 MBytes 299 Mbits/sec
[ 5] 4.00-5.03 sec 36.1 MBytes 296 Mbits/sec
[ 5] 5.03-6.00 sec 36.9 MBytes 318 Mbits/sec
[ 5] 6.00-7.00 sec 35.7 MBytes 299 Mbits/sec
[ 5] 7.00-8.00 sec 36.2 MBytes 304 Mbits/sec
[ 5] 8.00-9.03 sec 37.5 MBytes 307 Mbits/sec
[ 5] 9.03-10.00 sec 37.2 MBytes 320 Mbits/sec
[ ID] Interval Transfer Bitrate
[ 5] 0.00-10.01 sec 356 MBytes 298 Mbits/sec receiverServer listening on 5201
No significant differences... retries still exist
testing on a direct lan connection -
Thanks to everyone who has kept this thread alive, and for pointing out 1.96. I try to check the Realtek driver page periodically but hadn't since this version was released. @knight-of-ni thanks for posting a compiled driver. I plan to load it on my two machines as well, but just wanted to confirm that you build it for 2.4.5-RELEASE-p1 (FreeBSD 11.3-STABLE) and not a 2.5 pre-release before I do. Thanks again!
-
I built if_re.ko in a vm running FreeBSD 11.3-RELEASE. Works for me.
-
Just loaded the driver compiled by @knight-of-ni on one of my two pfSense machines and all looks good. @netblues regarding the size increase, I'm not certain, but I'm willing to bet that most if not all of it is attributable to the fact that Realtek seems to release a single driver to support all their chipsets. So this 1.96 version may not have any changes at all for their older chipsets, and merely add support for newer ones. As noted elsewhere, since they're not great at communicating change logs or release notes, it's hard to know.
-
The 196 driver adds support for Realtek's line of new 2.5Gbps chipsets. I'm sure that is part of the reason why the new driver is larger.
I've created a diff for anyone who wants to look through the changes in the source code:
https://github.com/knight-of-ni/rtl_bsd_drv/commit/8d5ec5a609e5ce906ffc349f7a5d8432d2f03e4b -
@knight-of-ni
Working perfect on 2.4.5-RELEASE-p on my ZOTAC ZBOX CI325Note if you are showing Errors Out just double check under System -> Advanced -> Networking that all 3 Hardware offloading options are disabled.
I was showing some on my VLAN interfaces, and apparently mine were not disabled for some reason, seems to have fixed that. YMMV