R8500重回主力
2024 年 12 月 26 日
因为 R8500 固件太差的原因,之前家里的网络一直是 R5S 做主路由,R8500 做无线 AP。看看 R8500 的 CPU 使用率,总觉得浪费。
几个月之前,看到总算有人做了 R8500 的 OpenWrt 固件,当时就想到可以把 R5S 省出来做点其他实验。但由于保障家人使用网络的稳定性,拖到最近才有机会给 R8500 刷固件。
刷机没什么好说的,照着原始说明,先刷原始固件,保证版本一致。再刷 sysupgrade。
刷完之后用了几天,发现无线还是有点小问题,记录一下。
其实 Netgear 的原始固件看起来就有点问题。R8500 是三频,有 2x5G 和 1x2.4G。其中 5G 部分默认配成自动切换,但无线使用时间长了就容易断开。如果把自动切换关掉,这样就是 3 个接入点,会稍微稳定一点。
刷了 OpenWrt 之后,无线的问题就比较明显了。具体来说,似乎是当连接在无线 AP 上的所有的 Station 下线之后,radio device 就会关掉, 跟 interface 之间状态就变成无关联,然后就搜不到无线 AP 了。
由于我对 OpenWrt 了解还是非常有限,没办法抓到 radio device 关闭的时间点。所以干脆就按定时检查处理,做了个计划任务,每 5 分钟执行一次脚本,检查 radio device 是否在线,不在线就启动。这一段时间用下来,感觉还可以。问题算是基本解决了。
参考脚本如下:
#!/bin/sh
check_radio() {
local RADIO="$1"
local AP="$2"
STATUS=$(iw dev "$AP" info | grep 'ssid' | awk '{print $2}')
if [ "$STATUS" == "" ]; then
echo "$RADIO is down. Restarting..."
wifi up $RADIO
else
echo "$RADIO is up."
fi
}
check_radio radio0 phy0-ap0
check_radio radio1 phy1-ap0
check_radio radio2 phy2-ap0
现在 R8500 终于能完成那些本该它完成的所有工作了。