ipfs / ipfs/kubo

🗿 Kubo in an IPv6 only world 🥚

Open
#10,000 7 comments 5 reactions 0 assignees View on GitHub
epic kind/tracking P3
Dominant language
Go
Stars
17.1k
Forks
3.2k
Avg merge
3d 18h
Merged PRs (30d)
11

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:
- [ ] https://github.com/ipfs/kubo/issues/9637
- [ ] https://github.com/ipfs/kubo/issues/9397
- [ ] https://github.com/ipfs/kubo/issues/9891
- [ ] https://github.com/ipfs/kubo/issues/5905
- [ ] https://github.com/ipfs/kubo/issues/9397
- [ ] https://github.com/ipfs/kubo/issues/9891
- [ ] https://github.com/ipfs/kubo/issues/8979
- [ ] https://github.com/ipfs/kubo/issues/7786
- [ ] Find out a good way to do P2P networking over statefull ipv6 firewalls
- [ ] https://github.com/libp2p/go-libp2p/issues/2068
- [ ] https://github.com/libp2p/go-libp2p/issues/2496
- [ ] 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.
- [x] https://github.com/ipfs/kubo/issues/10076
- [ ] https://github.com/libp2p/go-libp2p/issues/2466
- [ ] https://github.com/ipfs/kubo/issues/7168
- [ ] https://github.com/ipfs/kubo/issues/10075
- [x] https://github.com/ipni/storetheindex/issues/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.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.