软路由的网口芯片为 i225b3
黑群晖用的 USB 外置 RTL8156B 2.5G 网卡
台式机是ASUS b550 的RTL8125B的板载 2.5G 网卡
尝试排障的进度:
在Openwrt上wget黑群晖的文件,满速2.5G
在台式机上wget黑裙晖的文件,掉速500Mbps
在台式机上wget软路由的文件,满速2.5G
无论哪一个测试,CPU占用都没有超过10%过
将台式机与黑群晖直连,速度 2.5G 没问题
将黑群晖网卡静止数小时冷却,在经过软路由的情况下与台式机测速,掉速500Mbps问题依旧
更换网口 更换网线 ,无效
重启软路由,时好时坏(大概率重启恢复满速),能跑到2.5G 然后过一段时间就掉速到500Mbps
折腾了数个小时,网上也发帖求助,也搜索了一些文章,有人说是i225的bug,有人说是螃蟹网卡bug,一直找不到原因所在,因此决定更换固件尝试一下
先安装了ESXI虚拟化软件,然后安装爱快软路由系统,奇迹发生了,不知道为什么就在爱快下连续测试数个小时iperf3一直都可以跑到2Gbps以上,非常稳定
就这样用了一晚上,第二天起来突然就想起爱快和openwrt默认设置有什么不一样,然后就想起爱快刚安装好的时候需要手动配置lan口,然后我就自己把三个lan口用网桥接在了一起。
既然有了思路那就去操作,直接ESXI安装Openwrt,然后配置br-lan,web界面不知道怎么设置,我就用network配置文件去将三个lan口配置了一个br-lan,这里附上我的配置,有需要的自己参考改
config interface 'loopback'
option device 'lo'
option proto 'static'
option ipaddr '127.0.0.1'
option netmask '255.0.0.0'
config globals 'globals'
option packet_steering '1'
config interface 'wan'
option proto 'dhcp'
option device 'eth3'
config interface 'wan6'
option proto 'dhcpv6'
option reqaddress 'none'
option reqprefix 'auto'
option device 'eth3'
config interface 'lan'
option proto 'static'
option ipaddr '192.168.4.1'
option netmask '255.255.255.0'
option ip6assign '60'
option _orig_ifname 'eth0'
option _orig_bridge 'true'
option device 'br-lan'
list dns '192.168.4.1'
option defaultroute '0'
config interface 'docker'
option device 'docker0'
option proto 'none'
option auto '0'
config device
option name 'br-lan'
option type 'bridge'
list ports 'eth0'
list ports 'eth1'
list ports 'eth2'
就这样,问题解决了,测试了一个小时,内网两台设备跑出了4.5Gbps的交换速度,我虚拟化出来的两个核心占用跑到了60%,单线程从群晖下载文件稳定在2Gbps ,多线程跑满2.5Gbps