· Nacho Coll · Guides  · 16 分钟阅读

什么是 IPFS 固定?2026 年您需要了解的一切

了解什么是 IPFS 固定、为什么没有固定文件会消失、远程固定服务如何工作,以及如何固定您的第一个文件。包含示例的完整指南。

了解什么是 IPFS 固定、为什么没有固定文件会消失、远程固定服务如何工作,以及如何固定您的第一个文件。包含示例的完整指南。

什么是 IPFS 固定?2026 年您需要了解的一切

如果您花了一些时间探索去中心化存储,您可能已经听说过 IPFS --- 星际文件系统。它承诺了一个文件按内容而非位置寻址的网络,使数据具有可移植性、可验证性和抗审查性。但有一个几乎每个新手都会遇到的陷阱:如果没有人明确保留您的文件,它就会消失。

这就是固定的作用。本指南解释了什么是 IPFS 固定、它为什么重要、它在底层是如何工作的,以及如何在今天固定您的第一个文件。

IPFS Ninja dashboard showing pinned files and analytics

IPFS 快速入门

IPFS 是一个用于存储和共享文件的点对点协议。与其从特定服务器获取文件(如 https://example.com/photo.jpg),您通过其**内容标识符(CID)**来请求它 --- 这是文件内容的加密哈希。网络上任何持有副本的节点都可以将其提供给您。

这种模型具有强大的特性:

  • 去重 --- 相同的文件共享相同的 CID,因此网络不会存储同一内容的两个副本。
  • 完整性 --- 哈希保证文件未被篡改。
  • 去中心化 --- 没有单一服务器控制访问。

但 IPFS 节点的磁盘空间有限,它们需要一种方法来决定保留哪些数据和丢弃哪些数据。这种机制称为垃圾回收,这就是您的文件可能消失的原因。

垃圾回收问题

每个 IPFS 节点都维护一个本地块存储。当节点代替您获取内容时 --- 比如,您通过公共网关查看图片 --- 这些块会被临时缓存。随着时间推移,节点运行垃圾回收以释放空间,任何未被明确标记为重要的块都会被删除。

这里有一个关键点:**将文件添加到 IPFS 并不能保证它会一直存在。**如果持有您文件的唯一节点离线,或者该节点对这些块进行了垃圾回收,内容就变得不可检索。CID 仍然作为地址存在,但没有人在家。

这是设计如此。IPFS 是一个内容寻址协议,不是永久存储保证。永久性需要明确决定保留数据。这个决定就称为固定

什么是固定?

固定告诉 IPFS 节点:“保留这个内容。不要垃圾回收它,无论如何都不要。“可以把它想象成在实体书中标记一页 --- 即使书架被重新整理,书也不会丢失那一页。

当您固定一个 CID 时,节点将与该内容关联的每个块标记为受保护。垃圾回收会完全跳过这些块。

固定有两种类型:

本地固定

您运行自己的 IPFS 节点(例如使用 Kubo)并直接固定文件:

ipfs pin add QmYwAPJzv5CZsnA625s3Xf2nemtYgPpHdWEz79ojWnPbdG

只要您的节点在运行且固定保持原位,内容就会留在您的机器上。

远程固定

您向代替您运营 IPFS 基础设施的第三方服务发送固定请求。该服务的节点固定内容并保持 24/7 可用,即使您自己的机器已关闭。

为什么需要远程固定服务

本地固定可以工作,但它带来了大多数开发者和团队不想管理的运营开销:

  • 正常运行时间 --- 您的笔记本电脑不会 24 小时在线。如果您的节点离线,没有人能从您这里检索您固定的文件。缓存了内容的其他节点最终可能会垃圾回收它。
  • 带宽 --- 从住宅连接提供热门文件很快会成为瓶颈。
  • 维护 --- 运行 IPFS 节点意味着保持软件更新、监控磁盘使用、管理对等连接和处理网络配置。
  • 冗余 --- 单个节点是单点故障。专业固定服务通常在不同区域的多个节点之间复制数据。

远程固定服务解决了所有这些问题。您通过 API 上传或固定内容,服务处理基础设施、复制和可用性。您专注于构建应用程序。

IPFS 固定在底层如何工作

理解技术机制有助于您对存储架构做出更好的决策。

1. 内容被分割成块

当您将文件添加到 IPFS 时,节点将其分成块(通常每个 256 KB)。每个块单独哈希,为每个块生成一个 CID。

2. 构建 DAG

这些块使用称为 Merkle DAG 的数据结构组织成有向无环图(DAG)。对于单个文件,根 CID 指向中间节点,中间节点指向原始数据块。对于目录,DAG 包括指向每个文件子 DAG 的链接。

3. 固定保护整个 DAG

当您固定一个根 CID 时,节点递归地将根块及其引用的每个块标记为已固定。这称为递归固定,是默认行为。还有直接固定(仅保护根块)和间接固定(因为祖先被固定而受保护的块),但递归固定是您 99% 时间会使用的。

4. 节点发布可用性

固定节点向 IPFS 分布式哈希表(DHT)发布提供者记录,宣布它拥有该内容。当另一个对等点请求 CID 时,DHT 将其路由到您的节点(或固定服务的节点),块被传输。

5. 垃圾回收跳过已固定的块

在垃圾回收期间,节点检查每个块是否在固定集中。已固定的块及其后代被保留。其他所有内容都有资格被删除。

固定与托管

这两个概念相关但不同,混淆它们会导致困惑。

固定意味着 IPFS 节点保留块并参与点对点网络以将它们提供给其他 IPFS 节点。如果有人通过 IPFS 感知的客户端或另一个节点请求 CID,固定节点就会交付。

托管(通过网关)意味着提供一个 HTTP 端点,将 CID 转换为标准 Web URL。例如:

https://your-gateway.example.com/ipfs/QmXoypizjW3WknFiJnKLwHCnL72vedxjQkDDP1mXWo6uco

网关弥合了 IPFS 点对点网络和传统 Web 之间的差距。大多数用户和应用程序通过网关访问 IPFS 内容,而不是通过原生 IPFS 客户端。

许多固定服务将网关作为其产品的一部分 --- 有些提供共享的公共网关,其他则为您提供专用子域。在评估服务时,请考虑您是只需要固定(后端冗余)还是需要固定加网关(前端交付)。

2026 年的固定服务选项

固定生态系统已经相当成熟。以下是流行选项的公平比较:

服务免费套餐最低付费计划网关备注
IPFS Ninja500 个文件, 1 GB$5/月 (10 GB)专用简单的 REST API、IPNS 名称、最便宜的付费套餐
Pinata500 个文件, 1 GB$20/月 (1 TB)专用成熟平台、JS/TS SDK
Web3.Storage(现为 Storacha)5 GB$10/月 (100 GB)共享 (storacha.link)Filecoin 支持的长期存储
Filebase5 GB按用量计费;无限制 $500/月专用(付费计划)多网络(IPFS、Sia、Storj),每桶 IPNS

每个服务都有其优势。Pinata 和 IPFS Ninja 提供专用网关,为您提供更快更可靠的 HTTP 交付。Web3.Storage 提供 Filecoin 归档以实现长期持久性。Filebase 吸引已在使用 S3 兼容工具的团队。正确的选择取决于您的用例、规模和集成偏好。有关所有主要提供商的详细比较,请参见2026 年最佳 IPFS 固定服务

如何固定文件

让我们逐步通过 REST API 固定文件。以下示例使用 ipfs.ninja,但概念适用于任何服务。

使用 curl 上传和固定

# Upload a JSON file --- the service pins it automatically
curl -X POST https://api.ipfs.ninja/upload/new \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"content": {"name": "Alice", "score": 42}}'

响应包含您固定内容的 CID。只要固定保持原位,该 CID 就可以从 IPFS 网络检索。

使用 JavaScript 上传

const response = await fetch("https://api.ipfs.ninja/upload/new", {
  method: "POST",
  headers: {
    "X-Api-Key": "YOUR_API_KEY",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    content: { name: "Alice", score: 42 },
  }),
});

