wiki:org/roadmaps/Tor/IPv6

"Turns out, 4 billion addresses wasn't enough." -- nickm

The work with adding IPv6 support to Tor follows these phases, roughly the same as outlined in xxx-ipv6-roadmap.txt. This page is meant to function as a status page for each of the phases and of the project as a whole.

There's also information about how to help out with testing.

At the bottom of the page can be found a section with pointers to related resources.

The phases and their status

Clients to private bridges (0.2.3.9-alpha)

Private bridges are bridge relays that don't register with the bridge authority (PublishServerDescriptor 0). Support for running a private bridge with an IPv6 OR port and clients connecting to it was added to tor in 0.2.3.9-alpha (2011-12-08).

This work was tracked in #3563.

Note that clients on 0.2.4.{1,2,3} need both ClientUseIPv6 and ClientPreferIPv6ORPort to be set in order to use IPv6 for its first hop due to #6757.

Clients to ordinary bridges (0.2.3.21-rc, 0.2.4.1-alpha)

Ordinary bridges publish their descriptor to the bridge authority. Support for bridge authorities to handle announced IPv6 OR is included in tor 0.2.4.x.

This work was tracked in #4563.

Note that clients on 0.2.4.{1,2,3} need both ClientUseIPv6 and ClientPreferIPv6ORPort to be set in order to use IPv6 for its first hop due to #6757.

Clients to relays (0.2.4.1-alpha)

Relays that are not bridges publish their descriptor to the directory authoritites. Directory authorities vote on relays and publish a consensus document. Support for relays with an IPv6 OR port and for directory authorities to handle their descriptors, voting on them and publishing a consensus containing IPv6 OR ports is included in tor 0.2.4.x.

This work was tracked in #4564.

Exit relays to IPv6 destinations (0.2.4.8-alpha)

Exit relays connect to hosts on internet. Support for exits connecting to IPv6 addresses on internet was included in the 0.2.4.8-alpha release.

This work was tracked in #5547.

Relays to relays

Relays talk to other relays. The work with relays talking to other relays over IPv6 has not been started.

Directory authorities on IPv6

Clients and relays talk to directory authorities. The work with making directory authorities reachable over IPv6 has not been started.

This work will be tracked in #6027.

Help testing

If you have the opportunity, please help out testing this.

Please file a bug report in Trac if you find something that doesn't work or seem to be doing the wrong thing.

Testing clients running with bridges

In order to test a client to connect to a bridge over IPv6, run tor 0.2.3.9-alpha or later. Configure it to use the IPv6 bridge using the Bridge configuration option, like this:

    Bridge [2001:DB8::1]:9050

Testing private bridges

In order to test a private bridge running an OR port on IPv6, run tor 0.2.3.9-alpha or later. Configure it to bind to and announce an IPv6 OR port by using the ORPort configuration option, like this:

    ORPort [2001:DB8::1]:9050

Note that you'll have to have an IPv4 OR port configured as well, or your bridge will bootstrap but leave its clients hanging at 50% (see #4847).

Note also that even with that bug fixed, a bridge will need IPv4 connectivity for talking to other relays. That won't change any time soon.

Since mid September 2012 the bridge authority handles IPv6 OR ports.

Testing public bridges

In order to test public bridges, run tor 0.2.3.21-rc / 0.2.4.3-alpha or later. Configure it with an IPv6 ORPort just like a private bridge.

Your bridge will show in https://bridges.torproject.org/?ipv6=True, eventually.

Related resources

Last modified 4 months ago Last modified on Jan 3, 2014 2:59:41 PM