The op-bootnode implementation is not actively maintained or used, and can thus be shut down.
There are also no references to it in the docs website, and no docker image builds, and there are readily available replacements, so I am proposing to remove it from the monorepo without intermediate deprecation steps.
For production networks it's recommended to use the geth bootnode instead: code
The go-ethereum bootnode is available as part of the ethereum/client-go:alltools docker image. Make sure to bind the bootnode to a public network interface, with a port that can accept incoming UDP traffic. And explicitly enable discovery-v5, as discovery v4 is not used in the OP-Stack, but still being phased out in the ethereum stack.
Like op-bootnode, this type of bootnode is discovery-only: it helps op-node and op-geth find other nodes, the bootnode itself does not serve blocks or other chain data.
Note that the discv5 DHT used for discovery is shared between multiple different ethereum L1 and L2 chains. Not all chains need to run their own discovery bootnodes, if the chain is configured to discover others through one of these shared bootnodes.
Description
This removes the
op-bootnode
service.The
op-bootnode
implementation is not actively maintained or used, and can thus be shut down.There are also no references to it in the docs website, and no docker image builds, and there are readily available replacements, so I am proposing to remove it from the monorepo without intermediate deprecation steps.
For production networks it's recommended to use the geth bootnode instead: code
The go-ethereum bootnode is available as part of the
ethereum/client-go:alltools
docker image. Make sure to bind the bootnode to a public network interface, with a port that can accept incoming UDP traffic. And explicitly enable discovery-v5, as discovery v4 is not used in the OP-Stack, but still being phased out in the ethereum stack.Like
op-bootnode
, this type of bootnode is discovery-only: it helps op-node and op-geth find other nodes, the bootnode itself does not serve blocks or other chain data.Note that the discv5 DHT used for discovery is shared between multiple different ethereum L1 and L2 chains. Not all chains need to run their own discovery bootnodes, if the chain is configured to discover others through one of these shared bootnodes.