const result = await response.json();
console.log("CID:", result.cid);

固定已有的 CID

如果您的内容已经在 IPFS 网络上,您想让另一个节点固定它以增加冗余:

curl -X POST https://api.ipfs.ninja/pin \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"cid": "QmYwAPJzv5CZsnA625s3Xf2nemtYgPpHdWEz79ojWnPbdG", "description": "Project metadata"}'

服务从网络获取内容,存储块并固定它们。您的数据现在有了额外的可用性点。

何时使用 IPFS 固定

固定并不是每个存储问题的正确工具。以下是它发挥作用的场景:

NFT 元数据和媒体

NFT 市场和创作者需要令牌元数据和艺术作品无限期保持可访问。如果元数据 JSON 或图像消失,NFT 实际上就失去了其内容。固定确保智能合约中引用的 CID 始终可以解析。

去中心化应用(dApp)资产

通过 IPFS 提供前端、配置文件或用户生成内容的 dApp 需要这些资产可靠可用。固定提供了这种可靠性,而无需依赖集中式 CDN。

永久文档

监管文件、法律文件、学术论文和审计追踪受益于内容寻址存储。CID 作为文件未被篡改的证明,固定确保其仍可检索。

抗审查发布

在限制环境中运营的记者、活动家和组织使用 IPFS 发布不能通过针对单一服务器而被关闭的内容。在多个服务和地区进行固定增加了韧性。

