Publish the two bootnodes; run-node.sh works with zero arguments now
Founder approved publishing the network entry points. Both are public read hosts outside the validator set, so their downtime cannot cost consensus, and their addresses were already public through the services they serve. One runs Besu and one runs Nethermind, so a new node's first two peers are two independent implementations. run-node.sh uses both by default; --bootnode still overrides. The mail path stays as fallback for the day both are down. This closes the last gap between "one command plus an email" and one command.
This commit is contained in:
parent
44dbc1bc06
commit
184ec23cd4
@ -49,7 +49,7 @@ audit each step rather than run it.
|
|||||||
|---|---|
|
|---|---|
|
||||||
| `genesis.json` | The genesis file, byte for byte as it sits on the Foundation nodes. sha256 `361709dccec4e9fc85be5aec33b30b58a55dc53424087d84c1ad11bd1d944c24` (of the published file with LF line endings, exactly as `curl` fetches it; a Windows checkout that converts line endings will hash differently) |
|
| `genesis.json` | The genesis file, byte for byte as it sits on the Foundation nodes. sha256 `361709dccec4e9fc85be5aec33b30b58a55dc53424087d84c1ad11bd1d944c24` (of the published file with LF line endings, exactly as `curl` fetches it; a Windows checkout that converts line endings will hash differently) |
|
||||||
| `registries/` | The public Falcon validator registries. Without them a node imports fine to block 13,014,000 (the first anchor) and then refuses every anchor block, because it cannot map a certificate's seal indices to validator addresses. See `registries/README.md`; sha256 of each below. |
|
| `registries/` | The public Falcon validator registries. Without them a node imports fine to block 13,014,000 (the first anchor) and then refuses every anchor block, because it cannot map a certificate's seal indices to validator addresses. See `registries/README.md`; sha256 of each below. |
|
||||||
| a bootnode enode | requested by mail for now; see the bootnodes section below |
|
| a bootnode enode | two published in the bootnodes section below; run-node.sh uses them by default |
|
||||||
| `patches/`, `precompiles/` | The Besu fork, see `README.md`. Needed to sync past block 9,189,161 |
|
| `patches/`, `precompiles/` | The Besu fork, see `README.md`. Needed to sync past block 9,189,161 |
|
||||||
|
|
||||||
The registries are public (Falcon public keys and validator addresses, each carrying a proof of
|
The registries are public (Falcon public keys and validator addresses, each carrying a proof of
|
||||||
@ -219,13 +219,19 @@ besu \
|
|||||||
--min-gas-price=0
|
--min-gas-price=0
|
||||||
```
|
```
|
||||||
|
|
||||||
Bootnodes are deliberately NOT published in this repository yet. The network entry points
|
Two bootnodes are published here since 2026-08-25. Both are public read hosts that are NOT in
|
||||||
available today are consensus or origin hosts, and this project does not print the addresses
|
the validator set, so taking them down cannot cost the network consensus; their addresses were
|
||||||
of its own machines in public documents; a dedicated public bootnode, on a host that serves
|
already public through the services they serve. The first runs Besu, the second runs Nethermind,
|
||||||
nothing else, is the planned replacement, and this paragraph will then carry its enode. Until
|
so your first two peers are also two independent implementations:
|
||||||
then, write to office@aere.network with the subject "bootnode" and you will receive a current
|
|
||||||
enode by return. Everything else on this page works without one; discovery is the only step
|
```
|
||||||
that needs it.
|
enode://7e8ff740b79bf28a6d7e46ea8d2317cea4a223e7af60be36e91e13dc7051f4cb29077631452e699a5e18e640a94fd6e370e9e51dd91ecba1f2ba9666e07ff01b@37.27.216.110:30303
|
||||||
|
enode://a4b90d4f5fc7758814d41acfe00f6a2516683f3d3052410091b894d014dbb2184d6158da76f72e84ca268c2ccde3590d5686f978868f3b6ad6af87e398179fb8@157.180.67.185:30303
|
||||||
|
```
|
||||||
|
|
||||||
|
`run-node.sh` uses both by default when `--bootnode` is not given. A written address is not a
|
||||||
|
live address: only your own `net_peerCount` proves they are up. If both are unreachable, write
|
||||||
|
to office@aere.network with the subject "bootnode" for a current enode by return.
|
||||||
|
|
||||||
`--sync-mode=FULL` is deliberate. Chain 2800 runs QBFT with a half second block period, so the head
|
`--sync-mode=FULL` is deliberate. Chain 2800 runs QBFT with a half second block period, so the head
|
||||||
was about 12.2 million blocks when this was written (2026-08-03), passed 14.6 million on 2026-08-19,
|
was about 12.2 million blocks when this was written (2026-08-03), passed 14.6 million on 2026-08-19,
|
||||||
|
|||||||
12
run-node.sh
12
run-node.sh
@ -15,10 +15,10 @@
|
|||||||
# Re-running it does not rebuild what is already built or re-apply patches already applied.
|
# Re-running it does not rebuild what is already built or re-apply patches already applied.
|
||||||
#
|
#
|
||||||
# Usage:
|
# Usage:
|
||||||
# ./run-node.sh --bootnode <enode://...@host:port> [options]
|
# ./run-node.sh [options] (the two published bootnodes are used unless --bootnode is given)
|
||||||
#
|
#
|
||||||
# Options:
|
# Options:
|
||||||
# --bootnode <enode> Peer to dial for discovery. Required to actually sync (see "Bootnode" below).
|
# --bootnode <enode> Override the published bootnodes with your own peer for discovery.
|
||||||
# --data-path <dir> Node data directory. Default: ./aere-data next to this script.
|
# --data-path <dir> Node data directory. Default: ./aere-data next to this script.
|
||||||
# --build-dir <dir> Where upstream Besu is cloned and built. Default: ./.besu-build next to this script.
|
# --build-dir <dir> Where upstream Besu is cloned and built. Default: ./.besu-build next to this script.
|
||||||
# --p2p-port <n> P2P (TCP+UDP) port. Default: 30303.
|
# --p2p-port <n> P2P (TCP+UDP) port. Default: 30303.
|
||||||
@ -207,10 +207,10 @@ fi
|
|||||||
# --- 6. start ----------------------------------------------------------------------------------
|
# --- 6. start ----------------------------------------------------------------------------------
|
||||||
say "6/6 Starting the node"
|
say "6/6 Starting the node"
|
||||||
if [ -z "$BOOTNODE" ]; then
|
if [ -z "$BOOTNODE" ]; then
|
||||||
die "no --bootnode given. A node with no peers cannot sync.
|
# The two published bootnodes (RUN-A-NODE.md, bootnodes section): both public read hosts,
|
||||||
Chain 2800 does not publish a public bootnode in this repository yet. Request a current enode by
|
# neither in the validator set, one Besu and one Nethermind. --bootnode overrides them.
|
||||||
mail (office@aere.network, subject \"bootnode\") and re-run with:
|
BOOTNODE="enode://7e8ff740b79bf28a6d7e46ea8d2317cea4a223e7af60be36e91e13dc7051f4cb29077631452e699a5e18e640a94fd6e370e9e51dd91ecba1f2ba9666e07ff01b@37.27.216.110:30303,enode://a4b90d4f5fc7758814d41acfe00f6a2516683f3d3052410091b894d014dbb2184d6158da76f72e84ca268c2ccde3590d5686f978868f3b6ad6af87e398179fb8@157.180.67.185:30303"
|
||||||
./run-node.sh --bootnode <enode://...@host:port>"
|
say " no --bootnode given; using the two published bootnodes from RUN-A-NODE.md"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
mkdir -p "$DATA_PATH"
|
mkdir -p "$DATA_PATH"
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user