威联通QNAP TS-453Bmini编译螃蟹8156 USB 2.5G网卡驱动
最近家里升级了ASUS的AX86U路由器,新路由器上有个2.5G的网口,就幻想能够把家里的威联通453Bmini NAS的接到2.5G口,通过Wifi6来实现设备更高速的取文件。所以就无脑买了个2.5G的USB网卡。
然而,现实还是很残酷的,威联通自己的5G USB网卡卖600多,当然不支持这种160块的2.5G网卡了。
看了下网卡的芯片是螃蟹的RTL8156B,螃蟹官网提供了Linux的驱动,所以想着自己编译看看能不能用。网上找了QNAP的公布的Kernel源码。
QTS kernel: https://sourceforge.net/projects/qosgpl/
Realtek rtl8152-56 的linux 驱动: https://www.realtek.com/en/component/zoo/category/network-interface-controllers-10-100-1000m-gigabit-ethernet-usb-3-0-software
453Bmini的Linux Kernel是4.14的,编译环境需要4.9的gcc,所有建议使用Ubuntu 16进行编译,可以直接用源装gcc-4.9.3。
apt install libelf-dev make gcc-4.9 ln -s /usr/bin/gcc-4.9 /usr/bin/gcc
具体QNAP NAS的Kernel可以在这里查到: https://www.qnap.com.cn/en/release-notes/kernel
编译步骤不多:
- 先将QTS Kernel解压,将8156驱动包下所有文件放到 GPL_QTS/src/linux-4.14/drivers/net/usb/ 文件夹下
- 在GPL_QTS/src/linux-4.14路径下执行
make modules SUBDIRS=drivers/net/usb/
然后把GPL_QTS/src/linux-4.14/drivers/net/usb/下面编译生成的 usbnet.ko 和 r8152.ko文件提取出来放到NAS里。
插上网卡,连上网线,用ssh登录NAS,执行:
/sbin/rmmod r8152 /sbin/rmmod usbnet /sbin/insmod /share/CACHEDEV1_DATA/文件夹/usbnet.ko /sbin/insmod /share/CACHEDEV1_DATA/文件夹/r8152.ko
在网络设配器中可以看到:
路由器上看到的握手速率也是2.5Gbps了。
用一台装了AX200网卡的老破Intel NUC试了下,在无遮挡的情况,NUC和AX86U握手速率2.4G,从NAS下载文件在最高可达150MB/s左右,超过千兆有线网卡113MB/s的天花板了。也比用普通wifi 867M情况下70MB左右的速度快了不少。
NAS用Docker装的Iperf3,多线程测速在1.2Gbps左右:
可见usb网卡驱动已经生效了,但是速率没上2G,暂时不清楚是Wifi本身的损耗,还是啥别的原因。
最后附上我编译的驱动,理论上相同kernel的qnap NAS都可以试试看。 另外rtl8156和rtl8156b是相同的驱动。
BD盘: https://pan.baidu.com/s/15Tb_0MpLiKmoovdBpKYLgA 提取码: cygv
在453Dmini上正常工作
453Dmini自带2.5G网口了吧
博主能再分享一下么,链接过期了
链接: https://pan.baidu.com/s/1KhACKSCLa6Spl69J86VuSw 提取码: n2hm
您好!能分享一份KO文件吗,非常感谢,邮箱820aaa@163.com
升级5.0就不需要啦~
在Qmanager上一直显示断线,不过用好像还是可以用。TS-551