This guide explains Bitcoin Core getnodeaddresses RPC in plain English. It shows what the command does, what its result means and what it cannot prove.
TL;DR
- What it is: Bitcoin Core 0.18.0 getnodeaddresses returned known endpoints that might help another process find peers. The optional count defaulted to one and was limited to the smaller of 2,500 or 23 per cent of all known addresses.
- Why it matters: getnodeaddresses exposes a bounded sample of local peer-discovery memory. It can seed connections, but every endpoint, timestamp and service claim still needs independent network validation.
- Current position: Require a second reviewer and explicit rollback or expiry, and pause payments, signing or network-dependent services until post-change evidence is complete.
Bitcoin Core getnodeaddresses RPC in simple English
Bitcoin Core getnodeaddresses RPC: Use the RPC as a local alternative input to peer discovery, not as an authoritative network directory. Address-manager contents reflect this node’s history, policy and possible attacker influence.
Simple example
A miner is checking Bitcoin Core getnodeaddresses RPC. Decode against the historical protocol version and verify capabilities after connection rather than trusting the record. Core caps results at min(2500, 23 per cent of known entries), limiting bulk topology extraction.
Key terms in plain English
- Bitcoin Core:
- Widely used software that validates Bitcoin and can provide wallet, network and operator tools.
- RPC:
- A command that software sends to a node to request information or a local action.
- Node:
- A computer running Bitcoin software that checks data and communicates with other peers.
Purpose
Use the RPC as a local alternative input to peer discovery, not as an authoritative network directory. Address-manager contents reflect this node’s history, policy and possible attacker influence.
Count cap
Validate a non-negative requested count and expect fewer rows. Core caps results at min(2500, 23 per cent of known entries), limiting bulk topology extraction.
Timestamps
time is Unix epoch seconds for when the node was last seen. It is not a proof of freshness, successful connection or honest clock and must be sanity-bounded.
Services
The numeric service field is a bit mask of advertised capabilities. Decode against the historical protocol version and verify capabilities after connection rather than trusting the record.
Address and port
Treat endpoints as untrusted network input. Parse address family and port, prevent injection into shells or logs and apply egress and private-range policy.
Privacy and diversity
Repeated large samples can expose local topology. Restrict callers and avoid public dumps. Bootstrap selection should favour network, ASN and transport diversity rather than only recent timestamps.
How specialists test it
Operators test the command on a non-production node first. They check a normal reply, an invalid request, a timeout and a restart. This shows what the response means and prevents one local result from being mistaken for a network-wide outcome.
Frequently asked questions
What is the main point of Bitcoin Core getnodeaddresses RPC?
Bitcoin Core getnodeaddresses RPC: Use the RPC as a local alternative input to peer discovery, not as an authoritative network directory.
For Bitcoin Core getnodeaddresses RPC, what should a beginner know about purpose?
Use the RPC as a local alternative input to peer discovery, not as an authoritative network directory.
For Bitcoin Core getnodeaddresses RPC, what should a beginner know about count cap?
Validate a non-negative requested count and expect fewer rows. Core caps results at min(2500, 23 per cent of known entries), limiting bulk topology extraction.
For Bitcoin Core getnodeaddresses RPC, what should a beginner know about timestamps?
time is Unix epoch seconds for when the node was last seen.
Conclusion
getnodeaddresses exposes a bounded sample of local peer-discovery memory. It can seed connections, but every endpoint, timestamp and service claim still needs independent network validation.
Primary sources
Check the current specification status and the documentation for the exact implementation you operate before moving production funds or changing a mining node.
Join the ASIC Mining Discussion
Members can read and join the discussion
Log in to read comments from other miners. Create a free account if you would like to ask a question or share your experience.
Membership helps us protect the discussion from spam and keep answers useful.