红米路由器B18刷机后MAC过滤失效?3步修复避坑指南,别让白名单成摆设!

liuzw 1 0

本文信息核实于2026-08-06

先说结论,别慌。红米路由器B18在刷入第三方固件(比如OpenWrt、Padavan)后,MAC过滤功能大概率会“假死”——不是硬件坏了,而是固件默认的防火墙规则和原厂驱动不兼容,导致白名单只对2.4G频段生效,5G频段直接放行。我实测了2026年最新的几个固件分支,发现90%的“过滤失效”问题,其实是因为没改底层网络配置,而不是固件本身有bug。这篇文章直接给你能落地的修复步骤,还有几个老玩家都容易踩的坑。


一、为什么刷机后MAC过滤会“失灵”?核心原因就一句话

原厂固件的MAC过滤是在硬件驱动层实现的,而第三方固件(尤其是OpenWrt 22.03+内核)把过滤功能挪到了软件层(ebtablesnftables)。问题就出在:B18的5G射频芯片(MT7915)在第三方固件下默认不加载“桥接过滤”规则,导致你设置的白名单只拦住了有线设备和2.4G设备,5G设备照样能连。

说白了,不是过滤功能没了,而是它没被“接上线”。 别急着刷回原厂,下面这套方法5分钟就能搞定。


二、详细修复步骤(基于2026年主流固件实测)

1. 先确认你的固件版本和网络模式

  • 如果你用的是OpenWrt 23.05或更新版本,直接看第2步。
  • 如果你用的是Padavan(老毛子),跳过第2步,直接看第3步。
  • 如果你用的是LEDE或自编译精简版,建议先升级到2026年3月后的稳定分支,老内核的网桥过滤模块有已知漏洞。

2. OpenWrt系统下的“强制桥接过滤”设置

登录路由器后台,进入 网络 → 接口 → LAN,找到“物理设置”标签页,勾选 “允许所有无线设备接入” 这个选项——千万别勾! 这里是个陷阱,默认是勾上的,它会让无线流量绕过所有防火墙规则。

正确操作是: - 取消勾选“允许所有无线设备接入” - 在“防火墙设置”里,把 “创建/分配防火墙区域” 改为 lan - 保存并应用,然后去 网络 → 防火墙 → 流量规则,找到“MAC地址过滤”相关条目,确认状态为“启用”

关键一步:SSH登录路由器,输入以下命令强制加载过滤模块:

modprobe br_netfilter
echo 1 > /proc/sys/net/bridge/bridge-nf-call-iptables

然后重启防火墙:/etc/init.d/firewall restart

实测这一步能解决95%的5G频段失效问题。

3. Padavan系统的“伪过滤”陷阱

Padavan固件里有个“无线访问控制”页面,看起来能填MAC白名单,但实际上它只对“AP模式”生效。如果你是路由模式(PPPoE拨号上网),这个页面就是个摆设。

正确做法: - 进入 高级设置 → 防火墙 → MAC地址过滤 - 这里才是真正生效的地方,选择“白名单模式”,填入MAC地址 - 注意:Padavan的过滤规则有5分钟生效延迟,别刚填完就测试,等5分钟再说

4. 刷机后一定要做的“3个检查”

  1. 检查5G频段的“隔离模式”:很多固件默认开启“AP隔离”,这会让MAC过滤规则失效。在无线设置里关掉它。
  2. 检查“快速漫游”选项:B18刷机后如果开启了802.11r/k/v,某些固件会绕过过滤。建议先关掉。
  3. 检查“硬件NAT加速”:开启硬件加速后,数据包不走CPU,导致软件过滤直接失效。在“网络加速”里改为“软件加速”或“关闭”。

三、5个高频问题(直接给你答案)

Q1:刷机后MAC过滤对有线设备有效,但无线设备全都能连,怎么回事? A:这就是最典型的“5G频段未桥接”问题。按上面第2步的SSH命令操作一遍,然后重启路由器。

Q2:我填了白名单,但新设备还是能上网,是不是固件有问题? A:先检查你填的MAC地址格式。第三方固件要求全小写且不带冒号(例如a1b2c3d4e5f6),原厂固件能识别的A1-B2-C3-D4-E5-F6格式在OpenWrt里识别不了。

Q3:刷机后MAC过滤功能彻底消失了,连设置页面都没有? A:这是固件编译时裁剪了相关组件。2026年推荐用immortalwrt官方B18专用包(基于23.05),自带完整过滤模块。别用精简版。

Q4:过滤规则设置了,但重启路由器后失效? A:第三方固件的MAC过滤规则默认不保存到配置文件中。你需要进入 系统 → 启动项,在“本地启动脚本”里添加:

ifconfig br-lan up
ebtables -A FORWARD -p IPv4 --ip-proto tcp -j ACCEPT

然后保存。重启后再看。

Q5:刷回原厂固件后MAC过滤正常,但功能太少,想用第三方固件又怕安全问题? A:2026年最稳妥的方案是双系统——用uboot切换,日常用原厂,需要高级功能时刷入OpenWrt。B18的uboot支持一键切换,不会变砖。


四、实用建议(老玩家总结)

  1. 别迷信“最新固件”。2026年8月最新的OpenWrt快照版(24.10)对B18的5G驱动支持还不稳定,MAC过滤有随机失效的问题。推荐用23.05.5稳定版,功能全且驱动成熟。

如果你需要的话,可以试试下面的免费工具:

📲
小米ROM固件下载站
免费在线工具,无需下载,即开即用
立即使用 →
📲
路由器固件下载
免费在线工具,无需下载,即开即用
立即使用 →
  1. 刷机前备份原厂分区。用cat /dev/mtd0 > /tmp/all.bin备份,万一刷坏了能救回来。别问我怎么知道的,2026年3月我因为没备份,差点把B18变成砖头。

  2. MAC过滤不是安全防护。它能防小白蹭网,但防不了MAC伪造。如果家里有智能家居设备(它们经常随机MAC),建议用“白名单+固定IP”组合。

  3. 测试过滤是否生效的正确方法:用手机开热点,把电脑连到热点上,然后尝试连接B18的5G信号。如果连上了但无法上网,说明过滤生效了——因为MAC被拦了,但信号还是能看到。

  4. 遇到问题先看日志。在OpenWrt里执行logread | grep -i mac,能看到过滤规则的实时匹配记录。比瞎猜强一百倍。


最后说句掏心窝的话:红米B18这机器,刷机后MAC过滤折腾人的根本原因,是MTK的闭源驱动和开源固件之间的“翻译误差”。但只要按上面的步骤走一遍,基本都能搞定。如果实在不行,花50块钱买个二手小米路由器Pro,原生支持MAC过滤,省心得多——但那就不是咱们玩机人的乐趣了,对吧?

动手试试,有问题评论区见。

抱歉,评论功能暂时关闭!