<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto">On 15 Dec 2017, at 04:04, David Goulet <<a href="mailto:dgoulet@torproject.org">dgoulet@torproject.org</a>> wrote:<br><div><br></div><blockquote type="cite"><div><blockquote type="cite" __apple_fixed_attribute="true"><span>On 15 Dec (03:47:25), teor wrote:</span><br></blockquote><blockquote type="cite"><span></span><br></blockquote><blockquote type="cite" __apple_fixed_attribute="true"><blockquote type="cite"><blockquote type="cite"><span>On 15 Dec 2017, at 03:29, David Goulet <<span><a href="mailto:dgoulet@torproject.org">dgoulet@torproject.org</a></span>> wrote:</span><br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><span></span><br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><span>The place I'm thinking of is the EXTEND in IPv6 and relay self-testing in</span><br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><span>IPv6. This seems a more critical point to build into the network before we can</span><br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><span>start building HS support on top (single onion is different but will have to</span><br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><span>do with HS code in some ways).</span><br></blockquote></blockquote><blockquote type="cite"><span></span><br></blockquote><blockquote type="cite"><span>I'm working on this right now.</span><br></blockquote><blockquote type="cite"><span>It should be ready by mid-January, but it needs a proposal, so maybe it will</span><br></blockquote><blockquote type="cite"><span>end up in 0.3.4 instead.</span><br></blockquote><span></span><br><span>Ok!</span><br><span></span><br><span>Can you tell me which ticket is that so I don't start poking at it? I think</span><br><span>without a nice layer of link specifier IPv6, we can't move forward on much</span><br><span>other things?</span><br></div></blockquote><div><br></div><div>Yes, it's important, and it would be great if you could do it.</div><div><br></div><div>Is that this ticket?</div><div><br></div><div><span style="background-color: rgba(255, 255, 255, 0);">hs: Unify link specifier API/ABI</span></div><div><a href="https://trac.torproject.org/projects/tor/ticket/22781">https://trac.torproject.org/projects/tor/ticket/22781</a></div><br><blockquote type="cite"><div><span>Let me know how I can be most useful here while you do that.</span></div></blockquote><div><br></div><div>Here is the wiki page I am using for planning:</div><div><a href="https://trac.torproject.org/projects/tor/wiki/org/roadmaps/Tor/IPv6Features">https://trac.torproject.org/projects/tor/wiki/org/roadmaps/Tor/IPv6Features</a></div><div><br></div><div>Feel free to edit it :-)</div><div><br></div><div>Here's the high-level ticket, please pick any task I haven't started on:</div><div><br></div><div><a href="https://trac.torproject.org/projects/tor/ticket/24403">https://trac.torproject.org/projects/tor/ticket/24403</a></div><div><br></div><blockquote type="cite"><div><blockquote type="cite"><span>I would also like to make it easier to configure IPv6 relays. IPv6 support isn't</span><br></blockquote><blockquote type="cite"><span>as useful as it could be, because only 15% of relays support IPv6.</span><br></blockquote><blockquote type="cite"><span>Address autodetection would go a long way here.</span><br></blockquote><span></span><br><span>Are you suggesting something like "Address auto" or "ORPort auto:<port>" kind</span><br><span>of thing that we enable by default for both v4 and v6 and then explicitly set</span><br><span>it if you want a specific address?</span><br></div></blockquote><div><br></div><div>Eventually, but it doesn't need to be done in 0.3.3.</div><br><blockquote type="cite"><div><span>Auto detection of address becomes complicated with interfaces that have</span><br><span>multiple IPs... Which one do you choose?</span><br></div></blockquote><div><br></div><div>Tor does this already with IPv4.</div><div><br></div><div>We check these sources for IPv4 (in about this order):</div><div>The configured Address</div><div>NETINFO cells from our outbound connections to other relays</div><div><span style="background-color: rgba(255, 255, 255, 0);">The first IPv4 address in the order the OS provides them</span></div><div><span style="background-color: rgba(255, 255, 255, 0);"><br></span></div><div><span style="background-color: rgba(255, 255, 255, 0);">I think we stopped using the X-Your-IP-Address-Is headers in</span></div><div><span style="background-color: rgba(255, 255, 255, 0);">directory documents.</span></div><div><span style="background-color: rgba(255, 255, 255, 0);"><br></span></div><div><div><span style="background-color: rgba(255, 255, 255, 0);">We check these sources for IPv6:</span></div><div>The first advertised IPv6 ORPort</div></div><div><br></div><div>Eventually, I want to make both use this order:</div><div><div><span style="background-color: rgba(255, 255, 255, 0);">The configured Address</span></div><div><span style="background-color: rgba(255, 255, 255, 0);">The first advertised ORPort</span></div><div><span style="background-color: rgba(255, 255, 255, 0);">NETINFO cells from our outbound connections to other relays</span></div><div><span style="background-color: rgba(255, 255, 255, 0);">The first address in the order the OS provides them</span></div></div><div><span style="background-color: rgba(255, 255, 255, 0);"><br></span></div><div><span style="background-color: rgba(255, 255, 255, 0);">If we want to be clever, we can skip addresses that aren't reachable.</span></div><div><span style="background-color: rgba(255, 255, 255, 0);">Or we can check all the addresses, and try to choose the shortest</span></div><div><span style="background-color: rgba(255, 255, 255, 0);">address text to put in directory documents.</span></div><div><span style="background-color: rgba(255, 255, 255, 0);">But these features can wait.</span></div><br><blockquote type="cite"><div><span>But aren't you worried of Tor finding an IPv6 for a relay and starting using</span><br><span>it while the operator has no idea that it is happening? Dunno, maybe some</span><br><span>relays are bandwidth capped on v4 or/and v6 (would suck but)?</span><br></div></blockquote><div><br></div><div>I've never heard of such a thing.</div><div>And we can't support every weird scenario by default.</div><div>There will be a way to turn the feature off.</div><div><br></div><div>I think we have to get used to treating IPv4 and IPv6 the same.</div><div>We guess IPv4, we should guess IPv6 as well.</div><div><br></div><div>If we need to have a release where the feature is available but off by default,</div><div>that's ok. But I think it's not a big deal. Let's just tell people at the top of the</div><div>release notes.</div><div><br></div><div>It will make a lot of relay operators happy.</div><br><blockquote type="cite"><div><span>Anyway this can be a ticket (if not already done)</span></div></blockquote><div><br></div><div>Reachability checks are:</div><div><br></div><div>Missing IPv6 ORPort reachability check</div><a href="https://trac.torproject.org/projects/tor/ticket/6939">https://trac.torproject.org/projects/tor/ticket/6939</a><div><br></div><div>I'm sure we have a ticket for relay IPv6 autodetection, but I can't find it</div><div>right now.</div><div><br></div><div>T</div><div><div><br></div></div></body></html>