# Join Mainnet
This document outlines the steps to join an existing testnet
# Pre-requisite Readings
You need to set the genesis file and seeds. If you need more information about past networks, check our mainnet repo (opens new window). The table below gives an overview of all Mainnet Chain IDs. Note that, the displayed version might differ when an active Software Upgrade proposal exists on chain.
| ||Evmos Mainnet 2||Evmos (opens new window)|| |
| ||Evmos Mainnet 1||Evmos (opens new window)|| |
IMPORTANT: If you join mainnet as a validator make sure you follow all the security recommendations!
Follow the installation document to install the Evmos binary
Make sure you have the right version of
# Save Chain ID
We recommend saving the mainnet
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
mainnet (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
mainnet (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 Mainnet Validator
For more details on how to run your validator, follow the validator these instructions.
🚨 DANGER: Never create your validator keys using a
test keying backend. Doing so might result in a loss of funds by making your funds remotely accessible via the
eth_sendTransaction JSON-RPC endpoint.
# Start mainnet
The final step is to start the nodes. Once enough voting power (+2/3) from the genesis validators is up-and-running, the node will start producing blocks.
# 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