fix(iroh): Use valid available IPv6 address, ignoring have_ipv6
#3419
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
Sometimes net_report says
udp_v6: false
, even though I can clearly send and receive to/from the other iroh endpoint I want to talk to.Here are some logs from that situation:
Now, the
udp_v6: false
value originally comes fromnetwatch
'sInterfaceState
, as it sees my (what is now and probably was at the time fe80-prefixed) link-local address and characterizes it as "not reachable from the public internet".But this PR instead ignores that value iff we have any
UdpSendAddr::Valid
, since that would mean it's an address that we've successfully sent and received from with the particular peer we care about.Change checklist