周三上午,Solana网络险些丧失交易最终确定性。由于托管商Teraswitch的一处路由配置错误,28.83%的质押SOL意外离线,网络距离触发停止出块的33.34%阈值仅差4.51个百分点,相当于走完了约86%的“故障路径”。
Teraswitch事后发布说明,详细还原了事故经过。该公司内部使用一条默认路由来标记边缘路由器可连通互联网,通常各站点会优先选择自身路由器产生的路由。然而,一条来自迈阿密站点的默认路由在传播过程中被剥离了度量值和社区属性,阿姆斯特丹的一台路由反射器将其推送至欧洲和亚太地区。当地边缘路由器误认为该路由是本地产生并优先采用,随后将其转发至数据中心核心,核心因路由无效而拒绝。伦敦、阿姆斯特丹、都柏林、法兰克福、新加坡和东京的12个站点因此失去有效转发路径,北美地区未受影响。工程师在10分钟内定位故障,服务在04:16:15 UTC恢复。
质押协议Marinade Finance在事后统计发现,此次中断高度集中于单一自治系统(AS)。AS20326承载了118,890,767 SOL,占全网质押量超过四分之一,其中94%在同一分钟内离线。这一占比已超过Solana基金会为防止此类事件而设定的上限——基金会委托计划规定任何单一自治系统质押比例不得超过25%,而AS20326实际已达27.34%。
Marinade进一步指出,在阿姆斯特丹、法兰克福和东京,59个验证者持有的8020万SOL在路由重新收敛前选择等待,而非切换至其他路径,最终在同一窄时间窗口内恢复上线。Solana第二大验证者Helius则在整个33分钟中断期间保持离线。在Marinade可监测的74个运营商中,只有3个“干净恢复”:Laine、Cogent Crypto(均由Sol Strategies运营)以及Lion3d。
风险敞口不止于此。在同一时间段内,另有1410万SOL通过latitude.sh、Limestone、Butterfly Research和Allnodes离线,Marinade表示无法从数据中解释这一现象,并指出单纯按托管商统计质押会低估实际同时故障的规模。
Marinade还将分析矛头指向自身,报告称四个自治系统持有其分配模型分发质押量的三分之二,其中AS395201占比高达36.94%。该公司在推特上表示:“没有人应该对此感到安心,包括我们自己。”并宣布将重新审视每个网络和数据中心的集中度限制,同时开始公布验证者是否运行热切换和自动故障转移——这些信息目前无法从外部获知。
本次事故中错过的333 SOL奖励将在纪元结束时由验证者债券覆盖。但若恶意行为或故障导致验证者离线比例超过三分之一,任何SOL持有者的交易都无法最终确认,届时没有任何债券能覆盖这种风险。Solana上一次完全停摆是在2024年2月,当时花费近5小时才完成重启。
