-
Notifications
You must be signed in to change notification settings - Fork 344
fix: allow hp to continue after interface change #3894
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
Arqu
wants to merge
8
commits into
main
Choose a base branch
from
arqu/debugging_hp
base: main
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.
+234
−60
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
|
Documentation for this PR has been generated and is available at: https://n0-computer.github.io/iroh/pr/3894/docs/iroh/ Last updated: 2026-01-28T15:06:43Z |
42aee5d to
51b7c66
Compare
51b7c66 to
8b8abc6
Compare
When path validation fails (e.g., after interface down/up), schedule a holepunch retry after 500ms instead of just closing the path. This handles cases where routing isn't fully established yet.
fad33b6 to
da9fad3
Compare
When an interface comes back up, immediately update local_direct_addrs with addresses from netmon instead of waiting for net_report to complete. This fixes holepunch recovery after interface down/up because: - netmon knows the correct addresses immediately after interface up - QAD probes can timeout (3s) during interface transitions - Without this fix, holepunching uses stale/loopback addresses - Connection times out before net_report discovers real addresses Also ensures holepunch retry is triggered even for paths not tracked in iroh's path map (those opened by initiate_nat_traversal_round).
…lure Start at 500ms, double on each failure, cap at 5s. Reset on network change or successful path validation. Prevents path exhaustion when network isn't immediately routable after interface changes.
Contributor
|
Please write a description with explanations of what's being changed and why. ❤️ |
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.
Description
Breaking Changes
Notes & open questions
Change checklist
quic-rpciroh-gossipiroh-blobsdumbpipesendme