版权所有
全文内容均来自(或许自己会加几行备注)吉吉@知乎 的专栏 工程师 AIO 手册:打造全能家庭服务器,本文仅作为个人备份,如侵权请联系删除。

⚡ 快速通关:如果你只想“抄作业”
很多朋友入坑 All in One (AIO) 都是冲着“一台机器解决所有需求”去的,但往往因为架构不合理,最后变成了“一人下载全家断网”的噩梦。
为了节省你的时间,我将这套历经不断迭代、兼顾性能与家庭和谐的工程师方案直接总结如下:
1. 核心选型结论表
| 组件 | 推荐方案 | IP 地址 (静态) | 核心价值 |
|---|---|---|---|
| 底座 (OS) | PVE (Proxmox VE) | 192.168.88.1 | 基于 Debian,硬件兼容性近乎无敌。 |
| 主路由 | iKuai (爱快) | 192.168.88.2 | 负责拨号、DHCP 和流量监控,稳如老狗。 |
| 旁路由 | OpenWrt (iStoreOS) | 192.168.88.3 | 负责魔法与插件,实现“功能解耦”。 |
| 存储 | 黑群晖 (DSM) | 192.168.88.4 | 提供最成熟的手机 APP 和照片管理生态。 |
| 应用 | PVE LXC 容器 | 192.168.88.5 | 运行 Docker 的最佳姿势,资源损耗极低。 |
| 应急 | Win10 LTSC | 192.168.88.10 | 最后的保命跳板,用于远程调试网络故障。 |
**注:**IP 地址的网段大家自行修改,本文只是举例说明
2. 架构设计“三原则”
- 各司其职(解耦): 拨号归爱快,魔法归 OpenWrt,存储归群晖,各种 docker 服务归 LXC 容器。
- 故障隔离: 旁路由崩了,全家依然能正常上网,更不能导致核心数据丢失。
- 静默分流: 普通设备走主网关,生产力工具通过 DHCP 自动分配旁路网关。
一、 前言:工程师的 AIO 观 —— “架构决定上限”
如果你已经看完了上面的结论,觉得正合你意,那么接下来将为你深度拆解这些结论背后的技术博弈。
作为一名软件工程师,我构建这套方案的核心哲学只有两个字:解耦。在软件设计中,高内聚低耦合是金科玉律;在家庭网络中,这代表着即便你半夜折腾插件导致旁路由死机,你老婆依然能流畅地刷着短视频,你父母依然能正常看电视。
本篇文章将从虚拟化底层、流量制导逻辑、以及工业级 IP 规划三个维度,带你从“玩机器”跨越到“系统工程”。
二、 虚拟化底座:PVE 为什么是 AIO 的“唯一真神”?
要在物理主机上运行多个系统,我们需要一个“底座”,即 Hypervisor(虚拟化监视器)。目前市面上主流的方案有三类:闭源商业派(ESXi)、磁盘阵列派(UNRAID)和开源底层派(PVE)。
1. 三大平台的深度博弈
- ESXi (VMware): 它是工业界的标杆,极其稳健,但它不是为“杂牌”小主机准备的。它的驱动库非常封闭,如果你的网卡不在它的白名单里,你可能连第一步安装都过不去。对于追求灵活性的工程师来说,这种“闭源黑盒”的束缚感非常不友好。
- UNRAID: 它的核心卖点是极其灵活的磁盘阵列(不同容量的盘可以随意组合),对 NAS 玩家非常友好。但在虚拟化性能和网络管理上,它比 PVE 弱了一个量级。而且它是收费系统,虽然有特殊版本,但在底座上使用非官方授权软件,本身就违背了稳定性的初衷。
- PVE (Proxmox Virtual Environment):
- 基于 Debian 的纯正血统: 这意味着它本质上就是一个 Linux 服务器。只要是 Linux 能驱动的硬件,PVE 都能用,硬件兼容性近乎无限。
- KVM 与 LXC 的双剑合璧: PVE 同时支持重量级的 KVM 虚拟机和轻量级的 LXC 容器。这种灵活性是 ESXi 不具备的。
- 工程师的掌控感: 你可以直接进 Shell。当 Web 界面卡死或配置出错时,命令行是你最后的避风港。
2. 硬核技术点:KVM 与 LXC 的性能损耗对比
在 PVE 中,你有两种方式跑应用:
- VM (KVM 虚拟机): 为 iKuai、群晖、Windows 准备。它模拟完整的硬件,安全性最高,但资源开销大(因为要运行完整的内核)。
- LXC (Linux 容器): 专门用来跑 Docker 或轻量级的服务。它直接共享 PVE 的内核,不需要模拟硬件,响应速度快。
实验数据: 在相同的硬件环境下,运行一个普通的 Nginx 服务,LXC 的内存占用通常只有 VM 的十分之一,磁盘 I/O 损耗几乎可以忽略不计。这就是为什么我坚持“Docker 必须进 LXC”的原因。


