This guide shares the necessary information to prepare EnergyWebChain node for the Zurich Upgrade, including required EVM client versions, the updated chainspec, and instruction to restart the node.
Ensure node is running a Zurich-compatible client version:
-
Nethermind client → upgrade to
v1.31.13
-
OpenEthereum client → upgrade to
v3.3.5
If using Nethermind client with flag-based configuration, run nethermind -c energyweb
to load the new chainspec automatically, then proceed to step 3. Otherwise, if you are using OpenEthereum or have customly placed chainspec please follow 2.1–2.3 for manual updates.
Download the latest EnergyWebChain chainspec:
echo "2bbdf8758f07cf3f33124dbde8fa66d31c169bcafc71e453e85035ca79ccfb7e EnergyWebChain.json" | sha256sum -c -
Output should be: EnergyWebChain.json: OK
- For OpenEthereum client chainspec file normally can be found & replaced in config folder:
├── config
├── chainspec.json
In case chainspec file of your node is specified via a custom path, please update it in apropriate place accordingly.
- For Nethermind client custom chainspec path must be specified using Init.ChainSpecPath option:
nethermind --init-chainspecpath path/to/EnergyWebChain.json
Restart the EVM client service (Nethermind or OpenEthereum) to apply the upgrade changes.
curl -X POST -H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"web3_clientVersion","params":[],"id":1}' \
http://localhost:8545
# Response of running node of OpenEthereum
{"jsonrpc":"2.0","result":"OpenEthereum//v3.3.5-stable/x86_64-linux-musl/rustc1.59.0","id":1}
# Response of running node of Nethermind
{"jsonrpc":"2.0","result":"Nethermind/v1.31.13+1b548727/linux-x64/dotnet9.0.7","id":1}
# Check sync status
curl -X POST -H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"eth_syncing","params":[],"id":1}' \
http://localhost:8545
If the response is false
, the node is fully synced.
If it returns an object with startingBlock
, currentBlock
, and highestBlock
, the node is still syncing.