Opened 4 months ago

Last modified 5 weeks ago

#33243 assigned defect

Prop 312: 3.2.5. Handle IPv6 Directory Fetch Failures

Reported by: teor Owned by:
Priority: Medium Milestone: Tor: 0.4.4.x-final
Component: Core Tor/Tor Version:
Severity: Normal Keywords: prop312, ipv6
Cc: Actual Points:
Parent ID: #33241 Points: 1
Reviewer: Sponsor: Sponsor55-can


Relays should start fetching directory documents over IPv4 and IPv6, so they can use X-Your-Address-Is HTTP headers to find their IPv6 addresses.

Bridges must only fetch directory documents over IPv4, because they try to imitate clients. (So they can't find their IPv6 addresses in this way.)

To support this change, tor should also change how it handles IPv6
directory failures on relays:

  • avoid recording IPv6 directory failures as remote relay failures, because they may actually be due to a lack of IPv6 connectivity on the local relay, and
  • issue IPv6 directory failure logs at notice level, and rate-limit them to one per hour.

If a relay is:

  • explicitly configured with an IPv6 address, or
  • a publicly routable, reachable IPv6 address is discovered in an earlier step,

tor should start issuing IPv6 directory failure logs at warning level. Tor
may also record these directory failures as remote relay failures. (Rather
than ignoring them, as described in the previous paragraph.)

See proposal 312, section 3.2.5, IPv6 directory failure part:

Child Tickets

Change History (2)

comment:1 Changed 5 weeks ago by teor

Owner: teor deleted

Un-assign myself from future Sponsor 55 tasks.

comment:2 Changed 5 weeks ago by teor

Sponsor: Sponsor55-mustSponsor55-can

I've made all the IPv6 directory fetch tasks optional, because they could take a lot of work, and they are high-risk.

When we finish the required tasks, we can prioritise the optional tasks.

Note: See TracTickets for help on using tickets.