【区块链节点 03】用 VPS 运行比特币全节点:UTXO、pruned 模式与带宽存储实测(2026)

2026 年用 VPS 跑比特币全节点到底要多少磁盘与带宽?本文讲清 UTXO 集合是什么、全节点与 pruned 剪枝节点如何省下九成存储、初始同步要下多少流量,以及 Hetzner / Contabo / RackNerd 等商家的配置与端口、RPC 安全实战,帮你用最便宜的小鸡验证自己的链。

一句话结论:2026 年想用 VPS 自己跑一个比特币节点,最划算的姿势是「pruned 剪枝全节点」——它依旧逐条验证每一笔交易、安全性与全量节点分毫不差,却能把磁盘占用从 600GB+ 砍到 10–20GB,直接让一台几十 GB 磁盘的小鸡也能上桌。本文把 UTXO、全节点与剪枝的区别、初始同步的带宽账单、入站端口 8333 与 RPC 端口 8332 的坑,以及 HetznerContaboRackNerd 三家商家的选型一次讲清,帮你用最省的钱真正「自己验证链」,而不是把信任交给某个浏览器或交易所。

延伸阅读

更多相关攻略推荐:别被多核骗了!为什么买 VPS 必须看单核(Single-Core)在 VPS 上自托管 CI Runner:GitLab Runner【VPS 自建影音与网盘 01】用 VPS 搭建私人影音服务器:JeMatrix / Element 自托管即时通讯:搭一个不被监控的私Immich / PhotoPrism 自建照片备份:把 Googl

一、先想清楚:你为什么要自己跑节点

很多人以为跑节点是为了「隐私」或「去中心化信仰」,其实最实在的收益只有一句话:把「别人说这条链长这样」变成「我自己算出来这条链长这样」。具体落到日常,有三个看得见的好处:

  • 独立验证,不盲信:你的钱包、交易所提币、链上查询,全部问你自己这台节点,不用把每一个地址都暴露给公共 explorer 或服务商。
  • 为上层打地基:想玩 Lightning 闪电网络、自己搭区块浏览器、写链上应用,第一步都是有一台本地全节点当底座。
  • 帮网络、也帮自己:开放入站连接后,你在为比特币网络 relay 交易与区块,同时自己的查询也更稳。

代价也很明确:要 24/7 在线、要占带宽、要打系统补丁。所以先问自己「我要不要用历史数据」——这决定了你该跑全量还是剪枝。

二、UTXO 到底是什么:理解存储的第一步

比特币账本不是「账户余额」模型,而是 UTXO(Unspent Transaction Output,未花费交易输出) 模型。你可以把它理解成一把把「还没花出去的零钱」:每一笔转账,都是把若干旧 UTXO 融化、铸成若干新 UTXO。节点要验证一笔新交易是否合法,必须查「这笔输入引用的 UTXO 是否真的存在且没被花过」。

因此,任何在「当前时刻」能正常验证交易的节点,都必须完整持有当前的 UTXO 集合(chainstate)。截至 2025 年初,全网 UTXO 数量已超过 1.7 亿个,chainstate 数据库在磁盘上约占 5–11GB。关键点来了:UTXO 集合无法被剪枝——无论你用全节点还是剪枝节点,这一份「当前零钱总账」必须原封不动地留着,它是节点能干活的根本。

那剪枝到底剪掉了什么?剪掉的是「历史区块文件」(blocks 目录里那一堆 blk*.dat),也就是「链是怎么一步步走到今天的」那段漫长录像。验证新交易用不到旧录像,所以剪掉它不影响安全,只是你不能再把任意旧区块喂给别的节点。

三、全节点 vs 剪枝节点:相差九成的存储

这是全文最核心的对比。两者在「验证能力」上完全等价,区别只在「存不存历史区块」:

