I've found the solution, it was the ExitPolicyRejectPrivate option that
blocked access, which defaults to 1 and therefore gives a default
behavior different from what I expected. As usual, the solution was
already in the man pages ...
ExitPolicyRejectPrivate 0|1
Reject all private (local) networks, along with your
own public IP address, at the beginning of your exit policy. See above
entry on ExitPolicy. (Default: 1)
Csaba
Csaba Kiraly wrote:
Hi,
I have a problem opening a TCP connection directly to a node which is
also a Tor exit node (using 0.1.2.19).
I have an experimental setup with 3 OR nodes, the middle one running
several Tor instances
OR1, OR2_a, OR2_b, OR2_c, OR3
and I have a constrained path setup:
EntryNodes OR1
StrictEntryNodes 1
ExitNodes OR3
StrictExitNodes 1
When I connect from a client to any server other than PC3, Tor happily
creates (or re-uses) a circuit of
client -> OR1 - OR2_x - OR3 -> server
When I try to connect to OR3 itself, I get:
Jan 29 13:06:06.244 [info] choose_good_exit_server_general(): Found 3
servers that might support 1/1 pending connections.
Jan 29 13:06:06.244 [warn] No specified exit routers seem to be
running, and StrictExitNodes is set: can't choose an exit.
Jan 29 13:06:06.244 [warn] failed to choose an exit server
Jan 29 13:06:06.244 [info] circuit_get_open_circ_or_launch(): No safe
circuit (purpose 5) ready for edge connection; delaying.
Jan 29 13:06:06.244 [info] connection_edge_process_inbuf(): data from
edge while in 'waiting for circuit' state. Leaving it on buffer.
Jan 29 13:06:06.808 [info] choose_good_exit_server_general(): Found 3
servers that might support 1/1 pending connections.
Jan 29 13:06:06.808 [warn] No specified exit routers seem to be
running, and StrictExitNodes is set: can't choose an exit.
Jan 29 13:06:06.808 [warn] failed to choose an exit server
...
Is this normal behaviour? I though a connection which remains inside
Tor is preferred in the case the destination is an exit node.
E.g. in
https://tor-svn.freehaven.net/svn/tor/trunk/doc/spec/path-spec.txt I
have seen this:
"We can also cannibalize clean circuits when the client asks to exit
at a given node -- either via the ".exit" notation or because the
destination is running at the same location as an exit node."
Regards,
Csaba