Network Overview

Gnodi
Gnodi is a Cosmos-based blockchain enabling global trading of real-world assets, like real estate and gold, without relying on traditional banking infrastructure, offering crypto-native solutions.
https://rpc-gnodi.sychonix.comhttps://api-gnodi.sychonix.com21439f7db559794ab83c3b98da359b03a7d06617@gnodi.sychonix.com:12656PEERS="$(curl -sS https://rpc-gnodi.sychonix.com/net_info | jq -r '.result.peers[] | "\(.node_info.id)@\(.remote_ip):\(.node_info.listen_addr)"' | awk -F ':' '{print $1":"$(NF)}' | sed -z 's|\n|,|g;s|.$||')"
sed -i -e "s|^persistent_peers =.|persistent_peers = \"$PEERS\"|" $HOME/.gnodi/config/config.tomlcurl -L https://snapshot.sychonix.com/mainnet/gnodi/genesis.json > $HOME/.gnodi/config/genesis.jsoncurl -L https://snapshot.sychonix.com/mainnet/gnodi/addrbook.json > $HOME/.gnodi/config/addrbook.jsonInstallation
- Install Dependencies
sudo apt update && sudo apt upgrade -y
sudo apt install curl iptables build-essential git wget jq make gcc nano tmux htop nvme-cli pkg-config libssl-dev libleveldb-dev tar clang bsdmainutils ncdu unzip libleveldb-dev aria2 -y- Install Go
VER="1.21.6"
sudo rm -rf /usr/local/go
curl -Ls https://go.dev/dl/go$VER.linux-amd64.tar.gz | sudo tar -xzf - -C /usr/local
echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> $HOME/.bash_profile
source $HOME/.bash_profile
go version- Install Binary
cd $HOME
git clone
cd gnodi
git checkout v2.0.2
make install - Initialize The Node
gnodid init $MONIKER --chain-id gnodi
sed -i -e "s|^keyring-backend *=.*|keyring-backend = \"os\"|" $HOME/.gnodi/config/client.toml
sed -i -e "s|^chain-id *=.*|chain-id = \"gnodi\"|" $HOME/.gnodi/config/client.toml
sed -i -e "s|^node *=.*|node = \"tcp://localhost:12657\"|" $HOME/.gnodi/config/client.toml- Download Genesis & Addrbook
curl -L https://snapshot.sychonix.com/mainnet/gnodi/genesis.json > $HOME/.gnodi/config/genesis.json
curl -L https://snapshot.sychonix.com/mainnet/gnodi/addrbook.json > $HOME/.gnodi/config/addrbook.json- Configure Seeds and Peers
SEEDS="21439f7db559794ab83c3b98da359b03a7d06617@gnodi.sychonix.com:12656"
PEERS="$(curl -sS https://rpc-gnodi.sychonix.com/net_info | jq -r '.result.peers[] | "\(.node_info.id)@\(.remote_ip):\(.node_info.listen_addr)"' | awk -F ':' '{print $1":"$(NF)}' | sed -z 's|\n|,|g;s|.$||')"
sed -i -e "s|^seeds *=.*|seeds = '"$SEEDS"'|; s|^persistent_peers *=.*|persistent_peers = '"$PEERS"'|" $HOME/.gnodi/config/config.toml- Update Port Configuration
sed -i -e "s%:1317%:12017%; s%:8080%:12080%; s%:9090%:12090%; s%:9091%:12091%; s%:8545%:12045%; s%:8546%:12046%; s%:6065%:12065%" $HOME/.gnodi/config/app.toml
sed -i -e "s%:26658%:12658%; s%:26657%:12657%; s%:6060%:12660%; s%:26656%:12656%; s%:26660%:12661%" $HOME/.gnodi/config/config.toml- Customize Pruning
sed -i \
-e 's|^pruning *=.*|pruning = "custom"|' \
-e 's|^pruning-keep-recent *=.*|pruning-keep-recent = "100"|' \
-e 's|^pruning-interval *=.*|pruning-interval = "17"|' \
$HOME/.gnodi/config/app.toml- Set Minimum Gas Price, Enable Prometheus, and Disable the Indexer
sed -i -e "s|^minimum-gas-prices *=.*|minimum-gas-prices = \"0.025uGNOD\"|" $HOME/.gnodi/config/app.toml
sed -i -e "s/prometheus = false/prometheus = true/" $HOME/.gnodi/config/config.toml
sed -i -e "s/^indexer *=.*/indexer = \"null\"/" $HOME/.gnodi/config/config.toml- Create Service File
sudo tee /etc/systemd/system/gnodid.service > /dev/null <<EOF
[Unit]
Description=gnodi node service
After=network-online.target
[Service]
User=$USER
ExecStart=$(which gnodid) start
Restart=always
RestartSec=3
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF- Download Current Snapshot
curl "https://snapshot.sychonix.com/mainnet/gnodi/gnodi-snapshot.tar.lz4" | lz4 -dc - | tar -xf - -C "$HOME/.gnodi"- Enable the Service and Start the Node
sudo systemctl daemon-reload
sudo systemctl enable gnodid.service
sudo systemctl restart gnodid.service && sudo journalctl -u gnodid.service -f --no-hostname -o cat- Create Validator
gnodid tendermint show-validatorsudo nano $HOME/.gnodi/validator.json- Create validator.json file
{
"pubkey": {"#pubkey"},
"amount": "",
"moniker": "",
"identity": "",
"website": "",
"security": "",
"details": "",
"commission-rate": "0.05",
"commission-max-rate": "0.2",
"commission-max-change-rate": "0.05",
"min-self-delegation": "1"
}gnodid tx staking create-validator $HOME/.gnodi/validator.json \
--from=wallet \
--chain-id=gnodi \
--gas-adjustment 1.5 \
--gas-prices 0.025uGNOD \
--gas autoUpgrade
No chain upgrades scheduled yet.
Peers
PEERS="$(curl -sS https://rpc-gnodi.sychonix.com/net_info | jq -r '.result.peers[] | "\(.node_info.id)@\(.remote_ip):\(.node_info.listen_addr)"' | awk -F ':' '{print $1":"$(NF)}' | sed -z 's|\n|,|g;s|.$||')"
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.gnodi/config/config.tomlSnapshot
Height: Loading... | Last updated: Loading... | Size: Loading...
- Install dependencies, if needed
sudo apt update && sudo apt install aria2- Stop Service
sudo systemctl stop gnodid- Back up priv_validator_state.json
cp $HOME/.gnodi/data/priv_validator_state.json $HOME/.gnodi/priv_validator_state.json.backup- Reset the data
gnodid tendermint unsafe-reset-all --home $HOME/.gnodi --keep-addr-book- Download Snapshot
aria2c -x 16 -s 16 -o gnodi-snapshot.tar.lz4 https://snapshot.sychonix.com/mainnet/gnodi/gnodi-snapshot.tar.lz4
lz4 -dc gnodi-snapshot.tar.lz4 | tar -xf - -C $HOME/.gnodi
rm -v gnodi-snapshot.tar.lz4- Restore Backup and Restart Service
mv $HOME/.gnodi/priv_validator_state.json.backup $HOME/.gnodi/data/priv_validator_state.jsonsudo systemctl restart gnodid && sudo journalctl -u gnodid -f -o catAddrbook
curl -L https://snapshot.sychonix.com/mainnet/gnodi/addrbook.json > $HOME/.gnodi/config/addrbook.jsonGenesis
curl -L https://snapshot.sychonix.com/mainnet/gnodi/genesis.json > $HOME/.gnodi/config/genesis.jsonAPI
https://api-gnodi.sychonix.comRPC
https://rpc-gnodi.sychonix.comCLI Cheatsheet
Wallet Management
gnodid keys add
gnodid keys add --recover
gnodid keys list
gnodid keys delete
gnodid keys export
gnodid keys import .backup
gnodid q bank balances $(gnodid keys show -a)
Validator Management
Moniker
Identity
Details
Website
Security Contact
Amount
gnodid tx staking create-validator \ --amount=1000000uGNOD \ --pubkey=$(gnodid tendermint show-validator) \ --moniker="" \ --identity="" \ --details="" \ --website="" \ --security-contact= \ --chain-id=gnodi \ --commission-rate=0.05 \ --commission-max-rate=0.20 \ --commission-max-change-rate=0.01 \ --min-self-delegation=1 \ --gas-prices 0.025uGNOD \ --gas "auto" \ --gas-adjustment "1.5" \ --from wallet \ -y
gnodid tx staking edit-validator \
--new-moniker="" \
--identity="" \
--details="" \
--website="" \
--chain-id=gnodi \
--commission-rate=0.07 \
--from wallet \
--gas=auto \
--gas-prices 0.025uGNOD \
-ygnodid tx slashing unjail --from wallet --chain-id gnodi --gas auto --gas-adjustment 1.5
gnodid query slashing signing-info $(gnodid tendermint show-validator)
gnodid q staking validator $(gnodid keys show wallet --bech val -a)
gnodid q bank denom-metadata -oj | jq
gnodid status 2>&1 | jq -r '.SyncInfo.catching_up // .sync_info.catching_up'
gnodid status 2>&1 | jq -r '.SyncInfo.latest_block_height // .sync_info.latest_block_height'
Token Management
gnodid tx distribution withdraw-all-rewards --from wallet --chain-id gnodi --gas auto --gas-adjustment 1.5 --gas-prices 0.025uGNOD -y
gnodid tx distribution withdraw-rewards $(gnodid keys show wallet --bech val -a) --commission --from wallet --chain-id gnodi --gas auto --gas-adjustment 1.5 --gas-prices 0.025uGNOD -y
gnodid tx staking delegate $(gnodid keys show wallet --bech val -a) 1000000uGNOD --from wallet --chain-id gnodi --gas auto --gas-adjustment 1.5 --gas-prices 0.025uGNOD -y
gnodid tx staking redelegate $(gnodid keys show wallet --bech val -a) 1000000uGNOD --from wallet --chain-id gnodi --gas auto --gas-adjustment 1.5 --gas-prices 0.025uGNOD -y
gnodid tx staking delegate 1000000uGNOD --from --chain-id gnodi --gas auto --gas-adjustment 1.5 --gas-prices 0.025uGNOD -y
gnodid tx staking unbond $(gnodid keys show wallet --bech val -a) 1000000uGNOD --from wallet --chain-id gnodi --gas auto --gas-adjustment 1.5 --gas-prices 0.025uGNOD -y
gnodid tx bank send wallet 1000000uGNOD --from wallet --chain-id gnodi --gas auto --gas-adjustment 1.5 --gas-prices 0.025uGNOD -y
Service Management
sudo systemctl daemon-reload
sudo systemctl enable gnodid
sudo systemctl disable gnodid
sudo systemctl start gnodid
sudo systemctl stop gnodid
sudo systemctl restart gnodid
sudo systemctl status gnodid
sudo journalctl -u gnodid -f --no-hostname -o cat
cd $HOME && sudo systemctl stop gnodid && sudo systemctl disable gnodid && sudo rm /etc/systemd/system/gnodid.service && sudo systemctl daemon-reload && sudo rm -rf $(which gnodid) && sudo rm -rf $HOME/.gnodi && sudo rm -rf $(which gnodid)
