flexiWAN SD-WAN 开源方案分析报告
·
📊 flexiWAN SD-WAN 开源方案分析报告
1. 项目概况
1.1 项目背景
flexiWAN 自称是"全球首个开源 SD-WAN 解决方案",提供完整的 SD-WAN 能力,包括:
- flexiEdge: 边缘路由器(vRouter)
- flexiManage: 中央管理与编排平台
- flexiAgent: 通信代理层
1.2 代码仓库状态 ⚠️
| 仓库 | 位置 | 状态 |
|---|---|---|
| flexiManage (后端) | GitLab: flexiwangroup/fleximanage |
4,388 commits, 94 branches, 74 tags |
| flexiAgent | GitLab: flexiwangroup/flexiagent |
活跃 |
| flexiEdge | GitLab: flexiwangroup/ |
需确认具体仓库 |
| GitHub 镜像 | github.com/flexiwan/flexiWAN |
仅指向 GitLab |
关键发现:
- ✅ 最新 Release 6.4.32 (2024 年 9 月后仍有更新)
- ✅ Release 6.4.1 (2024 年 9 月) 引入了 Inbound QoS、Wireless Dual SIM、Linux Kernel 升级等功能
- ⚠️ 代码主要在 GitLab,GitHub 仅为镜像/重定向
- ⚠️ 部分 UI 前端和计费模块未开源(Git submodule 为空)
1.3 许可证
- GNU AGPLv3 - 强传染性许可证
- 商业部署需注意:任何修改必须开源
2. 核心组件技术分析
2.1 flexiEdge(边缘路由器)
架构组成:
┌─────────────────────────────────────┐
│ flexiEdge │
├─────────────────────────────────────┤
│ VPP (Vector Packet Processor) │ ← 数据平面 (FD.io 项目)
│ FRR (Free Range Routing) │ ← 控制平面 (BGP/OSPF)
│ flexiWAN Agent │ ← 与 flexiManage 通信
└─────────────────────────────────────┘
技术栈:
- 基于 Ubuntu 20.04 LTS (早期版本用 18.04)
- VPP: 高性能数据包处理(DPDK 加速)
- FRRouting: 完整路由协议支持 (BGP, OSPF)
- 支持 IPsec, IKEv2, OpenVPN
功能特性:
- ✅ 流量整形与 QoS
- ✅ 防火墙(L3/L4 应用过滤)
- ✅ 路径选择策略(包括 AI 驱动的网络自愈)
- ✅ 高可用性(Active-Passive/Active-Active)
- ✅ 多 WAN 链路聚合
2.2 flexiManage(管理平台)
技术栈:
- 后端: Node.js v10+
- 数据库: MongoDB 4.0.9+ (需 3 节点副本集)
- 缓存: Redis 5.0.5+
- 前端: React (部分未开源)
核心功能:
- 设备注册与配置管理
- 网络拓扑可视化
- 隧道管理(IPsec)
- 路由策略配置
- 流量监控与分析
- 用户/角色/权限管理
- RESTful API
部署架构:
┌──────────────────────────────────────────┐
│ flexiManage │
├──────────────────────────────────────────┤
│ Web Server (Node.js) │
│ System Broker (WebSocket 通信) │
│ Analytics System (统计分析) │
├──────────────────────────────────────────┤
│ MongoDB Replica Set (3 nodes) │
│ Redis │
│ Mail Server (SMTP trap) │
└──────────────────────────────────────────┘
3. 本地部署可行性评估
3.1 系统要求
flexiEdge 最低要求:
| 资源 | 最低 | 推荐 |
|---|---|---|
| CPU | 2 核心 (64-bit) | 4+ 核心 (多核加速) |
| 内存 | 4GB | 8GB+ |
| 存储 | 16GB | 32GB+ |
| 网卡 | 2 接口 (WAN+LAN) | 多接口 + 支持网卡 |
flexiManage 部署要求:
| 组件 | 要求 |
|---|---|
| Node.js | v10+ |
| MongoDB | 4.0.9+ (3 节点副本集) |
| Redis | 5.0.5+ |
| Mail Server | SMTP (端口 1025) |
3.2 部署方式支持
| 部署方式 | 支持情况 | 说明 |
|---|---|---|
| 裸金属安装 | ✅ | ISO 安装器 (UEFI 必需) |
| VMware | ✅ | OVA 格式,支持 Workstation/Fusion/ESXi |
| KVM/QEMU | ✅ | QCOW2 格式 (UEFI/BIOS) |
| VirtualBox | ✅ | OVA/VDI 格式 |
| 云平台 | ✅ | AWS, Google Cloud, DigitalOcean, Hetzner |
| Docker/K8s | ⚠️ | 文档未明确支持,需自行容器化 |
3.3 部署复杂度评估
flexiEdge: 🟢 中等
- 预构建镜像可直接部署
- 需配置 token 连接到 flexiManage
- 支持 Zero Touch Provisioning (ZTP)
flexiManage: 🟡 中高
- 需手动配置 MongoDB 副本集 (3 节点)
- 需配置 Redis 和邮件服务
- 前端 UI 部分闭源,可能影响自定义
依赖复杂度:
flexiManage
├── MongoDB Replica Set (3 节点) ← 复杂度高
├── Redis
├── Node.js 环境
└── SMTP 邮件服务
4. 后续维护可行性评估
4.1 代码质量与维护状态
| 维度 | 评估 | 说明 |
|---|---|---|
| 更新频率 | 🟡 中等 | 2024 年 9 月有 Release 6.4.x,但 2025 年活动待确认 |
| 社区活跃度 | 🟡 中等 | Google Groups 论坛存在,但活跃度一般 |
| 文档完整性 | 🟢 良好 | 官方文档覆盖安装、配置、API |
| 测试覆盖率 | 🔴 未知 | 未公开测试报告 |
| 代码注释 | 🔴 未知 | 需实际审查代码 |
4.2 开源组件依赖
核心依赖:
- VPP (FD.io) - Apache 2.0,由 Linux 基金会维护 ✅
- FRRouting - GPL-2.0,活跃社区维护 ✅
- Node.js 生态 - 大量 npm 依赖,需定期更新 ⚠️
- MongoDB - SSPL 许可,注意商业限制 ⚠️
4.3 风险与挑战
| 风险类型 | 等级 | 说明 |
|---|---|---|
| 项目可持续性 | 🟡 中 | 公司规模较小,商业模型依赖 SaaS |
| 前端闭源 | 🟡 中 | flexiManage UI 部分未开源,自定义受限 |
| AGPL 许可证 | 🟡 中 | 商业部署需开源修改内容 |
| MongoDB 依赖 | 🟡 中 | 副本集部署复杂,SSPL 许可限制 |
| 硬件兼容性 | 🟡 中 | 需使用认证网卡,DPDK/VPP 兼容性问题 |
| 单点故障 | 🔴 高 | flexiManage 为单点(虽有 HA 但需额外配置) |
| 安全更新 | 🟡 中 | 需跟踪 VPP/FRR 安全公告 |
5. 替代方案对比
5.1 开源 SD-WAN 方案
| 方案 | 成熟度 | 社区 | 部署复杂度 | 备注 |
|---|---|---|---|---|
| flexiWAN | ⭐⭐⭐ | ⭐⭐ | 中 | 完整方案,但部分闭源 |
| VyOS | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | 低 | 基于 Debian 的路由系统,非纯 SD-WAN |
| Open vSwitch | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | 高 | 虚拟交换机,需自行构建 SD-WAN |
| OPNsense + plugins | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | 低 | 防火墙 + 路由,SD-WAN 功能有限 |
| Tungsten Fabric | ⭐⭐⭐ | ⭐⭐ | 高 | Juniper 主导,复杂 |
5.2 商业 SD-WAN 方案
| 厂商 | 特点 | 成本 |
|---|---|---|
| VMware SD-WAN (VeloCloud) | 成熟,云网关网络 | 高 |
| Palo Alto Prisma SD-WAN | 安全集成 | 高 |
| Cisco Meraki SD-WAN | 易用,云管理 | 高 |
| Fortinet FortiGate SD-WAN | 安全 + 网络整合 | 中高 |
6. 综合评估与建议
6.1 部署可行性评分
| 维度 | 评分 | 说明 |
|---|---|---|
| 技术可行性 | ⭐⭐⭐⭐ (4/5) | 技术方案成熟,VPP+FRR 是业界标准 |
| 部署复杂度 | ⭐⭐⭐ (3/5) | MongoDB 副本集增加复杂度 |
| 维护可行性 | ⭐⭐⭐ (3/5) | 社区规模有限,需自建能力 |
| 成本效益 | ⭐⭐⭐⭐ (4/5) | 开源免费,但人力成本需考虑 |
| 长期风险 | ⭐⭐⭐ (3/5) | 项目可持续性待观察 |
综合评分: ⭐⭐⭐ (3.4/5)
6.2 适用场景推荐
✅ 推荐采用:
- 需要 SD-WAN 功能但预算有限的中小企业
- 有网络技术团队,能自行维护
- 接受 AGPL 许可证约束
- 需要定制化开发能力
❌ 不推荐:
- 无网络技术团队的组织
- 需要 24/7 商业支持(除非购买 flexiWAN 支持服务)
- 不能接受 AGPL 许可证的商业场景
- 需要大规模部署(>100 节点)
6.3 实施建议
-
PoC 验证阶段 (2-4 周)
- 在测试环境部署 flexiManage + 2 个 flexiEdge
- 验证基本连通性、隧道、路由功能
- 评估性能是否符合预期
-
依赖简化
- 考虑 MongoDB 单节点部署(非生产)
- 评估能否用 Docker Compose 简化部署
-
维护能力建设
- 建立 VPP/FRR 安全更新跟踪机制
- 培训团队掌握 flexiWAN 架构
- 准备回退方案(传统路由)
-
许可证合规
- 法务审查 AGPL 影响
- 如计划修改代码,准备开源策略
7. 结论
flexiWAN 是一个技术上可行的开源 SD-WAN 方案,核心采用 VPP+FRR 业界标准架构,功能完整。但存在以下关键考量:
- 部分代码闭源(UI 前端)可能限制自定义能力
- MongoDB 副本集增加部署复杂度
- AGPL 许可证对商业部署有约束
- 社区规模有限,长期维护需自建能力
建议: 对于有技术团队、预算有限、能接受许可证约束的场景,flexiWAN 是值得考虑的选项。但建议先进行 PoC 验证,并评估长期维护成本。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)