对比项全量节点(Archival)剪枝节点(Pruned)
历史区块文件从创世块到链头全部保留只留最近 N MB(最低 550MB)
UTXO 集合完整保留完整保留(与全量一致)
区块头索引完整完整
能否验证新区块能(安全性一致)
能否给同伴 serve 旧区块不能
2025 年磁盘占用约 650GB+,且每年涨 50–100GB最低约 2GB,常用 10–20GB

注意一个常见误区:剪枝节点依然是全验证节点,它应用每一条共识规则(包括 2100 万上限、PoW、Taproot 规则),只是「验证完就把旧录像删了」。你放弃的只有一项能力:给正在做初始同步的其他节点提供古老区块。对于「我自己验证、我自己用钱包」的场景,这完全无所谓。真正需要全量节点的,是你要导入一个很老的钱包并 rescan 历史,或者你要对外提供区块数据服务。

四、存储实测:全量要 1TB 盘,剪枝几十 GB 就够

把数字落到 2026 年的现实:

  • 全量节点:比特币区块链(不含交易索引)目前约 600–750GB,且每年新增约 50–100GB。再加上 chainstate 的 5–11GB,实际要给 800GB–1TB 才从容,否则一两年就得扩容迁移。多年付的小鸡磁盘往往卡在 500GB 以下,跑全量会很尴尬。
  • 剪枝节点:配置 prune=10000(保留约 10GB 近期区块)后,blocks 目录被持续清理,总占用稳定在 10–20GB 区间。chainstate 那份 5–11GB 是固定开销,谁也省不掉。所以别指望压到「只有几百 MB」——UTXO 集合是硬下限。

实测经验:一块 40–80GB 的 NVMe 足够跑得很舒服,完全用不上大硬盘。这也是为什么剪枝节点特别适合 RackNerdContabo 这类「内存/磁盘堆得很满、价格压得很低」的廉价 VPS——它们的小套餐磁盘刚好够用。

五、CPU、内存与磁盘:剪枝节点的真实门槛

跑节点最吃资源的是初始同步(IBD,Initial Block Download),那段时间 CPU 可能打满、磁盘猛写。日常运行反而轻松。经验配置:

资源剪枝节点最低剪枝节点舒服全量节点建议
CPU2 vCPU2–4 vCPU4 vCPU 以上
内存2 GB4 GB8 GB 以上
磁盘40 GB SSD80 GB NVMe1 TB NVMe
带宽1 TB/月不限流量不限流量

内存大部分拿去给 dbcache(数据库缓存)当缓冲,缓存越大、初始同步越快、磁盘读写越少。默认 dbcache 只有约 450MB,强烈建议临时调到可用内存的 50–70%(例如 4GB 机器设 dbcache=2048),同步完再调小省内存。磁盘务必选 NVMe:chainstate 是高频随机读写,慢 SSD 会让 IBD 从「一天」拖成「几天」。

六、带宽账单:一次下载几百 GB,之后每天几百 MB

这是 VPS 跑节点最容易翻车的隐性成本。分两段算:

  • 初始同步(一次性):无论全量还是剪枝,节点都要从头下载并验证整条链,实测要吃下约 600–700GB 的入站流量。如果你的 VPS 是按流量计费、或月流量只有几百 GB,这一波就能把账单打爆。结论:跑节点的 VPS 必须选「不限流量」或「月流量 ≥ 1TB」的套餐。
  • 日常运行(持续):同步完成后,节点每天还要和同伴交换新区块、新交易、relay 数据,日常流量约 200MB–1GB/天,折合每月 6–30GB。若你开放了入站(listen=1)并给别的节点 serve 数据,上行会更高。

想给自己限速也很简单:在 bitcoin.conf 里加 maxuploadtarget=1024 就把每日上传封顶在 1GB,避免被某些按上行计费的商家找麻烦。HetznerContabo 的大盘机器多带「无限流量」或高额额度,比按量计费的小鸡更适合长期在线。

七、端口与连接:8333 入站是灵魂,8332 千万别露

