news 2026/9/10 11:18:59

ZeroTierOne MPL-2.0 许可实用指南:修改、再分发与商用授权的边界

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
ZeroTierOne MPL-2.0 许可实用指南:修改、再分发与商用授权的边界

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 个可执行动作

  1. 文件头:修改过的 MPL 文件保留原版权声明;新增且包含 MPL 代码的文件按 Exhibit A 格式标注 MPL-2.0 声明。
  2. 分发时随包附 LICENSE-MPL.txt 与 LICENSE.txt,并在说明文件中列明 nonfree 部分范围。
  3. 在发布记录中登记所有被修改的文件路径,可参考 debian/changelog 的版本化记录格式。
  4. 保持ext/目录物理隔离,单独列出各第三方依赖的原始许可文本。
  5. 为每个二进制分发物提供源码获取说明(链接或存档位置),满足 §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),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/10 11:18:57

Rust 控制流基础:Comprehensive Rust 中的 `if` 表达式详解

Rust 控制流基础:Comprehensive Rust 中的 if 表达式详解 【免费下载链接】comprehensive-rust This is the Rust course used by the Android team at Google. It provides you the material to quickly teach Rust. 项目地址: https://gitcode.com/GitHub_Trend…

作者头像 李华
网站建设 2026/9/10 11:18:46

ozip转zip:解密OPPO/Realme固件的Python实战指南

简介:本资源是一款专为OPPO机型刷机爱好者与固件开发者设计的ozip格式转zip格式工具包,解决第三方TWRP Recovery不兼容官方ozip卡刷包的痛点,支持直接转换后提取boot、system等关键分区文件,适用于刷机调试、固件分析及定制ROM开发…

作者头像 李华
网站建设 2026/9/10 11:18:40

智能服装核心技术解析与应用前景

1. 智能服装行业全景扫描 当传统纺织业遇上微电子技术,一场关于"可穿戴"的产业革命正在悄然发生。智能服装作为继智能手表、手环之后的下一代可穿戴设备,正在突破单一健康监测功能,向医疗康复、运动竞技、军事防护等专业领域纵深发…

作者头像 李华
网站建设 2026/9/10 11:18:39

CN68xx MIPS64交叉工具链解析:从归档到部署

简介:面向Cavium CN68XX系列MIPS处理器的VxWorks6.9 BSP资源包,专为需要在多核MIPS i64R2架构上快速搭建嵌入式系统的开发者设计。包内提供完整的板级支持包,覆盖启动引导、中断处理、内存管理、设备驱动、文件系统及网络协议栈等关键模块&am…

作者头像 李华
网站建设 2026/9/10 11:17:55

Python数据分析实战工作流:从环境搭建到可复现建模

简介:本资源是《Python数据分析实战(第2版)》配套源码包,面向Python初学者与数据科学入门者,系统支撑从数据获取、清洗、可视化到机器学习建模的全流程实践。压缩包共80个文件,含17个Jupyter Notebook&…

作者头像 李华
网站建设 2026/9/10 11:17:45

端到端公式识别:从CNN+Transformer到LaTeX生成实战

简介:这是一套基于 PyTorch 的端到端图像 LaTeX 公式识别项目,面向有一定基础的深度学习开发者与科研教育人员,解决从数学公式图像到可编辑 LaTeX 代码自动转换的难题。内容覆盖图像预处理、卷积神经网络特征提取、循环神经网络序列解码以及编…

作者头像 李华