-
Notifications
You must be signed in to change notification settings - Fork 77
feat(node): remove external address manager #3266
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
RolandSherwin
wants to merge
11
commits into
maidsafe:reachability
Choose a base branch
from
RolandSherwin:remove_external_addr_manager
base: reachability
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
feat(node): remove external address manager #3266
RolandSherwin
wants to merge
11
commits into
maidsafe:reachability
from
RolandSherwin:remove_external_addr_manager
+53
−2,204
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This commit systematically removes libp2p relay functionality from the Autonomi network, transitioning to a network architecture that relies solely on direct QUIC connections and UPnP for NAT traversal. Changes include: - Remove "relay" feature from libp2p dependencies in Cargo.toml - Remove relay_client field from NetworkConfig and NodeBuilder - Simplify transport layer to use only QUIC (remove relay transport) - Remove relay behaviors (relay_client, relay_server) from NodeBehaviour - Remove RelayManager and connected_relay_clients from SwarmDriver - Remove all relay event handling from swarm events - Remove relay-specific metrics and monitoring - Delete relay_manager.rs and relay_client.rs metrics files - Remove relay CLI options and Python bindings - Update UPnP to be enabled by default for non-local nodes - Remove relay peer tracking and related statistics - Simplify identify event handling to remove relay address crafting This is a breaking change that simplifies the codebase and improves direct peer-to-peer communication by removing relay bottlenecks. Nodes behind restrictive NATs will need to rely on UPnP for connectivity. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- This is a non-breaking change as the NodeRegistry is unaffected
We want to know whether the node is properly being set to server mode. If it is not, the node does not function as a KAD node, and this led to problems in the `2025.7.1.1`/`2025.7.1.3` releases.
Not doing this means the node will not behave as a KAD node. Previously we were getting this behaviour from the external address manager, which has since been removed.
| } | ||
|
|
||
| /// The shared recorders that are used to record metrics. | ||
| #[allow(dead_code)] // TODO: Remove this once we have removed all the deprecated metrics related to relay. |
Check notice
Code scanning / devskim
A "TODO" or similar was left in source code, possibly indicating incomplete functionality Note
Suspicious comment
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Ontop of #3264
ExternalAddressManageras it is flawed and allowed a node to set multiple external addresses when it's port was rotating (as with symmetric nats).