多站点Homelab:SDWAN组网 + 统一AI出口
之前2个城市4处宽带都组了SD-WAN,实现了异地网络完全互通,不管在哪个站点,都能直接访问其他地方的内网设备,用着一直挺爽。
但最近调整ai出口策略,就凸显了之前分散架构的问题:每个站点独立配置出口规则,要改个代理策略得同步四个地方,非常麻烦,也不利于及时变更,经常出现部分站点能访问的资源,其他站点访问不了的情况,排查起来特别头疼。
想了下主站是双wan,出口带宽300M+200M,完全能承载所有站点的AI流量,于是就把网络拓扑做了重构,现在所有AI流量统一收敛到主站,集中配置调度,用了一个多月非常稳定,整理下这套架构。
整体架构
🏠 主站
作为整个Homelab的核心枢纽,所有的核心服务和流量调度都集中在这里:
- 出口配置:宽带商1 300M + 宽带商2 200M双WAN,双软路由冗余(主路由r76s/Armbian,备用路由n350/FnOS),单台宕机自动切换,无感知
- 核心网络服务:
- AdGuardHome:全站点统一去广告、恶意域名拦截
- mosdns:智能DNS分流,国内域名走ISP DNS,海外走加密DNS
- mihomo:其他3个站点的ai流量的入口
- 出海核心:Mac mini M4 双万兆,安装Surge负责最终的出海流量调度
- 存储服务:UNAS Pro 8盘位RAID6,总容量84T,存所有个人数据、备份文件、各类资源
- 应用服务:n350服务器,跑Immich照片管理、Jellyfin媒体服务、LibreSpeed测速、各类Docker应用
📡 边缘站点(3个)
三个边缘站点硬件配置统一,功能各有侧重:
- 硬件:都是RK3566 4G/16G 运行FnOS轻量系统,功耗低稳定运行
- 存储配置:
- 站点1:500G SSD,跑本地Docker应用
- 站点2:1TB SSD,跑本地媒体服务
- 站点3:1TB HDD,做异地备份存储
- 网络配置:
- 站点1:宽带商2双WAN,有IPv4+IPv6公网
- 站点2:宽带商1单WAN,仅IPv6公网
- 站点3:宽带商2内网,无公网IP
- 所有边缘站点的AI流量自动通过SD-WAN隧道走主站出口,国内流量直接走本地ISP,延迟最优
🌐 流量调度规则
完全自动化分流,不用手动切换:
- 国内流量:直接走本地ISP出口,延迟最低,带宽不受限
- AI流量:全部通过SD-WAN加密隧道走主站统一出口,规则一次配置全站点生效
- 内网流量:四个站点完全二层互通,不管在哪个地方,访问其他站点的设备都和本地访问一样
使用体验
这套架构已经稳定跑了一个多月,体验提升非常明显:
- 维护成本大大降低:以前改个代理规则要同步四个站点,现在改一次就行,所有站点自动生效
- 带宽利用率更高:AI流量集中到主站,不用每个站点都单独开海外带宽,节省成本的同时还能跑满主站出口,边缘站点走主站出口的AI带宽可以跑满200M,延迟只增加10ms左右,完全够用
- 冗余度更高:主站双软路由+双WAN,边缘站点主线路断了会自动切SD-WAN走其他站点的出口,基本不会出现断网的情况
