Tor currently defaults to avoiding IPv6 directories and ORPorts.
When #8374 (moved) and #4483 (moved) are implemented, we should change this default, especially for those clients that can bootstrap successfully over IPv6.
I suggest we add an "auto" option, and make it the default. It would mean that the client uses whichever IP version it bootstrapped over.
ClientUseIPv6 0ClientPreferIPv6ORPort 0
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Child items 0
Show closed items
No child items are currently assigned. Use child items to break down this issue into smaller parts.
Linked items 0
Link issues together to show that they're related.
Learn more.
See #17835 (moved) for details of how we could automatically determine a preferred IP version.
This ticket could implement a IPv6 autodetection scheme based on #17835 (moved):
Set ClientUseIPv4 to 1 (for backwards-compatibility) and ClientUseIPv6 to auto by default.
If the client has any non-localhost, non-link-local IPv6 addresses, act as if ClientUseIPv6 is 1
Check regularly if the interface addresses have changed. (Relays check every 20 minutes, clients, especially mobile/wireless clients, might want to check more frequently.)
Open Questions:
Do we want to ignore private IPv6 addresses if the client has a public IPv4 address? (Do people route via private IPv6 addresses to public networks? Do people do IPv6 NAT?)
If we do, we risk clients which are on strange setups (private IPv6 that works, public IPv4 that doesn't) failing to bootstrap.
If we don't, we might slow down IPv4 clients with public IPv4 addresses, with private IPv6 addresses that don't go anywhere.
Is it OK to slow down all (IPv4) clients for the sake of those that can connect only/better via IPv6?
Tor Browser already sets ClientUseIPv6 to 1, so the answer is probably "yes".
We should be able to tune the (multiple concurrent) connection schedules in #4483 (moved) to help with this, at least during bootstrap.
I'm marking this as low priority, to be resolved in January, because Tor Browser already sets ClientUseIPv6 to 1 by default. One simple resolution to this issue is to follow Tor Browser's lead, and set ClientUseIPv6 to default to 1 in tor.
(If we're going to make IPv6 bootstrap work in 0.2.8, we also need to resolve this issue in the same timeframe.)
Trac: Severity: Normal to Major Keywords: TorCoreTeam201512 deleted, TorCoreTeam201601 added Priority: Medium to Low