Join the XRPL EVM
Now that you have successfully installed the exrpd
binary, it’s time to take the next steps and fully connect to the XRPL EVM. This page provides separate instructions for Devnet and Testnet. Pick the environment you want to join and follow the steps in that tab.
Prerequisites
Note: Make sure the
exrpd
is installed before proceeding.
Configure the Node
Once you have the exrpd
binary installed, you need to initialize and configure the node. This involves generating initial configuration files, downloading the appropriate genesis file, and establishing connections to network peers.
1. Initialize the node
Initializing your node creates the required configuration files, including validator keys and a default configuration structure. The <moniker>
is a human-readable name you assign to your node (often the name of your organization or a recognizable identifier), and <chain-id>
specifies the target network.
exrpd init YOUR_MONIKER --chain-id exrp_1440002-1
After running this, the necessary configuration and key files will be generated in ~/.exrpd
.
2. Download the Genesis File
Obtain the Devnet genesis.json
file and place it in your node’s config directory. If you are trying to validate genesis with the latest version (v6.0.0) as genesis was created using v1.0.0. You can skip the validate genesis exrpd validate-genesis
:
wget https://raw.githubusercontent.com/Peersyst/xrp-evm-archive/main/poa-devnet/genesis.json -O ~/.exrpd/config/genesis.json exrpd validate-genesis
If validation succeeds, the genesis file is correct.
3. Add Peers
Your node needs to connect to other nodes to synchronize. Fetch a list of Devnet peers and update persistent_peers
in ~/.exrpd/config/config.toml
:
PEERS=`curl -sL https://raw.githubusercontent.com/Peersyst/xrp-evm-archive/main/poa-devnet/peers.txt | sort -R | head -n 10 | awk '{print $1}' | paste -s -d, -` sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" ~/.exrpd/config/config.toml cat ~/.exrpd/config/config.toml | grep persistent_peers
4. Advanced Configuration (Optional)
If you need to adjust pruning, logging, or other advanced settings, see the Advanced Configuration Options.
5. Create or Import a Key (Optional)
If you plan to run a validator or sign transactions, generate a new key or import an existing one:
exrpd keys add <key_name> --keyring-backend <os|file|test>
Effective key management is critical for the security and operation of validators in the XRPL EVM sidechain.
6. (Optional) Download a Snapshot
If you want to speed up synchronization, you can use a snapshot. See the Snapshots page for details. For example:
sudo apt-get install wget lz4 -y cd $HOME/.exrpd wget https://evm-sidechain-snapshots-devnet.s3.amazonaws.com/exrpd.tar.lz4 tar -xI lz4 -f exrpd.tar.lz4
7. Start the Node
exrpd start
Watch the logs to ensure your node syncs with the Devnet. If everything is correct, you should see blocks being processed.
Sync the Node
After your node is configured and started, you need to let it synchronize with the network. There are several methods to bring your node up to the current block height, each balancing speed, resource usage, and historical data retention. Common sync approaches include:
- Sync from Genesis: Start from block 0 and replay all transactions (slowest, but fully trustless).
- Snapshot: Download a pre-generated snapshot of the chain state for faster setup.
- State Sync: Leverage CometBFT’s state sync feature to bootstrap the node from recent application state.
For detailed instructions and best practices on each approach, see the Sync Options page.
Validate the Setup
- Run
exrpd status
or check logs to confirm synchronization progress. - Explore Interacting With the node CLI for more commands.
Next Steps
Once your node is fully synced, you can:
- Upgrade your node when new releases are available.
- Customize your node’s behavior in Node configuration options.