Opened 3 years ago

Last modified 16 months ago

#17811 new task

Tor Clients on IPv6

Reported by: teor Owned by:
Priority: High Milestone: Tor: unspecified
Component: Core Tor/Tor Version:
Severity: Normal Keywords: ipv6 tor-client master-ticket
Cc: dominik@… Actual Points:
Parent ID: Points: (parent)
Reviewer: Sponsor:

Description

This is a top-level task that tracks the progress of IPv6 tor client support.

Child Tickets

TicketStatusOwnerSummaryComponent
#4806needs_revisionDetect and warn when running IPv6-using client without IPv6 address privacyCore Tor/Tor
#11360newListen on IPv6 by default for SocksPort *:PortCore Tor/Tor
#17011newchutney doesn't verify using IPv6 addressesCore Tor/Chutney
#17153closedtor test networks should allow IPv6 private addressesCore Tor/Tor
#17217assignedneelChange clients to automatically use IPv6 if they can bootstrap over itCore Tor/Tor
#17327closedDirAuthority IPv6Core Tor/Tor
#17573closedUpdate max_dl_per_request for IPv6 address lengthCore Tor/Tor
#17774closedUpdate FallbackDir entry in man page for IPv6Core Tor/Tor
#17813closedIPv6 address for urrasCore Tor/DirAuth
#17835assignedneelMake ClientPreferIPv6ORPort smarterCore Tor/Tor
#17840closedteorAdd a minimal implementation of ClientUseIPv4 so IPv6-only clients can bootstrapCore Tor/Tor
#17845newAdd unit tests for IPv6 relay descriptorsCore Tor/Tor
#17849closedWarn if single-stack IPv4/IPv6 clients have very restricted guard choicesCore Tor/Tor
#17863closedFixes to IPv6 address handlingCore Tor/Tor
#17889closedMake ClientPreferIPv6ORPort apply to bridge clientsCore Tor/Tor
#18051closedmalekbrdirectory_send_command should decorate IPv6 addresses to avoid port ambiguityCore Tor/Tor
#21310needs_revisionExits should tell clients when they are connecting to an IPv6-only hostnameCore Tor/Tor
#21311needs_informationExits should resolve IPv6 addresses, regardless of IPv6ExitCore Tor/Tor
#26664newWhen an exit tells a client about an IPv6-only hostname, the client should choose another IPv6 exitCore Tor/Tor

Change History (10)

comment:1 Changed 3 years ago by nickm

Priority: MediumHigh

comment:2 Changed 3 years ago by teor

In #17840, tor clients bootstrap over IPv6 when configured to prefer IPv6, or only use IPv6. We also maintain bridge clients' preference for IPv6, while fixing some of their address selection code.

To prefer IPv6, a Tor client should set:

  • ClientUseIPv4 0, or
  • ClientUseIPv6 1 and ClientPreferIPv6[OR,Dir]Port 1, or
  • configure bridges.

But this requires Tor users to know whether IPv4 or IPv6 works better for them, which is not ideal. In future releases, we could automatically use IPv6 if clients can bootstrap over it (#17217), perhaps by using a "happy eyeballs"-like algorithm to try both IPv4 and IPv6, and switch between them depending on which one works better (#17835).

comment:3 Changed 3 years ago by teor

Milestone: Tor: 0.2.8.x-finalTor: 0.2.9.x-final

comment:4 Changed 3 years ago by nickm

Points: (parent)

This is a parent task; let's assign points to its subtasks only.

comment:5 Changed 2 years ago by teor

Milestone: Tor: 0.2.9.x-finalTor: 0.2.???

This parent task doesn't have much in 0.2.9, and no-one plans on working on IPv6 support in 0.2.9.

comment:6 Changed 2 years ago by teor

Milestone: Tor: 0.2.???Tor: 0.3.???

Milestone renamed

comment:7 Changed 22 months ago by nickm

Keywords: tor-03-unspecified-201612 added
Milestone: Tor: 0.3.???Tor: unspecified

Finally admitting that 0.3.??? was a euphemism for Tor: unspecified all along.

comment:8 Changed 22 months ago by rathann

Cc: dominik@… added

comment:9 Changed 17 months ago by nickm

Keywords: tor-03-unspecified-201612 removed

Remove an old triaging keyword.

comment:10 Changed 16 months ago by nickm

Keywords: tor-client master-ticket added
Note: See TracTickets for help on using tickets.