go-libp2p
go-libp2p copied to clipboard
introduce a proper address pipeline
We need to get a lot smarter about address management. Wrapping / replacing addresses via the AddrsFactory doesn't scale.
I'm imagining a new service that's responsible for the entire process of address management.
- It ingests in new "address candidates" from various sources: user provided address hints, transports claiming to listen on certain addresses, Identify, relay service etc.
- It verifies these addresses using AutoNAT v2.
- It groups and categorizes these addresses (public / private / relayed).
- It provides interfaces to make these different categories of addresses available to consumers.
Updated(@sukunrt): Using this issue for tracking:
- [x] #2422
Tasks
- [x] https://github.com/libp2p/go-libp2p/pull/3071
- [x] #3075
- [x] https://github.com/libp2p/go-libp2p/pull/3231
We need something like #2293 to test this.