家庭网络 篇二:升级至2.5G网口及WIFI6无线网络 - 2.5G软路由
创作立场声明:本文所测商品都是自费购入,文章观点都是个人感受,并不会有所偏颇。只是供参考,在购买时还是看个人需求。
追加修改(2021-03-29 09:34:56):
修正关于J1900的说法,不是不支持虚拟机和Docker,装还是能装,只是能力太差,不建议用来虚拟化。确切的说是这个CPU不支持VD-T,不能硬件直通。硬盘,显卡和网卡等都不能直通。另外CPU可能吃不消,性能一般,玩虚拟化做软路由没什么前途。
篇1 已经测试过2.5G的WIFI6无线路由器,这里继续篇2。
由于静音的情况下,WIFI6无线文件传输还是没有突破千兆有线,只是用WIFI6无线路由器比较难获得高速文件传输。路由器的USB3.0接口接个移动硬盘速度都一般,而且有的无线路由器无法SSH获得root权限而装一些自定义插件,为了一劳永逸,将来不会绑定在某个品牌无线路由器上,只是把路由器当AP发送无线信号用,所以接下来只有折腾软路由这条路了。这个软路由折腾比较麻烦,需要一些IT动手能力,下面的记录会尽量写的简单易用。
购买理由
最主要3个需求,文件存储,静音,无线高速传输。另外还需要路由器能装一些插件等。
软路由就是个微型小主机,可以自己装一些开源的路由软件,想怎么控制就怎么控制,可以配合主路由做旁路由使用,或者直接做主路由,无线路由器配合做AP。我这里是第二种做法。
如果需要静音的话,就不能买有风扇的软路由,另外我有2.5G网口的需求,还需要支持SATA硬盘接口。
目前这个合适的选择只有2020年的网红众筹产品J4125的CPU配4个2.5G网口的小主机软路由,今年又众筹一波到了3.0版本,多了2个USB2.0接口。
这个小主机是被动铝壳散热,完全没噪音,也具有NVME和两个SATA接口,还能支持3.5寸硬盘,我正好有两个已经买了10年的2T闲置老硬盘,一个希捷,一个西数正好可以用,完美满足我的需求,就是有点贵,裸机1千左右,还要自己配电源,内存和固态硬盘。买了根8G的协德内存,终生保固,还有250G的国产Asgard固态硬盘,保修5年。这个硬盘主要是用作缓存,运行程序和虚拟机用,电影也是缓存,重要资料不会保存在上面,稍微重要点的资料会备份至另外两个硬盘,甚至上传百度云。
其实还可以推荐其他更便宜的软路由方案,例如J3455的软路由,自己加一个USB转2.5G网卡也行,不过可能会不稳定。不推荐J1900的软路由,虽然也能上2.5G网卡,但是无法虚拟机,不支持Docker功能。可玩性不高。
使用感受
用到软路由,就开始需要选操作系统了。以这个J4125的CPU能力,单装路由系统有些浪费,于是开始研究虚拟机系统,目前推荐比较多的有ESXi,PVE和Unraid操作系统。其中Unraid默认支持Docker和虚拟机,网卡,硬盘直通很方便,可以在虚拟机里面装Openwrt开源路由系统。
不过用Unraid需要有间接上网,应用市场才会用得比较顺畅。 我正好有机场,于是选了Unraid,首先实验了下Unraid的开心版,正版需要购买。
干货
1. 可以去俄罗斯Softoroom发布的页面去下载最原始的Unraid 6.8.2开心版,其他经手过很多人的版本不知道有没有被加料。我用HEX对比查看了下里面破解的文件,还是比较干净的。 原版下载地址。
下载安装至U盘做驱动盘,很多教程,各位可以搜索一下,这里不重复了,只写一下如何支持2.5G网卡驱动的过程。U盘不建议USB3.0的,发热很烫,用USB2.0的就可以了,8G到32G都可以。推荐闪迪酷豆CZ33的USB2.0 32G版本,插到机器上不起眼,也不容易被碰到。Unraid只是开机启动读U盘比较多,用USB2.0就够了。
2. Unraid 6.8.2版本对2.5G的8125螃蟹网卡驱动支持不好,需要更新驱动,可以去这位thor2002ro大神开源非官方unraid_kernel的 Github主页下载
在Release页面里面下载最新 5.10.0rc4-thor-Unraid+.NV.6.8.zip 文件, 解压后可以看到bzimage和bzmodules等4个文件,覆盖到6.8.2的U盘内同名文件即可。
这个开源的kernel支持软路由内的8125芯片的2.5G螃蟹网卡,也支持USB3.0转2.5G网卡的8156芯片。 你可以插两个USB3.0转2.5G网卡,软路由就可以支持6个2.5G网口了。 这个kernel还支持nVidia显卡,AMD的CPU等,比官方支持的硬件驱动多不少。
如果是使用最新的Unraid 6.9.1版本,默认已经有最新的2.5G网卡驱动,直接用就行了。不用做上面的步骤。不过上面的6.8.2版本也很稳定,跑了两月没重启过,速度也很快,没任何问题。
3. 编译自己的Openwrt路由固件。这个可能需要懂一点编程,不过自己动手,丰衣足食,而且自己编译的用起来放心,不怕黑客加料。目前比较好用的带插件的Openwrt是Lean和Lienol的源代码库,都已经支持8125的2.5G螃蟹网卡。 我们可以使用Github的db-one的OpenWrt-Actions-Lean-Lienol Action Workflow功能来编译源代码,不需要自己配编译环境。Action原始地址。
我改造了一下,各位可以fork jinlfe的Action库,编译没问题。
用这个Github的Action库,不需要自己有Linux电脑,也能编译Openwrt开源代码,全程都在Github上进行。而且速度很快,只要2小时。自己找台电脑编译可能要6~7个小时。懂用Github的话,可以在库里面修改脚本,可以修改几个常用的几个openwrt插件。方便配置,各位可以自行Fork了之后配置自己想要的Openwrt固件。 不建议下载网上各种他人编译的版本,也不知道加料了没。
我个人比较喜欢用Leinol的,比较稳定,跑一个星期也没问题。不过这都是看运气,源代码不知道啥时候不稳定了,天天更新,没事去build一下,更新一个版本,哪个稳定用哪个。
源代码编译是点击 watch 即可触发,触发后等几个小时即可在Actions里面看到编译好的固件。这个固件可以直接用在Unraid的虚拟机里面使用。
将OpenWrt-firmware下载下来后,解压会得到两个文件。再次解压,其中一个170MB左右的文件 openwrt-x86-64-combined-squashfs-efi.img 即虚拟机镜像。
以上所有文件,弄下来都稍微有点麻烦,我都拷贝了一份在百度盘里面。直接下载:
百度盘链接,提取码: 41pv
硬件准备
先装好内存和硬盘,可以把USB2.0的口松掉一颗螺丝,方向朝里放,并把U盘插入USB2.0接口。
然后将SATA线和电源线通过USB2.0的开口导出来。SATA数据线需要选头比较小的,否则盖子盖不上。电源线是sh2.54型号的,不要买错接口了,还有12V黄色的和红色5V的位置有两种接法。接反了会烧掉硬盘,注意买对接法。
SATA数据线京东上推荐下面这个,或者马云家上买个头更小的。SATA电源线京东上貌似没有,需要找马云家的。或者直接买两根小主机店家的SATA数据电源一体线,店家会专门发个背板开孔的机器,不用通过USB2.0开口导出。
最终接好的情况如下。
Unraid基本使用
1. 开始装系统,制作好的U盘已插入J4125小主机,另将小主机连上HDMI显示器和USB键盘。插电启动后不停按Del键进入BIOS,去掉一些IPv6 PXE Support,这样选择Boot的地方会清爽很多。
这样下面的一排PXE启动项都会消失,只留下U盘SanDisk。
2. 在Boot启动处只选SanDisk即可,这样保持并启动后即可进入Unraid界面。 如没进入,可能是U盘没做好。可以重做一下,注意U盘盘符名需要是UNRAID。
3. 有需要还可以关掉网卡的ASPM节能设置,让螃蟹网卡好好工作,据说新的驱动不关也行。不过关了也没啥问题,反正功率没多大。路径 Chipset->South Cluster Configuration->PCI Express Configuration->PCI Express Root Port, 所有1到6里面的 ASPM 都改成 Disable。
4. 改完BIOS后保存修改并退出,自动重启,此时会从U盘启动。进入Unraid启动项选择。
其中默认第一项Unraid OS是正常进入Unraid系统,最后会启动到获取第一个IP处,这里建议连一根网线在电脑和小主机之间,免得网络没启动,获取不到IP。默认每次重启小主机都是此模式。
第二项是Unraid启动加进入GUI界面模式,可以直接进入Unraid的网页界面操作,方便无网络测试。
第三项是安全模式,停用所有插件和GUI界面,这样可以进入命令行模式,方便输入命令排查系统核心问题。一般用不着。
第四项也是带GUI界面的安全模式,但是停用所有插件,这样可以进入界面排查插件的问题。
5. Unraid启动完,最后会出现IP。在电脑的浏览器输入显示的IP即可进入Unraid系统,默认用户root,无密码。
6. 进入Unraid后第一件事是改IP地址,先不要配硬盘和虚拟机。配置了后可能这里会变灰改不动了。另外需要给root用户加密码。 其实还可以用Unraid官方出的制作U盘工具来提前改好IP,直接用Localzip来安装。
注意默认是active-backup(1)模式,不要动,这个是主备模式,正常情况下只有一个网口起作用,其他口都会是备用。这个默认模式正好适合管理口。 将IP改成静态,配置成192.168.0.38/24。其中24表示子网掩码是255.255.255.0。网关改成192.168.0.1。DNS改成114.114.114.114和223.5.5.5。(图中的233.5.5.5是个错误地址,被一些教程带坑里了。应该是223.5.5.5,能Ping通才行。我在申请SSL证书的时候才发现233这个连不上)
改完IP后重启小主机,后面的操作可以拔掉显示器和键盘了,只要连网线即可。电脑的网卡需要配置IP为192.168.0.33,子网掩码为255.255.255.0。
7. 重新网页连上Unraid后,接下来配置硬盘阵列,设定固态硬盘为缓存盘。启动硬盘阵列,可以在磁盘配置里面设定开机自动启动阵列。
我的两个老2T硬盘没有选校验盘,用了校验盘后速度很慢,只有几十MB/S的速度,虽然安全。目前我主要是存电影,而且后期我会用脚本自动多盘同步备份重要资料。所以都是用做数据盘。
8. 安装插件和安装Openwrt虚拟机,先装个APP市场 community.applications
如果家里没有全屋间接上网,需要用如下地址安装。
https://gitee.com/BlueBuger/community.applications/raw/master/plugins/community.applications.plg
如果有间接上网,可安装如下地址。
装好这个之后才有App应用市场。另外6.8.2版本还需要装个关键插件vfio.pci,直通网卡。
https://raw.githubusercontent.com/Skitals/unraid-vfio-pci/master/plugins/vfio.pci.plg
如果没有间接上网,装这些都挺麻烦的。可以想办法下载到本地,然后传到Unraid的flash共享目录,就是闪迪启动U盘目录,可以在共享目录中找到刚才装插件的子目录。插件装失败了,但是子目录都创建出来了。
网络不行,装插件的时候会有报错信息,缺什么文件就上传什么,也就两三个文件就装好了。 如果有间接上网,那就是傻瓜式的一键就装好了。
6.9以上版本装好应用市场App之后可以找到语言选项,直接安装汉化。 6.8.2版本市场里面没有,需要网上找。
6.9以上版本也自带了硬盘直通插件,不需要装vfio.pci了,6.8.2版本需要自己装插件。
使用vfio插件将4个网口中的后3个直通,留第1个做管理网口。
安装Openwrt虚拟机
1. 将之前自己编译好的 openwrt-x86-64-combined-squashfs-efi.img 镜像放入Unraid的 isos 共享目录。
2. 在Unraid虚拟机界面创建Linux虚拟机。配置如下,由于openwrt是efi的镜像,所以BIOS需要选OVMF。 SeaBIOS主要是用在传统引导镜像。 另外虚拟硬盘位置选手动,并且右边路径选到刚上传的isos的openwrt固件。 总线可以选SATA。
3. 下面勾选所有直通的3个网口。创建虚拟机即可。
用我们自己的Github库编译出来的Openwrt镜像,默认IP地址就是192.168.0.1,所以不用进入VNC来改IP地址。有需要可以自己改。不过可能还是需要进入VNC改下Openwrt的root用户密码,或者进后台网页改。
Openwrt基本配置
简单的家庭网络拓扑图,只用Openwrt就够了,比较简单。小主机有交换机的功能,软路由和群晖都可以在外网控制,家庭内部也都能访问所有资源。
1. 进入Openwrt主页后,即可看到所有4个网口,第一个口eth0是虚拟的半双工网口,另外三个都是直通的全双工物理口。
2. 进入Lan口物理设置,将第一个虚拟口和中间两个物理口桥接绑在一起。这样3个口互通,其中eth1口连AX6000做AP,eth2口连群晖218+。 Unraid的文件通过eth0口也可以在AX6000的局域网WIFI管理访问,同时也可以直接网线连电脑管理访问。
3. Wan口是独立的物理网口eth3,连千兆光猫拨号上网即可。
其他基本的Openwrt配置可以参考其他网友的教程,都差不多。
总结
文件存储
在使用这个J4125的X86小主机软路由后,Openwrt能装各种插件。并且Unraid是一个NAS系统,还能安装Docker,装更多的Docker插件。功能非常强大。Unraid的虚拟机也可以装一个Windows系统,可以24小时运行Windows服务。 文件存储,各种扩展服务功能是没问题的。有需求还可以在虚拟机里面装个群晖。
静音
由于是被动散热,小主机和AX6000都没风扇,没有声音。2T硬盘是老的5400转的,转起来有点点声音,没有酷狼6T的7200转的炒豆子的声音大。而且Unraid硬盘可以休眠,休眠后基本上就没声音了。日常当路由运行,三个硬盘都会休眠,基本没声音。
速度
有线传输速度很快。Unraid访问的主要是J4125内缓存的NVME固态硬盘的文件,可以跑满2.5G的网速,达到280MB/S每秒。
无线速度靠近可以达到 204MB/S的速度左右,超过千兆有线的110MB/S。
5米远之后,上传也能有115MB/S, 下载160MB/S。 这个主要是AX200无线网卡功率接收不行了,如果有两个AX6000组Mesh,应该可以速度更高。
只运行Openwrt路由,带几十个设备的情况下,CPU使用率只有5~6%左右。 上传下载大文件会到25%左右。
功耗在2个2T硬盘和1个250GB的固态硬盘都启动的情况下,启动有20到25W,稳定后大概是16W的功耗。Unraid还有个好处是可以硬盘休眠,3个硬盘休眠之后的功耗是6.2W,固态硬盘开启也就6.4W。主要是2T的机械硬盘耗电。平时2T硬盘用得不多,系统主要访问的硬盘还是固态硬盘。
总体来说,投入快2000元,家庭网络升级至2.5G网口和WIFI6无线路由器,群晖也升级了。WIFI无线传输速度从 866Mbps (70MB/S) 提升到 2.4Gbps(200MB/S)。有线从 110MB/S 提升到 280MB/S。提升还行吧。 WIFI6也就能提升这么多了,只要期望不高,还是够用的。而且现在新款的苹果和安卓手机都支持WIFI6了,内网速度都可以同时得到提升。
如果觉得这个升级有点贵,也可以继续等等,价格肯定都会降下来的。
以上都是个人折腾的记录,供参考。后面还可以继续折腾这个Unraid系统,继续打造基本的NAS系统服务,实现自动重要文件多盘备份,带SSL证书的笔记,上传百度云盘的功能等。
英仙座铂尔修斯
校验提示文案
昭华凋
校验提示文案
值友1766358556
网络我就简单粗暴了
光猫10.10.10.1
路由10.10.10.2
unraid10.10.10.3
DNS直接上三个管理ip
不过我还不知道ip能加子掩码
我以前试过op炸了进不去unraid后台
我直接把unraid的网关改成管理ip一样
pc端改网关能进后台无痛更新openwrt固件
现在卡在外网无法连接家里的ipv6
ipv6的防火墙太麻烦了,大神有好的办法吗
证书我还没搞过呢
校验提示文案
烽麒
校验提示文案
整多笼奶黄包
校验提示文案
usee00123
校验提示文案
呵呵kk
校验提示文案
宇宙大波
校验提示文案
問道于心
校验提示文案
值友8656833900
校验提示文案
不是这么玩的
校验提示文案
王堡垒
校验提示文案
随缘宅
校验提示文案
wangc
校验提示文案
yz50505
校验提示文案
pixy999
校验提示文案
偷石头的石匠
校验提示文案
ht2863
校验提示文案
chaoschaos
校验提示文案
suboy
校验提示文案
suboy
校验提示文案
chaoschaos
校验提示文案
ht2863
校验提示文案
王堡垒
校验提示文案
不是这么玩的
校验提示文案
值友8656833900
校验提示文案
問道于心
校验提示文案
英仙座铂尔修斯
校验提示文案
偷石头的石匠
校验提示文案
pixy999
校验提示文案
宇宙大波
校验提示文案
呵呵kk
校验提示文案
usee00123
校验提示文案
yz50505
校验提示文案
整多笼奶黄包
校验提示文案
烽麒
校验提示文案
值友1766358556
网络我就简单粗暴了
光猫10.10.10.1
路由10.10.10.2
unraid10.10.10.3
DNS直接上三个管理ip
不过我还不知道ip能加子掩码
我以前试过op炸了进不去unraid后台
我直接把unraid的网关改成管理ip一样
pc端改网关能进后台无痛更新openwrt固件
现在卡在外网无法连接家里的ipv6
ipv6的防火墙太麻烦了,大神有好的办法吗
证书我还没搞过呢
校验提示文案
wangc
校验提示文案
昭华凋
校验提示文案
随缘宅
校验提示文案