三、 路由系统:iKuai + OpenWrt 的“黄金平衡”
很多人问过我:两个都是路由系统,只装一个 OpenWrt 不行吗?
作为一个被全家人“监督”网络的工程师,我的回答是:为了家庭和谐,必须双路由。
1. iKuai:不可替代的“门神”
iKuai 的核心强项在于其工业级的网络协议栈优化。
- 拨号稳定性: 它的拨号重连机制和多拨能力极其强悍。
- DPI 流控: 它能精准识别出家里哪台机器在下载电影,哪台在打游戏,并实现动态限速。
- DHCP 管理: 在我的架构里,iKuai 是唯一的 DHCP 服务器。它负责分配家里所有设备的 IP,这个权限必须交给最稳的系统,同样 IPV6 地址的分配也是轻松拿捏,可以让家里每台设备获得 IPV6 地址,这可是个好东西。

2. OpenWrt (iStoreOS):灵动的“翻译官”
OpenWrt 在这里的角色是“旁路网关”,它只负责处理那些需要“魔法”加速或去广告的特殊流量。
- 为什么推 iStoreOS? 原生 OpenWrt 的配置门槛很高,真不是新手们可以轻松搞定的。一些大神打好的包,不是找不到,就是来源不明,要不就是停更,版本太低等等。iStoreOS 把它“人话化”了,应用商店极其丰富,安装插件不再需要敲复杂的代码,自带很少的常用插件,官网下载安心有保障。
- 解耦的精妙: 在我的配置里,OpenWrt 是不需要拨号的。即使你在折腾插件时导致它死机了,家里的基础网络(微信、电视、父母的手机)完全不会断,因为它们依然走 iKuai 的网关。

四、 存储与应用:各司其职的模块化设计
1. 黑群晖 (DSM):只做存储,不做杂活
群晖的强大在于它的移动端 APP 生态(Photos、Drive、Video Station)。
- 原则: 在 AIO 环境下,不要在群晖里跑 Docker,也不要在群晖里跑虚拟机。
- 理由: 群晖本质上是个存储服务器。如果你给它加了太多负荷,会导致它的磁盘休眠失效,甚至影响文件同步的稳定性。让它安安静静地做个私有云,这才是它的宿命。真的,没有什么比稳定可靠更让人安心的了。

2. Windows 10 LTSC:你的内网“应急跳板”
为什么要给 AIO 塞一个 Windows?
- 保命手段: 当你在外地,发现家里网络配置出错导致无法访问 PVE 后台,服务中断时,通过 RDP 远程桌面连接这个 Windows 虚拟机,你就可以在内网环境下通过图形化界面修复路由配置。
- 兼容性: 某些特定的网盘下载工具或特定的定时任务,Windows 的生态依然是不可替代的。

