-
Notifications
You must be signed in to change notification settings - Fork 5
Open
Description
Extracted from #4, originally reported by @aschmahmann:
AFAICT [this connectivity check (subscribing for
EvtLocalReachabilityChanged
intonetwork.ReachabilityPublic
)] does not work due to a mismatch between the ObsAddrManager and EvtLocalReachabilityChanged as emitted by autonat:
- https://github.com/libp2p/go-libp2p/blob/362e5836f1468aa7f158d5da157c0e99da334d06/p2p/host/autonat/autonat.go#L321-L323 (even a single observation will result in switching to knowing we're public)
- https://github.com/libp2p/go-libp2p/blob/362e5836f1468aa7f158d5da157c0e99da334d06/p2p/protocol/identify/obsaddr.go#L17-L22 (4 address observations are needed to discover a new address)
- But.... we have a public IPv6 address which we can learn about quickly from the OS even though it's not reachable
- So we end up learning we are "public" and having our only public address being an IPv6 one that actually isn't public
This seems like a bug we'd ideally fix within go-libp2p, but maybe I'm missing something
cc @sukunrt @MarcoPolo
Metadata
Metadata
Assignees
Labels
No labels