Open
Description
The current state of IPv6 Kubo is not very great, we have some traffic going over IPv6 but Kubo still require an IPv4 connection to work properly (unless you are running a private network and do not expect public network connectivity).
Ideally a Kubo running with access to the IPv6 network exclusively would run at feature parity as a Kubo with IPv6+IPv4.
Todos:
- Start API on both IPv4 and IPv6 #9637
- Enable Gateway on localhost IPv6 (ip4+ip6 by default) #5905
- dns free ipv6 bootstrap nodes? #8979
- add ipv6-only mode #7786
- Find out a good way to do P2P networking over statefull ipv6 firewalls
- Run split DHTs for IPv4 and IPv6
Currently trying to use Kubo with IPv6 networking only leave you with a partial DHT routing table, it mostly works. However it happens frequently that all the 20 final peers are unreachable over IPv6 (due to the statefull nats issue) so your query can't completely to the right part of the keyspace.- Stop running split DHTs routing table for client and server when not using the accelerated DHT client #10076
- autonat: provide different reachability states and callbacks for IPv6 and IPv4 libp2p/go-libp2p#2466
- Support publishing self-records in LAN DHT even when WAN DHT is available. #7168
- the composable routers should be powerfull enough to configure multi-dhts setups and we should drop the adhoc dht dual #10075
-
cid.contact
is not accesible for IPv6 only machines ipni/storetheindex#2136 - Find commun ranges and build LAN dhts using public IPv6 addresses on the same subnet ?
Note: I'm adding an exception to the feature parity, if some data is exclusively hosted on IPv4 nodes, this issue is not interested in working out a way to fetch this data using IPv4 ←→ IPv6 relays. Similarly if some data is exclusively hosted on IPv6 nodes, I am not expecting an IPv4 node to be able to fetch it.