0

I am in the process of setting up a Substrate-based blockchain network and encountered a challenging issue while trying to connect my node to a bootnode. The error I'm facing is as follows:

Bootnode with peer id 12D3KooWDpx5mvTqiV795Y3hbtWzAwMjHgb8386XL58mvS5R****` is on a different chain (our genesis: 0xd94f…41c0 theirs: 0x13eb…adc7)

Context:

I am trying to connect my node to an established network using a specified bootnode.

The genesis block hash of my node (0xd94f…41c0) differs from the bootnode's genesis block hash (0x13eb…adc7), causing the connection attempt to fail.

Setup Details:

My node is configured to connect to the network using a custom spec file, which was supposed to be aligned with the network's configuration.

The relevant part of my node startup command is: ` --bootnodes /ip4/13.59.14.144/tcp/30333/p2p/12D3KooWDpx5mvTqiV795Y3hbtWzAwMjHgb8386XL58mvS5RUo**

Troubleshooting Steps Taken:

Double-checked that the customSpec.json and customSpecRaw.json files are consistent across all nodes in the network.

Regenerated the customSpecRaw.json from the customSpec.json to ensure no discrepancies. Verified that no other instances of the node were running that could potentially cause conflicts with the chain specification.

Despite these steps, the issue persists, preventing my node from connecting to the network as intended.

Questions:

How can I ensure that my node and the bootnode are on the same chain, avoiding genesis block hash mismatches?

Is there a common pitfall or configuration oversight that could lead to this discrepancy in genesis hashes?

Could this issue arise from incorrect handling or distribution of the customSpec.json or customSpecRaw.json files?

I appreciate any insights or guidance on resolving this issue and successfully connecting my node to the network. Thank you!

1 Answer 1

0

There are three ways to configure the bootnodes.

  1. Use the external chainspec file through passing --chain <PATH>.
  2. Use the built-in chainspec. When you boot a chain with --chain <NAME>.
  3. Pass the bootnodes to --bootnodes.

You should pay attention to these three places and check if you wrote any wrong addresses.

1 and 2 are pretty similar, there is a field in the chainspec to preset some bootnodes. You should check that field.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.