ZeroTierOne MPL-2.0 许可实用指南:修改、再分发与商用授权的边界
【免费下载链接】ZeroTierOneA Smart Ethernet Switch for Earth项目地址: https://gitcode.com/GitHub_Trending/ze/ZeroTierOne
本文面向准备使用、修改或商用 ZeroTierOne 代码的开发者与技术负责人,基于仓库内 MPL-2.0 与 source-available 双许可结构,说明哪些操作可以自由选择、哪些动作会触发开源义务。
许可速写:哪些目录是 MPL-2.0,哪些不是
ZeroTierOne 采用目录级双许可:node/、osdep/、service/等代理(Agent)代码为 MPL-2.0,属文件级 copyleft,附带各贡献者专利声明的有限授权,不含商标权;nonfree/控制器组件单独使用 source-available 许可;ext/为第三方代码,保留原许可。划分依据见根目录 LICENSE.txt。
| 许可 | 传染性粒度 | 商用限制 |
|---|---|---|
| MPL-2.0(本项目主体) | 文件级,仅被修改的文件需开源 | 允许,需履行下文义务 |
| GPL-3.0 | 作品级,组合后整体开源 | 允许,但整体须开源 |
| MIT | 无传染性 | 允许,保留版权声明即可 |
义务地图:四类常见动作分别触发什么义务
| 动作 | 触发的义务 | 依据 |
|---|---|---|
修改node/、osdep/源码 | 修改后的文件继续以 MPL-2.0 提供,保留原版权与许可声明 | LICENSE-MPL.txt §3.1、§3.4 |
| 链接进自研产品(Larger Work) | 你的文件可用专有许可,但 MPL 部分须独立保留源文件 | LICENSE-MPL.txt §3.3 |
| 分发二进制 | 须以合理方式告知获取对应源码的途径,费用不超分发成本 | LICENSE-MPL.txt §3.2 |
| 仅以 SaaS 提供、不分发代码 | 不新增义务(MPL 无网络条款),但若分发二进制仍须附源码 | LICENSE-MPL.txt §3.2 |
使用nonfree/控制器组件 | 商用须另行向 ZeroTier, Inc. 获取商业许可 | nonfree/LICENSE.md |
三类易错点:许可边界、第三方依赖与商标使用
易错点 1:把 nonfree/ 当作免费代理代码。错误做法:将nonfree/controller/EmbeddedNetworkController.cpp编译进产品后直接销售。后果:该目录只授予非商业许可,未经许可商用会触发许可自动终止条款。正确做法:代理侧只用node/下的 MPL-2.0 代码;商用控制器组件前先取得商业授权。
易错点 2:把 ext/ 的第三方许可混进主程序合规口径。错误做法:修改ext/中的库文件(如ext/nlohmann/,该目录含独立 MIT 许可文件)后,按 MPL 修改口径统一处理。后果:两类义务混淆,遗漏各自要求的声明与通知。正确做法:按 LICENSE.txt 的说明将ext/原样隔离,其修改单独遵循原许可。
易错点 3:把项目图标直接用于商业产品。错误做法:复用artwork/中的图标作为自家产品标识。后果:MPL-2.0 §2.3 明确许可不含商标、服务标记与 logo 权利,这属于未授权使用。正确做法:使用自有设计,确需引用时单独取得商标许可。
合规执行清单:分发前的 5 个可执行动作
- 文件头:修改过的 MPL 文件保留原版权声明;新增且包含 MPL 代码的文件按 Exhibit A 格式标注 MPL-2.0 声明。
- 分发时随包附 LICENSE-MPL.txt 与 LICENSE.txt,并在说明文件中列明 nonfree 部分范围。
- 在发布记录中登记所有被修改的文件路径,可参考 debian/changelog 的版本化记录格式。
- 保持
ext/目录物理隔离,单独列出各第三方依赖的原始许可文本。 - 为每个二进制分发物提供源码获取说明(链接或存档位置),满足 §3.2 要求。
代理代码在 MPL-2.0 文件级 copyleft 下可自由修改与商用,nonfree/控制器属 source-available,ext/归第三方所有,商用前请先确认所改文件属于哪一层。安全漏洞上报流程见 SECURITY.md,发行版打包合规处理可对照 debian/rules。
【免费下载链接】ZeroTierOneA Smart Ethernet Switch for Earth项目地址: https://gitcode.com/GitHub_Trending/ze/ZeroTierOne
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考