[tor-bugs] #33238 [Core Tor/Tor]: Prop 312: 3.2.3. Use Local Interface IPv6 Address
Tor Bug Tracker & Wiki
blackhole at torproject.org
Tue Apr 28 11:28:15 UTC 2020
#33238: Prop 312: 3.2.3. Use Local Interface IPv6 Address
-------------------------------------------------+-------------------------
Reporter: teor | Owner: teor
Type: enhancement | Status:
| assigned
Priority: Medium | Milestone: Tor:
| 0.4.4.x-final
Component: Core Tor/Tor | Version:
Severity: Normal | Resolution:
Keywords: prop312, ipv6, network-team- | Actual Points:
roadmap-2020Q2 |
Parent ID: #33049 | Points: 1
Reviewer: | Sponsor:
| Sponsor55-must
-------------------------------------------------+-------------------------
Description changed by teor:
Old description:
> If they don't have usable Address or ORPort addresses, relays (and
> bridges) should use publicly routable addresses
> from the OS interface addresses or routing table, as their IPv4 and IPv6
> addresses.
>
> Tor has local interface address resolution functions, which support most
> major OSes. Tor uses these functions to guess its IPv4 address. We
> propose
> using them to also guess tor's IPv6 address.
>
> We also propose modifying the address resolution order, so interface
> addresses are used before the local hostname. This decision is based
> on our principles: interface addresses are local, trusted, and reliable;
> hostname lookups may be remote, untrusted, and unreliable.
>
> If the local interface addresses are unavailable, tor opens a UDP socket
> to
> a publicly routable address, but doesn't actually send any packets.
> Instead, it uses the socket APIs to discover the interface address for
> the
> socket. (UDP is used because it is stateless, so the OS will not send any
> packets to open a connection.)
>
> Tor already ignores private IPv4 interface addresses on public relays. We
> propose to also ignore private IPv6 interface addresses.
>
> See proposal 312, section 3.2.1, general case:
> https://gitweb.torproject.org/torspec.git/tree/proposals/312-relay-auto-
> ipv6-addr.txt#n359
New description:
This ticket depends on `Address IPv6` support in #33233.
If they don't have usable Address or ORPort addresses, relays (and
bridges) should use publicly routable addresses
from the OS interface addresses or routing table, as their IPv4 and IPv6
addresses.
Tor has local interface address resolution functions, which support most
major OSes. Tor uses these functions to guess its IPv4 address. We propose
using them to also guess tor's IPv6 address.
We also propose modifying the address resolution order, so interface
addresses are used before the local hostname. This decision is based
on our principles: interface addresses are local, trusted, and reliable;
hostname lookups may be remote, untrusted, and unreliable.
If the local interface addresses are unavailable, tor opens a UDP socket
to
a publicly routable address, but doesn't actually send any packets.
Instead, it uses the socket APIs to discover the interface address for the
socket. (UDP is used because it is stateless, so the OS will not send any
packets to open a connection.)
Tor already ignores private IPv4 interface addresses on public relays. We
propose to also ignore private IPv6 interface addresses.
See proposal 312, section 3.2.1, general case:
https://gitweb.torproject.org/torspec.git/tree/proposals/312-relay-auto-
ipv6-addr.txt#n359
--
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/33238#comment:3>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
More information about the tor-bugs
mailing list