[tor-bugs] #13953 [Core Tor/Tor]: Self-test reachability test - Listen address from ORPort is ignored, it uses default address unless specified via Address argument

Tor Bug Tracker & Wiki blackhole at torproject.org
Wed Apr 20 06:41:24 UTC 2016


#13953: Self-test reachability test - Listen address from ORPort is ignored, it
uses default address unless specified via Address argument
--------------------------+-------------------------------
 Reporter:  s7r           |          Owner:
     Type:  enhancement   |         Status:  new
 Priority:  Medium        |      Milestone:  Tor: 0.2.???
Component:  Core Tor/Tor  |        Version:  Tor: 0.2.5.10
 Severity:  Normal        |     Resolution:
 Keywords:  029-proposed  |  Actual Points:
Parent ID:  #17782        |         Points:  medium
 Reviewer:                |        Sponsor:
--------------------------+-------------------------------

Comment (by teor):

 Replying to [comment:13 teor]:
 > I think this can be simplified to:
 > * Test the ORPort IP and port (that's about to be) advertised in the
 descriptor
 > * Test the DirPort IP and port (that's about to be) advertised in the
 descriptor
 >
 > For bonus points, we should re-test it when it changes, but I think
 that's #17782.

 Oops. Relay descriptors only have one address in their "router" line.

 From dir-spec.txt:
 `"router" nickname address ORPort SOCKSPort DirPort NL`

 So the ORPort and DirPort need to be on the same IP address.

 We should log a warning if the following addresses don't match:
 * the IPv4 address used in the descriptor
   * resolve_my_address()
 * an IPv4 address belonging to an ORPort that matches the ORPort we're
 about to advertise
   * router_get_advertised_or_port()
   * skip ORPort addresses with NoAdvertise set
 * an IPv4 address belonging to a DirPort that matches the DirPort we're
 about to advertise
   * router_get_advertised_dir_port()
   * skip DirPort addresses with NoAdvertise set


 For bonus points, and extra incompatibility risks, we could modify
 resolve_my_address to use:

 * Address
 * an IPv4 address belonging to an ORPort that matches the ORPort we're
 about to advertise
 * an IPv4 address belonging to a DirPort that matches the ORPort we're
 about to advertise
 * the other ways we currently try and guess our address

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/13953#comment:14>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list