Bootnodes are used to initially discover peers.

Mainnet and Public Testnets

For mainnet, Rinkeby, Ropsten, and Görli, Pantheon predefines a list of enode URLs.

Private Networks

Start Bootnode

To start a bootnode for a private network, complete the following steps:

  1. Export the public key to a file:


    pantheon --genesis-file=privateNetworkGenesis.json --data-path=nodeDataPath public-key export --to=bootnode
    Where privateNetworkGenesis.json and nodeDataPath are changed to the relevant values for your private network.

    The node public key is exported to the bootnode file.

  2. Start the bootnode, specifying:

    • Genesis file and data directory, as in the previous step.
    • No arguments for the --bootnodes option because this is your bootnode.


    pantheon --genesis-file=privateNetworkGenesis.json --data-path=nodeDataPath --bootnodes

To specify this bootnode for another node, specify the enode URL using the --bootnodes option.


The default host and port for P2P peer discovery is Use the --p2p-host and --p2p-port option to specify a host and port.

Start Node Specifying the Bootnode

To start a node specifying the bootnode for P2P discovery:


pantheon --genesis-file=privateNetworkGenesis.json --data-path=nodeDataPath --p2p-host= --p2p-port=30301 --network-id=123 --bootnodes=enode://c35c3ec90a8a51fd5703594c6303382f3ae6b2ecb99bab2c04b3794f2bc3fc2631dabb0c08af795787a6c004d8f532230ae6e9925cbbefb0b28b79295d615f@