树莓派路由器起步¶
seeedstudio 围绕嵌入式IoT和AI推出了很多相关技术以及硬件。其中,采用树莓派制作路由器,给我启发,我准备调研并实践采用树莓派构建路由器和交换机,实现复杂的网络架构。
路由器功能¶
作为小型局域网的网关路由器,通常具备以下功能:
提供广域网(WAN)路由访问
透明代理翻墙 Squid代理服务 / Privoxy代理服务
安全控制: 审计、日志、限制、广告过滤
网络QoS
VPN
本地局域网服务
DHCP
下载服务: BT下载
NAS: 本地数据备份归档
私有云盘服务
打印服务
视频服务 Kodi - 媒体播放
采用树莓派来实现网络设备:
低功耗
通用设备可运行不同Linux版本进行定制
硬件设备¶
树莓派Raspberry Pi 4 是通用SBC设备,但是由于只具备1个千兆网口,定制性较弱。 seeedstudio 提供基于 树莓派Compute Model 4计算模块 的主板(双网口)。
硬件设想¶
实际上树莓派作为最流行的SBC,配套硬件以及社区软件非常丰富,这是树莓派最大的优势。不过,对于专用路由和交换设备,树莓派也有比较大的局限:
缺乏多网口规格硬件: 在淘宝上能够找到 4~8 网口的基于Intel低端CPU的x86主板或一体机,价格非常低廉,可以用来构建开源交换机或路由器
只有 树莓派Compute Model 4计算模块 可以通过扩展主板支持 PCIe 存储,但是加上扩展主板成本相对较高,接近于Intel多网口一体机
NanoPi 作为针对路由功能定制的多网口ARM主机,非常小巧且功能完备(R5S支持 NVMe存储 ),比叠加主板的 树莓派Compute Model 4计算模块 更为经济
备注
不过,由于我已经购买了大量树莓派设备,所以我的基础架构依然会围绕树莓派来实现。
对于上述树莓派的不足,我准备从以下几个方面来弥补:
通过USB接口以太网卡来扩展树莓派的网络接口: 至少可以增加2个网口,加上 树莓派Raspberry Pi 4 自带网口,可以实现一个非常小型的交换网络
采购 树莓派Compute Model 4计算模块 加上扩展主板来构建交换设备,并且可以增加PCIe存储: 目前尚未找到能够添加超过2个以上网口的扩展板,常见的只有扩展2个千兆网口扩展板,不太理想