What is bootnode?

A well-known, long-running node whose address ships with client software so a new node has somewhere to ask for peers when it first starts.

Not yet verifiedHow we verify

3 min read

In this entry

A well-known, long-running node whose address ships with client software so a new node has somewhere to ask for peers when it first starts.

Discovery takes over afterwards, and the bootnode plays no part in validating anything, but it is a real dependency at startup: a node given no reachable bootnodes never finds the network.

Clients ship several, run by different parties, for the same reason networks want client diversity. It is a bootstrapping problem, not a trust problem: the new node still verifies everything it later receives.

How it works

A peer-to-peer network has no directory. A node that has never connected to anything has no way to learn a single address of another participant, so client software ships with a hardcoded list.

On startup the node contacts those addresses and asks for peers. It receives a set of candidates, connects to some, asks them for more, and within seconds has a peer set that no longer includes the bootnodes. Bitcoin clients supplement this with DNS seeds, which resolve to lists of recently active node addresses.

A bootnode answers discovery queries and nothing else. It does not relay blocks, does not validate, and cannot feed a new node a false chain, because everything the node subsequently receives is checked against consensus rules it holds locally.

Their addresses ship in the client's source, so an operator running a private network replaces them with peers of their own. Private networks and devnet deployments have to configure their own, since the public lists point at chains they are not part of.

Losing every bootnode would slow new nodes joining rather than stop a running network, since existing nodes already know their peers and many clients cache previously seen addresses across restarts.

Example

Illustrative: you start a node behind a firewall that blocks outbound traffic on the discovery port. The node contacts no bootnodes, learns no peers, and sits at zero connections indefinitely with an empty chain. Nothing is wrong with the software or the network; the bootstrap step failed. Opening the port, or supplying a reachable peer manually, resolves it in seconds.

Why it matters when you buy

You only meet bootnodes if you run your own node, which some buyers do to verify their own balances without trusting a third party. If you rely on a hosted provider instead, its node did this once and you inherit its peer set. See the guide on using a block explorer for the third-party route most people take.

  • node — what a bootnode is a specialized instance of
  • full node — the validating node that needs bootstrapping
  • client diversity — why bootnodes come from several operators
  • devnet — private networks needing their own list
  • rpc provider — the hosted alternative to running one
  • light client — a lower-resource way to verify

Questions

Does a bootnode see my transactions?

Only if you happen to connect to it as an ordinary peer afterwards, which is unlikely since bootnodes usually serve discovery rather than accept long-lived connections. Any peer can see transactions you broadcast, which is a property of the network rather than of bootnodes.

Can bootnodes censor a network?

No. They can slow new nodes joining if all of them are unreachable, but they cannot alter what an existing node accepts, and node operators can supply their own peers.

Do I need to configure these?

Not for a public chain. The defaults shipped with the client work. You configure them only when running a private network or a test deployment.