分享

Pi-Dock-Wifi:一款基于树莓派 5 的路由器,配备两块 Wi-Fi 网卡,集成 Pi-hole 及网页控制面板

9m63kczol11i1.webp

f60ooczol11i1.webp

已更新:附带部分照片

大家好!

我一直使用树莓派 5(Raspberry Pi 5)作为全屋 Wi-Fi 路由器,现在我已经将该项目开源了。

我的目标是实现对整个系统的全面掌控,包括:无线配置、DHCP、DNS、路由、防火墙规则,以及维持系统运行的各类脚本。

所用的硬件配置相当独特……

- 树莓派 5(8GB 内存)。

- 52Pi B14 PCIe 交换扩展板(HAT)以及两个微雪(Waveshare)MiniPCIe 转接卡。

- 两块联发科(MediaTek)MT7915E Wi-Fi 网卡。

- USB NVMe 存储设备(因为要让 Wi-Fi 网卡正常工作,需要用到 PCIe 32 位 DMA)。

- USB 集线器扩展板(USB Hub HAT)。

- 52Pi P01 电源管理板。

- 定制 3D 打印的安装底板和天线支架。

通过 PCIe 交换扩展板,这些 PCIe 网卡共享树莓派唯一的 PCIe 上行链路。

整个系统通过 Docker Compose 进行管理,包含三个相互关联的服务:

Pi-Dock-Wifi:包含 hostapd(用于创建 2.4 GHz 和 5 GHz 独立接入点)、dnsmasq、路由、防火墙规则以及一个 Web 管理界面。

Pi-hole:使用官方镜像进行 DNS 过滤。

ttyd:一个可通过 Web 管理界面访问的 SSH 终端。

此外,系统还具备健康检查、以太网连接自动恢复、日志记录和网络统计功能。
Pi-Dock-Wifi 的设计目标是尽可能实现自我修复。
管理界面和项目日志支持英语和意大利语,可通过 Compose 变量进行选择。

我提供了 Dockerfile、脚本、配置示例、硬件文档、
STL/OpenSCAD 文件、引导设置,以及我所用路由器的完整内核配置。此外,还包含一份涵盖内核编译、安装、验证及系统恢复的指南。

本项目采用主机网络模式(host networking)和特权容器(privileged container)来运行路由器。
主机系统需要具备兼容的内核驱动程序,以及支持接入点(AP)模式的无线网卡。

目前正在运行的路由器是我个人的参考系统;若按照公开指南进行全新安装,仍需进行独立验证。仓库:citroale90/pi-dock-wifi
英文版 README:概述与文档

本项目采用 GPL-3.0 协议。
如果您能就网络配置、文档及复现过程提供反馈,那将非常有帮助!我于 2020 年疫情期间启动了这个项目,经过不断演进,才有了现在的成果。

返回

调制解调器 (Modem)

Iperf

上传 835 Mb/s,下载 639 Mb/s

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则