# Join a Testnet
This document outlines the steps to join an existing testnet
# Pick a Testnet
You specify the network you want to join by setting the genesis file and seeds. If you need more information about past networks, check our testnets repo (opens new window).
|Testnet Chain ID||Description||Site||Version||Status|
| ||Evmos_9000-4 Testnet||Evmos 9000-4 (opens new window)|| |
| ||Evmos_9000-3 Testnet||Evmos 9000-3 (opens new window)|| |
| ||Olympus Mons Incentivized Testnet||Olympus Mons (opens new window)|| |
| ||Arsia Mons Testnet||Arsia Mons (opens new window)|| |
Follow the installation document to install the Evmos binary
Make sure you have the right version of
# Save Chain ID
We recommend saving the testnet
chain-id into your
client.toml. This will make it so you do not have to manually pass in the
chain-id flag for every CLI command.
See the Official Chain IDs for reference.
# Initialize Node
We need to initialize the node to create all the necessary validator and node configuration files:
Monikers can contain only ASCII characters. Using Unicode characters will render your node unreachable.
By default, the
init command creates your
$HOME) directory with subfolders
config directory, the most important files for configuration are
# Genesis & Seeds
# Copy the Genesis File
genesis.json file from the
archive (opens new window) and copy it over to the
~/.evmosd/config/genesis.json. This is a genesis file with the chain-id and genesis accounts balances.
Then verify the correctness of the genesis configuration file:
# Add Seed Nodes
Your node needs to know how to find peers (opens new window). You'll need to add healthy seed nodes (opens new window) to
testnets (opens new window) repo contains links to some seed nodes.
Edit the file located in
~/.evmosd/config/config.toml and the
seeds to the following:
You can use the following code to get seeds from the repo and add it to your config:
For more information on seeds and peers, you can the Tendermint P2P documentation (opens new window).
# Add Persistent Peers
We can set the
persistent_peers (opens new window) field in
~/.evmosd/config/config.toml to specify peers that your node will maintain persistent connections with. You can retrieve them from the list of
available peers on the
testnets (opens new window) repo.
A list of available persistent peers is also available in the
#find-peers channel in the Evmos Discord (opens new window). You can get a random 10 entries from the
peers.txt file in the
PEERS variable by running the following command:
sed to include them into the configuration. You can also add them manually:
# Run a Testnet Validator
Claim your testnet tEvmos on the faucet using your validator account address and submit your validator account address:
For more details on how to run your validator, follow these instructions.
# Start testnet
The final step is to start the nodes. Once enough voting power (+2/3) from the genesis validators is up-and-running, the testnet will start producing blocks.
# Upgrading Your Node
These instructions are for full nodes that have ran on previous versions of and would like to upgrade to the latest testnet version.
# Reset Data
If the version <new_version> you are upgrading to is not breaking from the previous one, you should not reset the data. If this is the case you can skip to Restart
First, remove the outdated files and reset the data.
Your node is now in a pristine state while keeping the original
config.toml. If you had any sentry nodes or full nodes setup before,
your node will still try to connect to them, but may fail if they haven't also
Make sure that every node has a unique
priv_validator.json. Do not copy the
priv_validator.json from an old node to multiple new nodes. Running two nodes with the same
priv_validator.json will cause you to double sign.
To restart your node, just type:
# Share your Peer
You can share your peer to posting it in the
#find-peers channel in the Evmos Discord (opens new window).
To get your Node ID use
# State Syncing a Node
If you want to join the network using State Sync (quick, but not applicable for archive nodes), check our State Sync (opens new window) page