# Besu Configuration for Public RPC Nodes (e.g. VMID 2201 besu-rpc-public-1)
# Read-only: account permissioning enabled with empty allowlist so no account
# can submit transactions; contract deployment and eth_sendRawTransaction are blocked.
data-path="/data/besu"
genesis-file="/genesis/genesis.json"

network-id=138
# Placeholder only: node-specific generated configs must advertise the real LAN IP.
# Do not deploy this base template as-is to production public RPC nodes.
p2p-host="0.0.0.0"
p2p-port=30303

sync-mode="FULL"
data-storage-format="FOREST"

rpc-http-enabled=true
rpc-http-host="0.0.0.0"
rpc-http-port=8545
rpc-http-max-active-connections=256
rpc-http-api=["ETH","NET","WEB3"]
rpc-http-cors-origins=["*"]

rpc-ws-enabled=false
rpc-ws-max-active-connections=256

metrics-enabled=true
metrics-port=9545
metrics-host="0.0.0.0"
metrics-push-enabled=false

logging="WARN"

permissions-nodes-config-file-enabled=true
permissions-nodes-config-file="/permissions/permissions-nodes.toml"
# Empty allowlist = no account can send transactions; no contract deployment via this RPC.
permissions-accounts-config-file-enabled=true
permissions-accounts-config-file="/permissions/permissions-accounts-public.toml"

# Transaction Pool

bootnodes=[]

static-nodes-file="/genesis/static-nodes.json"

discovery-enabled=true

# Data Storage (using default paths)

# Gas Configuration


max-peers=40
