IntersectMBO / IntersectMBO/ouroboros-network
Bootstrap Node Protection
- Dominant language
- Haskell
- Stars
- 296
- Forks
- 104
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 4
Description
# Problem Statement
Bootstrap peers will be heavily used by syncing leaf nodes or relays doing an initial sync. However there could be nodes on the network which are miss-configured to not only sync from bootstrap peers but also use them as their upstream peer (instead of using ledger peers, possibly because using non-p2p stack).
# Proposed Solution
## Chain-Sync server disconnect
A node which runs as a bootstrap peer, it should disconnect from `node-to-node` clients which synced to the tip of its chain. This should be done after some timeout. Normal clients, should switch to ledger peers anyway and we just want to protect the bootstrap nodes from being used not in the intended way.
## Chain-Sync server disconnect on intersect
Bootstrap nodes should also disconnect when the client connects to it and it turns out that it's chain is close to the bootstrap node's tip (which we know via `MsgFindInteresect`).
# Deployment
To be able to deploy this feature, we will need Daedalus (or other full node wallets), to be released with P2P support.
Contributor guide
Assessment
This issue has not been assessed yet.