Check node and validator status
Select a configuration
- Operating system:
- Linux, MacOS, Arm64
- Windows
- Network:
- Mainnet
- Sepolia
- Holesky
- Execution client:
- Geth
- Nethermind
- Besu
- EN-BN connection:
- HTTP-JWT
- IPC
Status checklist
Use the following checklist to check the status of your nodes and validators. If you run into issues, generate a troubleshooting report using our troubleshooting checklist.
If you end up generating a troubleshooting report, your report will include your selected configuration.
Many common issues are resolved by the steps in our Quickstart guide. We recommend reviewing the quickstart guide before continuing below.
- Execution client:
- Nethermind
- Besu
- Geth
You can check your Nethermind execution node's sync status by navigating to http://localhost:8545/healthchecks-ui
or by running curl localhost:8545/health
from a separate terminal window. A sync status of false
indicates that your node is fully synced.
- Operating system:
- Linux, MacOS, Arm64
- Windows
You can check your Besu execution node's sync status by running curl -H 'Content-Type: application/json' -X POST http://localhost:8545 -d '{"jsonrpc":"2.0","method":"eth_syncing","params":[],"id":51}'
from a separate terminal window. A sync status of false
indicates that your node is fully synced.
You can check your Besu execution node's sync status by running curl -H "Content-Type: application/json" -X POST http://localhost:8545 -d "{""jsonrpc"":""2.0"",""method"":""eth_syncing"",""params"":[],""id"":51}"
from a separate terminal window. A sync status of false
indicates that your node is fully synced.
- Operating system:
- Linux, MacOS, Arm64
- Windows
You can check your Geth execution node's sync status by running geth attach
(IPC) or geth attach http://localhost:8545
(HTTP) from a separate terminal. Then type eth.syncing
. A sync status of false
indicates that your node is fully synced.
You can check your Geth execution node's sync status by running geth attach ipc:\\.\pipe\geth.ipc
(IPC) or geth attach http://localhost:8545
(HTTP) from a separate terminal. Then type eth.syncing
. A sync status of false
indicates that your node is fully synced.
- Execution client:
- Nethermind
- Besu
- Geth
You can check your Nethermind execution node's peer connectivity by navigating to http://localhost:8545/healthchecks-ui
or by running curl localhost:8545/health
a separate terminal window. A health status of Healthy
indicates that your node is connected to peers.
You should periodically see more than a few peers reported through Besu's log output. Refer to Besu's Monitor peer connections documentation for more detailed peer health monitoring guidance.
You should periodically see more than a few peers reported through Geth's log output. Look for output in the format of peercount=12
. Refer to Geth's Connecting To The Network documentation for more detailed peer health monitoring guidance.
- Execution client:
- Geth
- Nethermind
- Besu
geth version
to check Geth's version. See Geth's releases page and join their Discord to stay up to date as we approach Mainnet Merge.You can check your beacon node's sync status by running curl http://localhost:3500/eth/v1/node/syncing | jq
from a separate terminal window. When you see "is_syncing":false
, your beacon node is fully synchronized with the beacon chain. When you see "is_optimistic":false
, your beacon node sees that your execution node is either 1) not yet started, 2) hasn't synced past the merge block or 3) fully synchronized with the execution-layer blockchain.
You should periodically see more than a few peers reported through your beacon node's log output. Look for output in the format of peers=12
. You can issue curl http://localhost:8080/healthz
from a separate terminal window to check connectivity status. If you see currentConnectionError: no contract code at given address
, your execution node may still be syncing. Otherwise, if you don't see any errors, your beacon node is connected to peers.
Ensure that you're using the latest stable Prysm release. Check Prysm's version by issuing the following command: prysm.sh beacon-chain --version
(Linux) prysm.bat beacon-chain --version
(Windows).
In a separate terminal window, run curl http://localhost:3500/eth/v1/node/syncing
. If the response shows `"el_offline": false`, it can be interpreted as the "EN-BN connection is healthy". However, if you see `"is_optimistic": true`, it may indicate that the execution node is still syncing or experiencing other issues. For more information about this endpoint, visit the beacon API documentation.
Prysm will output an error if you attempt to provide an invalid Ethereum wallet address as a fee recipient address. You'll see warnings if a fee recipient address hasn't been provided. See Configure Fee Recipient for more information.
- Network:
- Mainnet
- Holesky
- Sepolia
deposit_data-*.json
file) into a blockchain explorer like beaconcha.in to check the status of your validator.deposit_data-*.json
file) into a blockchain explorer like beaconcha.in to check the status of your validator.Running into unexpected output, warnings, or errors? Although this is unintuitive, many errors and warnings are expected and have been identified in the below list of troubleshooting scenarios and solutions. We gratefully ask that you review this before asking for support.
Issue still not resolved? Generate a troubleshooting report below. Head over to Discord and paste your report for additional troubleshooting assistance.
Running into unexpected output? Generate a troubleshooting report using our troubleshooting checklist and share it with us on Discord.