五、 第一阶段小结:站稳前行
架构设计的本质是在“性能、稳定性、易用性”之间寻找平衡。
- 底座选 PVE 是为了兼容性和掌控感;
- 双路由设计 是为了实现故障隔离,保证家庭和谐;
- LXC 跑 Docker 是为了追求极致的性能效率。
地基已经打好,下一阶段我们将深入到最硬核的流量流向分析与 IP 地址工程。我会带你拆解一个数据包是如何在这些虚拟机之间穿梭的。
如果说阶段一是在挑选家具,那么阶段二就是在布水电路。在 AIO 环境下,流量如何在虚拟网桥、物理网卡、主路由与旁路由之间穿梭,决定了你网络的延迟与稳定性。
六、 流量制解:数据包在 AIO 内部的“奇幻漂流”
在 AIO 架构中,最让新手头疼的就是“明明网接好了,为什么死活上不了网”。要解决这个问题,必须理解虚拟网桥的工作原理。
1. 物理网卡与虚拟网桥:vmbr0 的角色
在 PVE 中,物理网卡(如 eth0)通常不直接分配给虚拟机,而是绑定在一个虚拟网桥(如 vmbr0)上。
- 你可以把
vmbr0想象成一台接在小主机内部的“虚拟交换机”。 - 所有的虚拟机(iKuai, OpenWrt, NAS)都像插在这台虚拟交换机上的电脑。
- 流量路径: 当你的手机通过 WiFi 请求一个网页时,流量进入物理网卡 → 传给
vmbr0→ 分发给 iKuai 的虚拟网口。
2. 双路由下的“旁路”流量转发逻辑
这是本方案的灵魂。我们要实现的是**“按需魔法”**,而不是全家魔法。
- 流量第一站:iKuai(网关 192.168.88.2)
- iKuai 负责处理所有基础流量。如果是普通的网页访问,iKuai 直接通过光猫发出去。
- 流量第二站:OpenWrt(网关 192.168.88.3)
- 当你指定的设备(如电脑)发出请求时,iKuai 会根据你设置的 DHCP 策略,告诉电脑:“你的网关不是我,而是 192.168.88.3”。
- 此时,电脑的数据包会先流向 OpenWrt,经过插件脱敏/加速处理后,再由 OpenWrt 转交给 iKuai,最后出海。

七、 IP 地址空间工程:工程师的“标准化”设计
在 AIO 系统里,随意的 IP 分配是后期运维的噩梦。我们需要一套工业级的规划方案,确保基础设施、服务容器和移动设备互不干扰。
1. 192.168.88.x 网段精细化定义
我建议将整个第四段的地址划分为四个功能区:
- 【核心基础设施区】.1 - .10
.1:PVE 宿主机管理地址。.2:iKuai 主路由(DHCP 服务端)。.3:OpenWrt 旁路由(魔法中转)。.4:黑群晖存储(核心数据)。.10:Win10 (跳板机)- 要求: 必须在系统中手动指定静态 IP,绝不能靠 DHCP 获取。
- 【服务器与容器区】.11 - .50
- 用于 Docker 宿主机、HomeAssistant 容器、导航站服务等。
- 要求: 同样建议手动指定,方便在外部通过端口转发精准定位。
- 【预留扩展区】.51 - .99
- 为未来增加的物理设备(如第二台 NAS、智能监控录像机)预留。
- 【动态地址池区】.100 - .254
- 这是 iKuai DHCP 服务管辖的领地。
- 所有手机、平板、IoT 智能家居接入时,会自动从这个区间捞取 IP。
八、 DHCP 高级应用:实现“无感分流”的黑科技
如何让你的电脑自动“起飞”,而让父母的手机保持“纯净”?答案就在 iKuai 的 DHCP 静态分配 功能中。
1. 传统做法的弊端
很多人在电脑、手机上手动修改网关和 DNS。这太麻烦了,而且一旦你带手机出门连接到其他的 WIFI 手动设置的静态 IP 可能会导致无法上网,回来还得改。
2. 工程师做法:DHCP 策略下发
手机不做任何网络设置的修改,在 iKuai 的 DHCP 设置里,找到静态分配:
锁定 MAC 地址: 找到需要魔法的设备或手机的 MAC 地址。
自定义配置: 在该 MAC 地址的分配规则里,手动填入:
- 网关: 192.168.88.3(即 OpenWrt 的地址)。
- DNS: 192.168.88.3(让 OpenWrt 负责域名解析,防污染)。
结果: 当你的电脑接入 WiFi 时,iKuai 会识别出这是“高级用户”,并下发那套特殊的网关。而其他设备收到的依然是默认的 192.168.88.2 网关。从而实现全家无感上网,特殊设备也同样无感加速出海。

