I'm studying Tor and Onion Routing and I don't understand how it preserves anonymity if the Internet routing is still done using public ip addresses.

Let's suppose we have the following Tor circuit: Tor Browser -> A -> B -> C -> Server. If someone follows the traffic from relay to relay then the anonymity is broken. Even though it uses 3 layers of encryption the routing is done by public ip addresses which are in clear text in the ip header.

Or when the server responds back it sends the packets to the public ip address of C. Some authority could follow to route from the server to C to B to A to the client and knows that the client is communicating with the server.

Can anyone say if I'm right? Or the entire security of Tor is based on the fact that no one can ever control all 3 relays (or statistically is very improbable)?

  • I guess the security comes from the fact that the servers are in different countries and the server owners are supposed to not collaborate too easily with the authorities anyway.
    – reed
    Commented Jun 8, 2020 at 10:16
  • 2
    "If someone follows the traffic from relay to relay" -- and how does one do that?
    – schroeder
    Commented Jun 8, 2020 at 10:39
  • 1
    I think your question is poorly formed, and if you were to examine the assumptions you make in your question, you might find your answer. The weaknesses of Onion Routing have nothing to do with IP routing, and you even suggest that. So, let's remove that as a factor. Can someone look at the logs of each onion router and trace back the connection? Sure. That's even mentioned in the wiki article on the topic.
    – schroeder
    Commented Jun 8, 2020 at 10:44

1 Answer 1


Broadly speaking the most basic premise of tor anonymity is that whatever happens between your entry point (usually a socks proxy into tor to which the browser connects) and exit node(s) is completely opaque and cannot be meaningfully reconstructed to determine the actual source of the traffic. (this is known to have limitations)

As Schroeder mentioned, this isn't to do with TCP/IP routing (even though the term is used extensively in tor documentation). If we expand your example from:

Tor Browser -> A -> B -> C -> Server


Tor Browser => Ta => Tb => Tc -> B -> C -> Server (where T* are tor nodes [Tc is an exit node] and B and C are Internet hosts that route traffic into the server)

What happens is that:

  • Server sees incoming requests from Tc incoming from router C;
  • Tracing of traffic if possible between Server and the public IP address of Tc;
  • (ignoring limitations, vulnerabilities and client-side surveillance) It is not possible to trace the path of traffic from Tc to the connecting Tor Browser, exactly as per Tor's design. In other words anything inside the tor network is meant to be untraceable;

Again please bear in mind that there are exceptions and caveats for everything. This is the basic concept put forward in a simplified way.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .