Skip to content

Add discovery address prober for trusted-peer reachability metrics - #27124

Merged
aschran merged 2 commits into
mainfrom
aschran/discovery-address-prober
Jul 14, 2026
Merged

aschran merged 2 commits into
mainfrom
aschran/discovery-address-prober

Conversation

@aschran

@aschran aschran commented Jul 1, 2026 •

Copy link
Copy Markdown
Contributor

Description

Validators have no signal today when a peer advertises an unreachable address (e.g. a wrong external address gossiped via discovery), which silently degrades connectivity. This adds a prober that runs on validators and periodically checks whether each trusted peer's advertised P2P and consensus addresses are actually reachable, exposing the results as Prometheus metrics plus an admin endpoint that dumps full per-address detail for operators to act on.

Bumps anemo to MystenLabs/anemo#75 for the non-disruptive Network::probe_address the P2P check uses.

Test plan

New discovery_tests sim tests cover the core differential (a validator's real address probes reachable, its bad gossiped address does not), plus no-false-positives and reconfiguration cleanup cases.


Release notes

Check each box that your changes affect. If none of the boxes relate to your changes, release notes aren't required.

For each box you select, include information after the relevant heading that describes the impact of your changes that a user might notice and any actions they must take to implement updates.

  • Protocol:
  • Nodes (Validators and Full nodes):
  • gRPC:
  • JSON-RPC:
  • GraphQL:
  • CLI:
  • Rust SDK:
  • Indexing Framework:

@aschran
aschran temporarily deployed to sui-typescript-aws-kms-test-env July 1, 2026 20:12 — with GitHub Actions Inactive
@vercel

vercel Bot commented Jul 1, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
sui-docs Ready Ready Preview, Comment Jul 14, 2026 7:58pm
2 Skipped Deployments
Project Deployment Actions Updated (UTC)
multisig-toolkit Ignored Ignored Preview Jul 14, 2026 7:58pm
sui-kiosk Ignored Ignored Preview Jul 14, 2026 7:58pm

Request Review

@aschran
aschran requested a review from mystenmark July 1, 2026 20:19
@aschran
aschran marked this pull request as ready for review July 1, 2026 20:19
@aschran
aschran requested a review from a team as a code owner July 1, 2026 20:19
@aschran
aschran temporarily deployed to sui-typescript-aws-kms-test-env July 1, 2026 20:19 — with GitHub Actions Inactive
Comment thread crates/sui-node/src/lib.rs Outdated
};

if let Some(prober_config) = &config.address_prober {
prober_config.validate()?;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should validation failure exit this entire function?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes it was intentional to crash the process if it's started with an invalid config, but will move this somewhere more sensible

@aschran
aschran temporarily deployed to sui-typescript-aws-kms-test-env July 14, 2026 19:56 — with GitHub Actions Inactive
@aschran
aschran enabled auto-merge (squash) July 14, 2026 19:56
@aschran
aschran merged commit db9c6bd into main Jul 14, 2026
63 checks passed
@aschran
aschran deleted the aschran/discovery-address-prober branch July 14, 2026 20:30

This branch was successfully deployed

1 active and 1 inactive deployments
Preview – sui-docs — 64c74695 Deployed Jul 14, 2026 by vercel[bot]
sui-typescript-aws-kms-test-env — 64c74695 Deployed Jul 14, 2026 by aschran via Lint, Build, and Test #87834
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