对规模较大的链,从创世逐块重放常按天甚至按周计,CometBFT 的 state sync 让新节点直接下载状态机快照恢复。本文按官方规范拆解快照结构、ListSnapshots 到 LoadSnapshotChunk 的流程、可信高度加哈希的信任锚,以及不回填历史区块的代价。
汇总与「节点运维」相关的文章,帮助你系统了解该主题。
对规模较大的链,从创世逐块重放常按天甚至按周计,CometBFT 的 state sync 让新节点直接下载状态机快照恢复。本文按官方规范拆解快照结构、ListSnapshots 到 LoadSnapshotChunk 的流程、可信高度加哈希的信任锚,以及不回填历史区块的代价。
用 Bitcoin Core 31.0 源码讲清 -blocksdir 的容器语义:目录必须预先存在、网络子目录自动分层、区块文件与混淆密钥随迁,而区块索引与链状态留在数据目录,以及漏搬 xor.dat 的后果与迁移顺序。
关闭节点网络活动但不停进程:Bitcoin Core 31.0 源码拆解 setnetworkactive 命令与 -networkactive 参数触发的三层连锁——拆散存量连接、拒收新来电、挂起 DNS 种子查询——以及它管不到的防火墙与持久化。
Bitcoin Core 的地址库空空如也时,出站连接线程会按十秒一拍的节奏向种子节点域名发起专门的 addrfetch 连接补货。本文基于 31.0 源码拆解这条冷启动通道:触发条件、队列与五兆位节流、专用连接类型与 v2 传输尝试,以及它与 feeler 探针的分工。
uptime RPC 返回的节点运行秒数,背后是单调时钟与进程起点两行实现。本文基于 Bitcoin Core 31.0 源码讲清这个数字从哪起算、系统时钟跳变会不会影响它、它与操作系统开机时长差在哪,以及监控里哪些解读方式会出错。
家用路由器后面的闪电节点想让外界连进来,可以打开 LND 的 nat=true 让它自动打洞。本文基于 LND v0.19 官方配置文档拆解这个开关的行为:两种协议都尝试、依赖平台二进制探测网关、硬件不支持时带错退出、动态 IP 自动重新通告,以及多一层 NAT 的禁区。
新节点要一次性讨回一整份地址簿,靠的是 getaddr 消息。本文基于 Bitcoin Core 31.0 源码拆解 getaddr 的三道处理纪律:只为入站对端作答、每条连接只答一次、单次回复最多一千条,并解释背后防指纹追踪与防地址盖章的攻防考虑。
Bitcoin Core 会用对端上报的时间给自己的时钟体检:样本只收出站连接、上限五十条、够五条才取中位数、偏差超过十分钟才弹出时钟警告。本文基于 31.0 源码与 timeoffsets 模块拆解这条报警链路。
比特币节点主动连邻居时,TCP 连接最长等多久由 -timeout 说了算。本文基于 Bitcoin Core 31.0 源码拆解这五秒等待的发生位置、超时后的行为,以及它与 -peertimeout、RPC 等待的分工边界。
CometBFT 的状态同步只取链头附近的数据:应用把状态做成快照,节点通过对等网络的快照通道与分片通道要元数据、要分片,再用轻客户端按可信高度、可信哈希与可信周期验证这份状态;ADR 104 进一步支持把快照带外搬到新节点本地。本文按官方文档与规范拆解它与区块同步的分工、四条通道、消息上限与运维边界。