比特币节点有两个关键端口:

  • 8333(P2P,TCP):节点之间聊天的端口。想真正「帮助网络」并拿到更多对等节点,必须开放入站 8333。在 VPS 上要放行防火墙,并确保你拿到的是独立 IPv4(NAT 型小鸡只给一个 SSH 端口,开不了 8333,等于只能做「只出不让进」的叶子节点)。
  • 8332(RPC,JSON-RPC):你本机钱包、脚本和节点对话用的接口。绝对不能绑到 0.0.0.0 暴露在公网——一个无认证的 RPC 端口等于把你的节点控制权拱手让人。正确做法是 rpcbind=127.0.0.1,只在本地访问,或者用 SSH 隧道转发。

顺带说一句:很多廉价 NAT VPS 跑节点体验很差,不是性能问题,是「开不了 8333 入站」导致对等连接少、同步慢、数据又要从别人那拉。要正经跑,至少选带独立 IPv4 的套餐。

八、实战:在 Ubuntu VPS 上装 bitcoind 并开剪枝

下面是一套最小可用的配置。先装官方二进制(务必校验签名,别用来路不明的包),再写一份极简 bitcoin.conf:

# ~/.bitcoin/bitcoin.conf
prune=10000          # 保留约 10GB 近期区块,磁盘稳定在 10-20GB
dbcache=2048         # 临时加大缓存加速初始同步,跑完可降到 512
maxconnections=50    # 控制对等连接数,节约带宽
maxuploadtarget=1024 # 每日上传上限 1GB,避免流量超额
rpcbind=127.0.0.1    # RPC 只绑本地,绝不暴露公网
rpcallowip=127.0.0.1
listen=1             # 开放 8333 入站,成为网络的一份子

然后用 systemd 拉起,让它崩溃自启、重启自起:

bitcoind -daemon
# 看同步进度
bitcoin-cli getblockchaininfo
# 看到 "pruned": true 且 verificationprogress 逼近 1.0 即同步完成

防火墙只放行 8333 与你的 SSH 端口,RPC 端口一律不对外。整个过程最耗时的就是 IBD——快的十几个小时,慢的按天算,因为节点在老老实实从创世块验证整条链,这一步省不掉。

九、AssumeUTXO:新版本的「加速启动」外挂

Bitcoin Core 28.0(2024 年 10 月)起内置了 AssumeUTXO 机制:节点可以先加载一份官方硬编码哈希的 UTXO 快照(主网快照高度 840,000),立刻从快照高度开始验证新区块、马上就能干活,同时在后台慢慢补验从创世块到快照高度的完整历史。实测从「加载快照+追到链头」约 90 分钟,而传统 IBD 往往要 10 小时以上。

重点:AssumeUTXO 不改动任何共识规则,最终状态和传统 IBD 完全一样,只是把「先验证新区块、后补验历史」的顺序换了。对新手来说,这意味着「开箱即用」的体验大幅改善——前提是你的 Bitcoin Core 版本够新(2026 年主流已是 v29/v30 一代)。

十、安全与运维:别让节点变成入口

  • SSH 只有密钥:禁用 root 密码登录,用密钥 + 防火墙白名单。
  • RPC 不出本机:再次强调,rpcbind 绑 127.0.0.1,要远程管理就走 SSH 隧道。
  • 定期更新:比特币客户端会修漏洞,别让节点停在三年前的版本。
  • 磁盘监控:剪枝模式下空间很稳,但 chainstate 会随 UTXO 增长缓慢变大,留 20% 余量即可。
  • 备份钱包:如果节点兼当钱包,种子短语/keystore 离线纸质备份,绝不只存在服务器上。

最后提醒:节点不是「买完就忘」的设备,它要打补丁、看磁盘、偶尔处理对等连接异常。但相比把信任交给别人,这份小维护换来的「自己验证链」值得。

#比特币节点 #VPS搭建 #pruned剪枝 #BitcoinCore #UTXO