Network Overview
Aaron Network is a decentralized platform offering secure messaging and address reputation tools, inspired by Aaron Swartz, to enhance communication and transparency in blockchain.
https://rpc-aaronetwork.sychonix.com
https://api-aaronetwork.sychonix.com
d74b63e82c0d6ee7f97da784dd86ec4f8d805bc3@aaronetwork-mainnet.sychonix.com:12656
PEERS="$(curl -sS https://rpc-aaronetwork.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/.aaronetwork/config/config.toml
curl -L https://snapshot.sychonix.com/mainnet/aaronetwork/genesis.json > $HOME/.aaronetwork/config/genesis.json
curl -L https://snapshot.sychonix.com/mainnet/aaronetwork/addrbook.json > $HOME/.aaronetwork/config/addrbook.json
Installation
- 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
sudo curl https://get.ignite.com/cli | sudo bash
sudo mv ignite /usr/local/bin/
- Install Go
sudo rm -rf /usr/local/go
curl -Ls https://go.dev/dl/go1.23.3.linux-amd64.tar.gz | sudo tar -xzf - -C /usr/local
eval $(echo 'export PATH=$PATH:/usr/local/go/bin' | sudo tee /etc/profile.d/golang.sh)
eval $(echo 'export PATH=$PATH:$HOME/go/bin' | tee -a $HOME/.profile)
- Install Binary
cd $HOME
git clone https://github.com/aaronetwork/aaronetwork-chain.git
cd aaronetwork-chain
git checkout v1.0.0
ignite chain build
- Initialize The Node
aaronetworkd init $MONIKER --chain-id aaronetwork
sed -i -e "s|^node *=.*|node = \"tcp://localhost:12657\"|" $HOME/.aaronetwork/config/client.toml
sed -i -e "s|^keyring-backend *=.*|keyring-backend = \"os\"|" $HOME/.aaronetwork/config/client.toml
sed -i -e "s|^chain-id *=.*|chain-id = \"aaronetwork\"|" $HOME/.aaronetwork/config/client.toml
- Download Genesis & Addrbook
curl -L https://snapshot.sychonix.com/mainnet/aaronetwork/genesis.json > $HOME/.aaronetwork/config/genesis.json
curl -L https://snapshot.sychonix.com/mainnet/aaronetwork/addrbook.json > $HOME/.aaronetwork/config/addrbook.json
- Configure Seeds and Peers
SEEDS="d74b63e82c0d6ee7f97da784dd86ec4f8d805bc3@aaronetwork-mainnet.sychonix.com:12656"
PEERS="$(curl -sS https://rpc-aaronetwork.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/.aaronetwork/config/config.toml
- Update Port Configuration
sed -i -e "s%:1317%:12617%; s%:8080%:12680%; s%:9090%:12690%; s%:9091%:12691%; s%:8545%:12645%; s%:8546%:12646%; s%:6065%:12665%" $HOME/.aaronetwork/config/app.toml
sed -i -e "s%:26658%:12658%; s%:26657%:12657%; s%:6060%:12660%; s%:26656%:12656%; s%:26660%:12661%" $HOME/.aaronetwork/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/.aaronetwork/config/app.toml
- Set Minimum Gas Price, Enable Prometheus, and Disable the Indexer
sed -i -e "s|^minimum-gas-prices *=.*|minimum-gas-prices = \"0uaaron\"|" $HOME/.aaronetwork/config/app.toml
sed -i -e "s/prometheus = false/prometheus = true/" $HOME/.aaronetwork/config/config.toml
sed -i -e "s/^indexer *=.*/indexer = \"null\"/" $HOME/.aaronetwork/config/config.toml
- Create Service File
sudo tee /etc/systemd/system/aaronetworkd.service > /dev/null <<EOF
[Unit]
Description=aaronetwork mainnet node
After=network-online.target
[Service]
User=$USER
ExecStart=$(which aaronetworkd) start
Restart=always
RestartSec=3
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
- Download Current Snapshot
curl "https://snapshot.sychonix.com/mainnet/aaronetwork/aaronetwork-snapshot.tar.lz4" | lz4 -dc - | tar -xf - -C "$HOME/.aaronetwork"
- Enable the Service and Start the Node
sudo systemctl daemon-reload
sudo systemctl enable aaronetworkd.service
sudo systemctl restart aaronetworkd.service && sudo journalctl -u aaronetworkd.service -f --no-hostname -o cat
Upgrade
No chain upgrades scheduled yet.
Peers
PEERS="$(curl -sS https://rpc-aaronetwork.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/.aaronetwork/config/config.toml
Snapshot
Height: Loading... | Last updated: Loading... | Size: Loading...
- Install dependencies, if needed
sudo apt update && sudo apt install aria2
- Stop Service
sudo systemctl stop aaronetworkd
- Back up priv_validator_state.json
cp $HOME/.aaronetwork/data/priv_validator_state.json $HOME/.aaronetwork/priv_validator_state.json.backup
- Reset the data
aaronetworkd tendermint unsafe-reset-all --home $HOME/.aaronetwork --keep-addr-book
- Download Snapshot
aria2c -x 16 -s 16 -o aaronetwork-snapshot.tar.lz4 https://snapshot.sychonix.com/mainnet/aaronetwork/aaronetwork-snapshot.tar.lz4
lz4 -dc aaronetwork-snapshot.tar.lz4 | tar -xf - -C $HOME/.aaronetwork
rm -v aaronetwork-snapshot.tar.lz4
- Restore Backup and Restart Service
mv $HOME/.aaronetwork/priv_validator_state.json.backup $HOME/.aaronetwork/data/priv_validator_state.json
sudo systemctl restart aaronetworkd && sudo journalctl -u aaronetworkd -f -o cat
Addrbook
curl -L https://snapshot.sychonix.com/mainnet/aaronetwork/addrbook.json > $HOME/.aaronetwork/config/addrbook.json
Genesis
curl -L https://snapshot.sychonix.com/mainnet/aaronetwork/genesis.json > $HOME/.aaronetwork/config/genesis.json
API
api-aaronetwork.sychonix.com
RPC
rpc-aaronetwork.sychonix.com
CLI Cheatsheet
Wallet Management
aaronetworkd keys add
aaronetworkd keys add --recover
aaronetworkd keys list
aaronetworkd keys delete
aaronetworkd keys export
aaronetworkd keys import .backup
aaronetworkd q bank balances $(aaronetworkd keys show -a)
Validator Management
Moniker
Identity
Details
Website
Security Contact
Amount
aaronetworkd tx staking create-validator \ --amount=100000uaaron \ --pubkey=$(aaronetworkd tendermint show-validator) \ --moniker="" \ --identity="" \ --details="" \ --website="" \ --security-contact= \ --chain-id=aaronetwork \ --commission-rate=0.05 \ --commission-max-rate=0.20 \ --commission-max-change-rate=0.01 \ --min-self-delegation=1 \ --gas-prices 0uaaron \ --gas "auto" \ --gas-adjustment "1.5" \ --from wallet \ -y
aaronetworkd tx staking edit-validator \
--new-moniker="" \
--identity="" \
--details="" \
--website="" \
--chain-id=aaronetwork \
--commission-rate=0.07 \
--from wallet \
--gas=auto \
--gas-prices 0uaaron \
-y
aaronetworkd tx slashing unjail --from wallet --chain-id aaronetwork --gas auto --gas-adjustment 1.5
aaronetworkd query slashing signing-info $(aaronetworkd tendermint show-validator)
aaronetworkd q staking validator $(aaronetworkd keys show wallet --bech val -a)
aaronetworkd q bank denom-metadata -oj | jq
aaronetworkd status 2>&1 | jq -r '.SyncInfo.catching_up // .sync_info.catching_up'
aaronetworkd status 2>&1 | jq -r '.SyncInfo.latest_block_height // .sync_info.latest_block_height'
Token Management
aaronetworkd tx distribution withdraw-all-rewards --from wallet --chain-id aaronetwork --gas auto --gas-adjustment 1.5 --gas-prices 0uaaron -y
aaronetworkd tx distribution withdraw-rewards $(aaronetworkd keys show wallet --bech val -a) --commission --from wallet --chain-id aaronetwork --gas auto --gas-adjustment 1.5 --gas-prices 0uaaron -y
aaronetworkd tx staking delegate $(aaronetworkd keys show wallet --bech val -a) 100000uaaron --from wallet --chain-id aaronetwork --gas auto --gas-adjustment 1.5 --gas-prices 0uaaron -y
aaronetworkd tx staking redelegate $(aaronetworkd keys show wallet --bech val -a) 100000uaaron --from wallet --chain-id aaronetwork --gas auto --gas-adjustment 1.5 --gas-prices 0uaaron -y
aaronetworkd tx staking delegate 100000uaaron --from --chain-id aaronetwork --gas auto --gas-adjustment 1.5 --gas-prices 0uaaron -y
aaronetworkd tx staking unbond $(aaronetworkd keys show wallet --bech val -a) 100000uaaron --from wallet --chain-id aaronetwork --gas auto --gas-adjustment 1.5 --gas-prices 0uaaron -y
aaronetworkd tx bank send wallet 100000uaaron --from wallet --chain-id aaronetwork --gas auto --gas-adjustment 1.5 --gas-prices 0uaaron -y
Service Management
sudo systemctl daemon-reload
sudo systemctl enable aaronetworkd
sudo systemctl disable aaronetworkd
sudo systemctl start aaronetworkd
sudo systemctl stop aaronetworkd
sudo systemctl restart aaronetworkd
sudo systemctl status aaronetworkd
sudo journalctl -u aaronetworkd -f --no-hostname -o cat
CUSTOM_PORT= sed -i.bak -e "s%^proxy_app = \"tcp://127.0.0.1:26658\"%proxy_app = \"tcp://127.0.0.1:${CUSTOM_PORT}658\"%; s%^laddr = \"tcp://127.0.0.1:26657\"%laddr = \"tcp://127.0.0.1:${CUSTOM_PORT}657\"%; s%^pprof_laddr = \"localhost:6060\"%pprof_laddr = \"localhost:${CUSTOM_PORT}060\"%; s%^laddr = \"tcp://0.0.0.0:26656\"%laddr = \"tcp://0.0.0.0:${CUSTOM_PORT}656\"%; s%^prometheus_listen_addr = \":26660\"%prometheus_listen_addr = \":${CUSTOM_PORT}660\"%" $HOME/.aaronetwork/config/config.toml sed -i.bak -e "s%^address = \"tcp://0.0.0.0:1317\"%address = \"tcp://0.0.0.0:${CUSTOM_PORT}317\"%; s%^address = \":8080\"%address = \":${CUSTOM_PORT}080\"%; s%^address = \"0.0.0.0:9090\"%address = \"0.0.0.0:${CUSTOM_PORT}090\"%; s%^address = \"0.0.0.0:9091\"%address = \"0.0.0.0:${CUSTOM_PORT}091\"%" $HOME/.aaronetwork/config/app.toml
cd $HOME && sudo systemctl stop aaronetworkd && sudo systemctl disable aaronetworkd && sudo rm /etc/systemd/system/aaronetworkd.service && sudo systemctl daemon-reload && sudo rm -rf $(which aaronetworkd) && sudo rm -rf $HOME/.aaronetwork && sudo rm -rf $(which aaronetworkd)