Sponsor 55: Improving the Tor network’s IPv6 support
Objective: Increase the number of Tor network relays that support IPv6.
By the numbers, about 29% of Tor’s relay bandwidth supports IPv6--but functionally, only 20% of Tor’s available bandwidth supports IPv6. This is because some Guard relays are also Exit relays, and as such, they are only used as Exits by Tor clients. These limitations mean that even if an Exit relay supports IPv6, it doesn’t functionally increase the Tor network’s client to Guard IPv6 bandwidth.
In order to better support IPv6, we aim to increase the client to Guard relay bandwidth that supports IPv6 to 33%. Reaching this goal (and completing this project) is the first step in a longer-term effort to implement “fast fallback,” which will make sure that Tor clients first try IPv4 and then try IPv6 after a short delay, using whichever option works.
To increase the functional relay bandwidth that supports IPv6, we need to improve the way we handle configuration for dual stack Tor relays (relays that support both IPv4 and IPv6). As it stands, dual stack relays require some manual configuration, which can be a setup barrier for relay operators. Automating relay IPv6 address discovery and reachability checks will help operators to run more dual stack relays more easily and, over time, increase the number of relays that support IPv6.
- O1.1 Propose and implement IPv6 ORPort reachability checks on relays
- O1.2 Make relays figure out their own IPv6 address
- O1.3 Integration test Tor relays over IPv6 using chutney
- O1.4 Measure the number of Tor relays that support IPv6 reachability checks
- O1.5 Measure the number of connections, and consumed bandwidth, using IPv4 and IPv6