不是性能不够,而是接口角色不自然
树莓派 4 的 CPU 和内存足以运行很多 OpenWrt 服务,真正让我放弃把它当长期路由器的原因,是它只有一个原生 Gigabit Ethernet 接口。Raspberry Pi 官方产品说明也只列出一个千兆以太网口,详见 Raspberry Pi 4 Model B Product Brief。
经典路由器的物理关系很容易理解:
1 | 上级网络 ── WAN |
但树莓派只有一个网口时,WAN 与 LAN 必须通过其他方式补出来:
- 以太网做 WAN,Wi-Fi 做 LAN/AP。
- 以太网做 LAN,Wi-Fi 做 WAN。
- 使用 VLAN Trunk,在一个网口上承载 WAN 与 LAN。
- 增加 USB 网卡,获得第二个物理接口。
这些方案都能工作,但“能工作”和“适合长期维护”是两笔账。
单网口加 Wi-Fi 为什么难排障
我最初尝试让原生网口接上级网络,再用树莓派 Wi-Fi 提供下级接入。配置中同时出现:
1 | 物理以太网接口 |
一个接口放错 bridge,设备可能还能访问 OpenWrt 管理页,却无法访问互联网;DHCP 绑定错接口,又可能向上级网络发送不该出现的地址。加入透明代理后,还会继续叠加 DNS 劫持、TProxy/TUN、策略路由和流量卸载。
故障恢复也很不友好:当唯一的有线管理路径同时承担 WAN,修改防火墙或 bridge 后,可能连管理页一起失去。此时只能依赖串口、显示器键盘、备用无线或重新烧卡。
VLAN 单臂路由并不是免费午餐
通过管理型交换机和 802.1Q VLAN,一个网口确实可以同时承载 WAN 与 LAN:
1 | 树莓派 eth0 |
但它要求两端的 Tagged/Untagged、PVID、防火墙 zone 和接口命名全部一致。对实验环境来说,这是很好的网络学习项目;对全家依赖的主网来说,它增加了恢复成本和认知负担。
单个千兆链路还要同时承载两个方向的流量。很多家庭场景不会真的跑满,但拓扑上的耦合仍然存在。
USB 网卡能解决多少问题
给树莓派增加 USB 3.0 千兆或 2.5GbE 网卡,是最低成本的改进:
1 | 原生 eth0:WAN |
物理角色立刻清楚,OpenWrt 默认的防火墙、DHCP 和 NAT 模型也更容易套用。不过还需要验证:
- 芯片驱动是否被当前 OpenWrt 镜像支持。
- USB 网卡在重启后接口命名是否稳定。
- 高负载、温度与供电是否可靠。
- USB 设备断开后,系统会怎样恢复。
- 是否有控制台或备用管理路径。
它适合实验和备用网关,但我不再愿意把全家网络的稳定性押在 USB 接头、供电与自定义镜像上。
为什么最后换成 MT3000
MT3000 有独立 WAN/LAN 端口、自己的 Wi-Fi、存储和路由器固件。迁移以后,网络模型回到最普通的状态:
1 | 主网交换机 ── MT3000 WAN |
我不需要再解释“eth0 到底属于哪个 bridge”,也不用让 Wi-Fi 同时承担恢复入口与正式 LAN。OpenWrt/代理组件出问题时,只影响主动连接这台路由器的设备。
树莓派仍然适合什么
放弃树莓派软路由并不代表树莓派失去价值。它更适合:
- Home Assistant 与传感器网关。
- DNS、监控、日志和轻量 Web 服务。
- 网络实验、旁路观察和临时 VPN 节点。
- 有控制台、有备用网络的 OpenWrt 学习环境。
如果目标是学习 VLAN、Linux 网络和防火墙,单网口反而会暴露很多值得理解的机制;如果目标是让全家网络长期稳定,那么专用双网口设备通常更划算。
结语
树莓派单网口不是“不能跑 OpenWrt”,而是为了补齐路由器天然拥有的 WAN/LAN 边界,需要额外引入 Wi-Fi、VLAN 或 USB 网卡。后来我愿意花钱换设备,本质上是在购买更低的系统复杂度和更明确的故障域。