I just finished a project to make a Raspberry Pi into a Tor router and I am curious about technical aspects of Tor that I do not understand. I know how to switch the exit node in Tor Browser during a single browsing session and I think the exit node changes whenever I close and open the browser. However, when one uses Tor for something like the router example, when and for what reasons might the exit node change? For obvious reasons, I am concerned that the exit node would remain constant and degrade anonymity. In an ideal world, I would prefer to have the router change exit nodes at a random internal of up to 10 minutes.

Thank you!


Tor has a concept of "circuit dirtiness", after a circuit is first used for a connection it is marked as "dirty" along with the time it was first used. If 10 minutes have elapsed since it was marked as dirty the circuit will not be used for new connections, however it will continue to serve existing connections.

Tor also has a specific flag called KeepAliveIsolateSOCKSAuth. Tor Browser uses this, in conjunction with a flag called IsolateSOCKSAuth.

IsolateSOCKSAuth makes the SOCKSPort that Tor provides treat distinct username and passwords on SOCKS connections be isolated onto their own distinct circuits. This is how Tor Browser helps ensure that the requests you make to google.com do not use the same circuits as those for your facebook.com, helping keep your activity in browsing tabs separate from each other.

KeepAliveIsolateSOCKSAuth means that each time a request is made on a unique username and password combination on a SOCKS connection it will reset the circuit dirtiness, keeping it alive for another 10 minutes. This is intended to make users browsing experiences better, since some websites like users logged in session to a specific IP, meaning that if the circuit changed frequently, the user would constantly need to re-authenticate themselves.

So, your idea isn't a good one. Changing exit nodes in the case of something like a browser session does not increase anonymity because browsers carry a lot of state (cache, etc) and even explicitly user-session tracking state, such as cookies.

This means that changing exit nodes doesn't affect the ability of people to track you, to make a clean break from tracking you must thoroughly purge the state of the browser. This is the "New Identity" option provided by Tor Button. This will clear the state of both the browser and Tor to ensure a clean break between what was previously browsed and what will be browsed after the "New Identity". It also offers a "New Circuit For This Site" option, which will only change the circuit that is used to connect to a site but will not do anything to stop user tracking and will not do anything to delink your activities from your previous.

Simply put:

Changing IP address by forcing a change in Exit node at random intervals will not improve your anonymity.

It will make you stand out and look different from all other Tor Browser users, making you less anonymous.

Using "New Identity" will give you a fresh start, ensuring that you look like a new Tor Browser user and unlinking you from your previous browsing.

  • Further reading, but not directly an answer, on why Tor Routers are almost always a bad idea: github.com/epidemics-scepticism/writing/blob/master/… – cacahuatl Nov 21 '17 at 21:17
  • Canonizing, thank you very much for taking the time and giving such a thorough answer. I really appreciate it. That’s very useful in terms of the browser. It makes me wonder how the Tor router will work since there is no identity switching button. For additional context, I hoped to use the Tor router while conducting due diligence research, to include mirroring websites. – Tigelle Nov 21 '17 at 23:12
  • What you want to do is expose a control port (possibly filtered with something like filtor, for security) and a SOCKSPort set up with the same isolation flags that Tor Browser uses, and then you can get Tor Browser to use an external control and socks port by following this guide. That will give you equivalent functionality while also providing the leak prevention protections of a Tor Router. – cacahuatl Nov 21 '17 at 23:16
  • Appreciate the extra context. I'll readily admit much of this is over my head, but it's great direction. If I'm doing due diligence and don't want to leave behind some kind of obvious signature, clearly I don't want to commit the terrible error of doing my work with an unjustified sense of security. – Tigelle Nov 22 '17 at 0:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.