Validation

禁令的期限是多久?

  • May 31, 2017

我在某處讀到一個節點被禁止 24 小時。

但是我發現了Misbehave()函式,它使state->fShouldBan = true;. 但我找不到任何其他功能state->fShouldBan = false;。似乎禁止是永遠的。

如果永久禁止,我猜該節點也會從其鄰居列表中刪除行為不端的對等點,對吧?但我找不到它。

設置時state->fShouldBan,網路執行緒將斷開節點,並清理記憶體。結果,state對象完全消失了。因此,沒有必要 unset fShouldBan

確實發生的是,當實際禁止發生時(不僅僅是fShouldBan欄位的設置),它被添加到禁止表(基於 IP)中。此表中的條目具有過期時間。新禁止節點的預設過期時間由-bantime選項控制,預設為未來 24 小時。

禁令的持續時間與bantime(in bitcoin.conf) 設置的一樣多:

-bantime=<n> Number of seconds to keep misbehaving peers from reconnecting (default: 86400)

86400 秒是 1 天。

引用自:https://bitcoin.stackexchange.com/questions/53963