[tor-relays] [OT] ExcludeNodes no longer working
Jacob Appelbaum
jacob at appelbaum.net
Tue Sep 11 20:48:23 UTC 2012
Nick Mathewson:
> On Tue, Sep 11, 2012 at 1:12 PM, Jacob Appelbaum <jacob at appelbaum.net> wrote:
>> Hi Scott,
>>
>> It is nice to see you posting again, I had wondered where you had gone.
>>
>> Scott Bennett:
>>> I know this really belongs on tor-talk, but I haven't been subscribed
>>> to it for a long time now. Sorry if posting this here bothers anyone.
>>
>>
>> Seems like a fine place to discuss relay problems, which is what it
>> sounds like, no?
>
> Maaybe! The very best place would be the bugtracker, of course. (I do
> seem to recall that you have some issues with trac -- I'm just
> mentioning the bugtracker so that other people don't get the idea that
> the mailing lists are the best place for bug reports. But a bug
> report on the mailing list is much much better than no bug report at
> all.)
>
Oh, I don't mean to imply not to file bugs but rather, if we have a
guard that fails circuits, I'd say we should discuss it openly. Is it a
load issue? Or something else?
>>> Back in early July, I upgraded from 0.2.3.13-alpha to 0.2.3.18-rc.
>>> I immediately ran into problems with a python script that honors the
>>> http_proxy environment variable, which I normally have set to the localhost
>>> port for privoxy, which, in turn, connects to tor's SOCKS port. I couldn't
>>> really see what was going wrong, but using arm to ask for a new identity
>>> seemed to help sometimes to get a circuit that worked. Sending tor a
>>> SIGHUP instead also seemed to work about as often.
>>
>> If you use 0.2.2.x - what happens?
>
> I'm not sure what the bug described here is, fwiw. What is the
> behavior for the circuits that don't work, and to what extent is
> 0.2.2.x better?
Scott?
>
>>> A bit over a week ago, I switched to 0.2.3.20-rc, and the problem
>>> still occurs. However, 0.2.3.20-rc now also emits a new message from time
>>> to time, the most recent occurrence of which is
>>>
>>> Sep 06 06:02:45.934 [notice] Low circuit success rate 7/21 for guard TORy0=753E0B5922E34BF98F0D21CC08EA7D1ADEEE2F6B.
>>>
>>
>> That is an interesting message - I wonder if the author of that message
>> might chime in?
>
> Looks like bug #6475.
Ok.
>
>>> Wondering whether such circuit-building failures might be related to the
>>> other problem, I began a little experiment: each time I saw a "Low circuit
>>> success rate" message, I added the key fingerprint of the node in question
>>> to my ExcludeNodes list in torrc and sent tor a SIGHUP.
>>> The problem is still occurring, though, and when I look at the
>>> circuits involved, they all seem to have at least one of the excluded
>>> nodes in them, usually in the entry position. So my question is, what
>>> changed between 0.2.3.13-alpha and 0.2.3.18-rc (or possibly 0.2.3.20-rc)
>>> in the handling of nodes listed in the ExcludeNodes line in torrc? And
>>> is there anything I can do to get the ExcludeNodes list to work again
>>> the way it used to work?
>>> Thanks in advance for any relevant information.
>>>
>>
>> It seems that there are two issues - one is that a guard is failing to
>> build circuits, the other is that you can't seem to exclude them. I have
>> to admit, I'm more interested in the former... Is there a pattern to the
>> failures? That is for the 7 successes for that node, did you see
>> anything interesting? Were say, the nodes that worked somehow in the
>> same country as that guard? Or perhaps were the other failed circuits
>> all seemingly unrelated to the guard?
>>
>> As far as the ExcludeNodes - did you set StrictNodes at the same time?
>> Are you also a relay?
>
> Any other configuration info would be helpful here too.
>
> (To answer your question: looking through the changelogs, and the
> commit logs for src/or/circuitbuild.c and src/or/routerlist.c, I can't
> find anything that stands out to me as something that might cause an
> ExcludeNodes regression. So more investigation will be needed!)
>
I didn't see anything either - my first thought was of course to the
worst case "a guard that selectively fails circuits, perhaps only
allowing creation to nodes that they also control/watch/etc."
All the best,
Jake
More information about the tor-relays
mailing list