九、 第二阶段小结:灵活操控
理解了虚拟网桥的交换逻辑和基于 MAC 地址的网关指派,你就掌握了 AIO 网络的心脏。
- PVE 管理后台 是你的上帝视角;
- iKuai 是你家庭网络的流量交警;
- OpenWrt 则是你按需开启的特种通道。
这套架构在保证了性能最大化的同时,给了你最灵活的流量操控权。
我们进入最后的收尾阶段——第三阶段:存储进化、容灾体系与 Checklist。
这一部分是关于如何守护你的“数字资产”,以及在极端情况下如何自救。只有做好了灾备,你的 AIO 才算真正完工。
十、 存储架构:从“能存东西”到“工业级冗余”
在 AIO 体系中,存储是整机压力最大、也是最不容出错的部分。
1. 黑群晖 (DSM) 的部署策略
虽然群晖系统生态无敌,但在虚拟机里运行它,必须解决磁盘 IO 瓶颈。
- 不要用虚拟磁盘(Vritual Disk): 尽量避免在 PVE 里创建巨大的
.qcow2文件给群晖用,这会产生双重文件系统损耗。 - 推荐 RDM 磁盘直通: 通过 PVE 命令行将物理硬盘的 ID 直接映射给群晖虚拟机。这样群晖能直接读取硬盘的 S.M.A.R.T 信息,性能几乎等同于物理机。
- 注: 涉及黑群晖系统内容仅供技术交流及实验研究,建议支持正版。

2. 为什么 Docker 必须放在 PVE LXC 里?
在第一阶段中我们提到了 LXC 的轻量化,这里从存储角度再深挖一下:
- 解耦逻辑: 如果你把 Docker 放在群晖里,群晖一旦崩溃或需要迁移,你的所有应用(如 HomeAssistant、Jellyfin)都会停摆。
- 性能优势: PVE 的 LXC 容器可以直接挂载宿主机的目录,IO 延迟极低,非常适合运行高频读写的数据库服务。不要误解 LXC 只能安装 Docker,它本身其实就是类似 Docker 的容器,可以安装各种应用。只不过很多应用的 Docker 版使用起来确实很方便。

十、 容灾逻辑:工程师的“最后一道防线”
AIO 最大的宿命是“一挂全挂”。作为工程师,我们必须有备无患。
1. Win10 LTSC:你的内网“生存跳板”
在 AIO 主机里塞一个 Windows 10 LTSC(长期服务版)是绝对的保命操作。
- 场景模拟: 当你人在外地,发现家里网络配置出错导致无法远程访问 PVE 后台时,如果你的 Win10 虚拟机开启了远程桌面(RDP),你可以通过 IPV6 绑定的域名或者内网穿透连上 Win10 来解决问题。
- 价值所在: 在 Win10 的浏览器里访问
192.168.88.1(PVE 地址)或192.168.88.2(iKuai 地址),你就能以“内网用户”的身份修复配置。它就像是留在家里的一台永久在线的调试电脑。 - **系统选择:**为什么没有选择 Win11 是因为这个 Windows 不是咱们的主力机,而是方便调试 AIO 环境和挂载一些定时任务,下载云盘资源之类的操作,所以,虚拟机无需给它分配过多的资源,只要够用稳定即可。
2. 3-2-1 备份原则的家庭落地
- 3 份备份: 核心数据(全家照片、个人代码)至少有三个副本。
- 2 种介质: 不要全存在 AIO 的机械硬盘里,至少有一份在外部移动硬盘或 SSD。
- 1 份异地: 利用群晖的 Cloud Sync 定期将加密后的核心数据同步到公有云盘。
全篇总结:架构设计的终点是“无感”
这篇文章从底层选型讲到流量制导,再到存储容灾,逻辑其实只有一个:让复杂的系统各司其职。
一个优秀的 AIO 架构,在配置完成后应该是“沉默”的。你不再需要每天登录后台查看状态,全家人也不需要知道什么是网关。当你在 5G 网络下丝滑地打开家里的相册,或者在公司远程唤醒家里的电脑时,这套架构的价值才真正体现。
✍️ 工程师的部署 Checklist(建议截图保存)
在正式开始下一章的安装实战前,请确认你的设计方案符合以下清单:
- 静态 IP 冲突检查: 核心设备 IP(.1 - .10)是否已在 iKuai 的地址池中排除?
- 故障隔离验证: 关闭 OpenWrt 旁路由,确认普通手机依然能正常浏览网页。
- 跳板机权限: Win10 虚拟机的远程桌面是否已开启,且防火墙已放行?
- 存储安全: 核心数据盘是否已经考虑了直通方案,并规划了异地备份路径?
- 硬件准备: 物理网口是否已标记清楚?(建议贴纸标注 LAN1/WAN1)。
下一篇预告:
《系列 03:【实操篇】PVE 安装实战 —— 从 U 盘启动到配置第一块虚拟网卡》