System requirements
| Component | Minimum |
|---|---|
| OS | Linux (Ubuntu 22.04+ or Debian 12+) |
| CPU | Higher clock speed over core count |
| Memory | 64 GB+ |
| Storage | 1 TB+ NVMe SSD (TLC recommended) |
| Network | Stable 24 Mbps+ bandwidth |
During sustained high load, such as startup or extended sync when the node is
far behind, Execution Layer memory usage surges on some hardware. Systems that
meet the listed requirements handle these surges without intervention. If you
observe memory growth,
enable backpressure
to throttle execution to the speed of disk writes.
Snapshot download size
An Arc node bootstraps from a snapshot; syncing from genesis is not supported. Testnet snapshots are approximately 68 GB compressed for the Execution Layer and 16 GB compressed for the Consensus Layer, extracting to roughly 103 GB and 36 GB respectively. On a stable 100 Mbps connection the download takes 10–15 minutes; slower or metered connections can take hours.Required binaries
Every Arc node ships these three components. Install them witharcup
(pre-built binaries), build them from the
arc-node source, or run them in
Docker. See Run an Arc node for the full
walkthrough.
| Binary | Description |
|---|---|
arc-node-execution | Execution Layer client (Reth-based). Executes transactions and serves RPC. |
arc-node-consensus | Consensus Layer client (Malachite-based). Fetches and verifies blocks. |
arc-snapshots | Downloads blockchain snapshots for faster initial sync. |
Versions
| Network | Version |
|---|---|
| Arc Testnet | v0.7.2 |
Network endpoints
Your Consensus Layer connects to relay endpoints to fetch blocks from the network. Specify multiple endpoints for redundancy.| Network | Endpoints |
|---|---|
| Arc Testnet | https://rpc.drpc.testnet.arc.network https://rpc.quicknode.testnet.arc.network https://rpc.blockdaemon.testnet.arc.network |
Exposed ports
| Port | Protocol | Mode | Description |
|---|---|---|---|
| 8545 | HTTP | Both | JSON-RPC API (Execution Layer) |
| 8551 | HTTP | RPC only | Engine API authentication |
| 9001 | HTTP | Both | Prometheus metrics (Execution Layer) |
| 29000 | HTTP | Both | Prometheus metrics (Consensus Layer) |
| 31000 | HTTP | Both | Consensus Layer RPC endpoint |
| Socket path | Purpose |
|---|---|
/run/arc/reth.ipc | ETH RPC (Consensus Layer reads chain state) |
/run/arc/auth.ipc | Engine API (Consensus Layer drives block import) |
Recommended flags for public-facing nodes
If your node is reachable from the public internet, start the Execution Layer with--public-api. This flag hides pending-transaction RPCs (a potential MEV
vector) and warns if --http.api or --ws.api exposes namespaces beyond the
safe set (eth, net, web3, rpc).
Pruning
Both the Execution Layer and Consensus Layer accept the--full flag to enable
pruning. When bootstrapping from a pruned snapshot, --full is required on
the first Execution Layer start to reconcile internal database tables that would
otherwise fail a consistency check. After the initial startup completes, you may
restart without --full if you prefer not to prune.
EL pruning can increase memory usage on constrained machines. If you observe
memory pressure, lower the
backpressure threshold.