1

I was using the AllowDotExit option to make two simultaneous requests to www.example.net with two different exit nodes. How can I achieve this now because AllowDotExit was removed.

  • Allow DotExit allows people to control what Exits you use, enabling it was incredibly dangerous. – cacahuatl Jan 26 '18 at 21:04
  • Any possibilities to make the following requests: Local --> Exit1 --> www.example.net and Local --> Exit2 --> www.example.net ? – BlackMatrix Jan 27 '18 at 18:33
  • Run two copies of Tor? – cacahuatl Jan 27 '18 at 22:23
  • Isn't there an option like AttachStream or similar? I heard about it in the past. – BlackMatrix Jan 28 '18 at 14:11
  • AttachStream in combination with EXTENDCIRCUIT? – BlackMatrix Jan 28 '18 at 14:22
1

Configure two tor instances, using MapAddress to bind them to specific exit, rather than the dangerous, and thankfully gone, AllowDotExit.

For example:

# cat torrc-1 && tor -f torrc-1 && cat torrc-2 && tor -f torrc-2
SocksPort 9150
MapAddress check.torproject.org check.torproject.org.0593F5255316748247EBA76353A3A61F62224903.exit
RunAsDaemon 1
DataDirectory /tmp/tor
User nobody
Jan 27 22:34:24.453 [notice] Tor 0.3.2.9 (git-64a719dd25a21acb) running on Linux with Libevent 2.0.21-stable, OpenSSL 1.0.2g, Zlib 1.2.8, Liblzma 5.1.0alpha, and Libzstd N/A.
Jan 27 22:34:24.453 [notice] Tor can't help you if you use it wrong! Learn how to be safe at https://www.torproject.org/download/download#warning
Jan 27 22:34:24.454 [notice] Read configuration file "/tmp/torrc-1".
Jan 27 22:34:24.460 [notice] Scheduler type KIST has been enabled.
Jan 27 22:34:24.460 [notice] Opening Socks listener on 127.0.0.1:9150
SocksPort 9250
MapAddress check.torproject.org check.torproject.org.BC630CBBB518BE7E9F4E09712AB0269E9DC7D626.exit
RunAsDaemon 1
DataDirectory /tmp/tor2
User nobody
Jan 27 22:34:24.533 [notice] Tor 0.3.2.9 (git-64a719dd25a21acb) running on Linux with Libevent 2.0.21-stable, OpenSSL 1.0.2g, Zlib 1.2.8, Liblzma 5.1.0alpha, and Libzstd N/A.
Jan 27 22:34:24.533 [notice] Tor can't help you if you use it wrong! Learn how to be safe at https://www.torproject.org/download/download#warning
Jan 27 22:34:24.534 [notice] Read configuration file "/tmp/torrc-2".
Jan 27 22:34:24.545 [notice] Scheduler type KIST has been enabled.
Jan 27 22:34:24.549 [notice] Opening Socks listener on 127.0.0.1:9250

Now test that they're working:

# curl -x socks5h://127.0.0.1:9150/ https://check.torproject.org 2> /dev/null | grep "Your IP address appears to be"
  <p>Your IP address appears to be:  <strong>93.174.93.71</strong></p>
# curl -x socks5h://127.0.0.1:9250/ https://check.torproject.org 2> /dev/null | grep "Your IP address appears to be"
  <p>Your IP address appears to be:  <strong>197.231.221.211</strong></p>
| improve this answer | |
  • That's overcomplicated and unneeded for something that is relatively simple. – user78 Jan 28 '18 at 3:48
  • I'm assuming they wanted equivalent functionality of AllowDotExit, otherwise yes using circuit isolation would serve the same purpose. – cacahuatl Jan 28 '18 at 22:03
1

Using IsolateSOCKSAuth is considerably simpler and easier to do as long as you don't care which two exists are used, just that they are different.

$ curl -x socks5h://socks:isolation1@127.0.0.1:9150/ https://wtfismyip.com/text
85.93.218.204
$ curl -x socks5h://socks:isolation2@127.0.0.1:9150/ https://wtfismyip.com/text
2a02:418:4014:1::10
| improve this answer | |

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.