可验证的数据管道

供应链数据、科学数据集和金融记录可以被哈希和固定,以创建不可变的审计追踪。下游消费者通过检查 CID 来验证完整性。

需要避免的常见错误

假设 IPFS 意味着永久

这是最常见的误解。将文件添加到 IPFS 使其可寻址,而非永久。没有固定,您的文件距离消失只有一个垃圾回收周期。始终固定您关心的内容。

认为固定等于加密

固定使您的数据保持可用 --- 它不会使其私有。任何知道 CID 的人都可以检索内容。如果您需要机密性,请在将文件上传到 IPFS 之前对其进行加密。CID 将指向密文,没有解密密钥就毫无用处。

忽视 CID 不可变性

CID 是内容的哈希。如果您改变哪怕一个字节,就会得到完全不同的 CID。这意味着您不能”就地更新”固定的文件。相反,您上传新版本(获得新 CID),固定它,然后可选地取消固定旧版本。对于可变引用,请查看 IPNS(星际名称系统),它将稳定的名称映射到变化的 CID。一些固定服务,如 IPFS Ninja,包含内置的 IPNS 支持,因此您可以直接通过 API 创建和发布可变名称。

依赖单一固定

如果您的固定服务出现中断,您的内容可能暂时变得不可访问。对于关键数据,请考虑使用多个服务进行固定或维护本地固定作为备份。固定中的冗余反映了传统基础设施中的冗余。

忘记大文件性能

IPFS 在几百兆字节以下的文件中表现最佳。非常大的文件(多 GB)可能传输缓慢且固定成本高昂。如果您在处理大型数据集,请考虑将其分割成更小的块或使用针对大型对象优化的服务。

结论

IPFS 固定是将内容寻址从一个巧妙想法转变为可靠存储策略的机制。没有它,您的文件只是暂时存在。有了它,您将获得可验证的、去中心化的和持久的数据可用性。

生态系统提供了多个成熟的固定服务和慷慨的免费套餐,因此入门没有障碍。如果您想尝试,ipfs.ninja 允许您免费固定最多 500 个文件和 1 GB 数据,并提供专用网关 --- 无需信用卡。

准备好固定您的第一个文件了吗?请参阅我们的逐步上传指南,在两分钟内从零开始获得一个固定的 CID。

无论您选择哪种服务,重要的是固定您的内容。您的 CID 会感谢您的。

返回博客