Skip to content

Add ENR fields to execution clients page - #838

Merged
barnabasbusa merged 1 commit into
masterfrom
bbusa/el-enr-fields
Aug 19, 2026
Merged

Add ENR fields to execution clients page#838
barnabasbusa merged 1 commit into
masterfrom
bbusa/el-enr-fields

Conversation

@barnabasbusa

Copy link
Copy Markdown
Collaborator

Summary

Surfaces the enr field already returned by admin_nodeInfo / admin_peers on the execution clients page, mirroring the ENR display on the consensus clients page:

  • Node identity: new ENR row (with copy button) plus an "ENR fields" section listing the decoded key/value pairs (seq, ip, tcp, udp, eth, etc.).
  • Connected peers: each peer's detail table shows its ENR and decoded fields when the client reports one.

Details

  • ENRs are decoded with the existing utils.DecodeENR / utils.GetKeyValuesFromENR helpers into a sorted key/value list, cached per unique ENR string.
  • Only strings starting with enr: are decoded — some clients report an enode URL in the enr field for peers without a signed record.
  • Like the CL page, ENR data is only included server-side when ShowSensitivePeerInfos is enabled (ENRs contain IPs), and the template only renders the rows when an ENR is actually present.

Client support (verified on glamsterdam-devnet-8)

Client own ENR (admin_nodeInfo) peer ENRs (admin_peers)
geth partial
erigon partial
besu
nethermind
reth
ethrex
nimbus-el

All clients expose their own ENR, so the node identity section populates everywhere; per-peer ENRs currently only show up on geth/erigon (and only for peers found via discovery). Clients without ENR data render unchanged.

Surface the enr field already returned by admin_nodeInfo / admin_peers on
the EL clients page, mirroring the CL page: the node identity section gets
an ENR row plus a decoded "ENR fields" list, and each connected peer's
details show its ENR and decoded fields when the client reports one.

Only strings starting with "enr:" are decoded (some clients report an
enode URL in that field), and like the CL page the data is only included
when ShowSensitivePeerInfos is enabled.
@barnabasbusa
barnabasbusa enabled auto-merge August 19, 2026 08:25
@barnabasbusa
barnabasbusa merged commit 6d65fcf into master Aug 19, 2026
2 checks passed
@barnabasbusa
barnabasbusa deleted the bbusa/el-enr-fields branch August 19, 2026 08:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants