Opened 10 years ago

Closed 10 years ago

Last modified 8 years ago

#1629 closed defect (invalid)

Dev. Tor Mesh control.

Reported by: Quadre Owned by:
Priority: Medium Milestone:
Component: Core Tor/Tor Version: Tor:
Severity: Keywords:
Cc: Actual Points:
Parent ID: Points:
Reviewer: Sponsor:


Hello nuts!

I have developer question.
Using C# and TcpClient I can communicate with preconfigured tor control on port 9051. I can send "signal NEWNYM\n" to refresh mesh, but how I can build my own mesh?
For example I want to build 3 chains mesh with last chain in Russia or Ukraine (if exist)?

Yes, Shure… I can use something command like "extendCircuit 0 blutmagie,blutmagie3,p1v0\n" but this build new mesh and add it to existing 4 meshes, and my request will go one of this 5 meshes, with no warranty to go ONLY from me new-build-mesh…

Child Tickets

Attachments (1)

tor.png (7.3 KB) - added by Quadre 10 years ago.
Tor meshes

Download all attachments as: .zip

Change History (4)

Changed 10 years ago by Quadre

Attachment: tor.png added

Tor meshes

comment:1 Changed 10 years ago by Quadre

for thous who speak RUS:
При запуске тора он строить 4 цепи. Есть способ построить дополнительно N цепей, с заданными точками. Но HTTP запросы могут идти как по 4м уже существующим цепям, так и по ново-созданной. Если кто-нибудь знает способ контролируемого построение цепочек, по которой 100% пойдёт запрос дайте знать.

comment:2 Changed 10 years ago by nickm

Resolution: invalid
Status: newclosed

Hi! This is a bugtracker, not a general-purpose support tool.

But to answer your question: If you want to have a controller build its own circuits and send your streams over them, you need to do the following:

Set the LeaveStreamsUnattached option so that when you make a TCP connection request, Tor doesn't automatically connect it to a circuit for you.

Maybe set the DisablePredictedCircuits option so that Tor builds fewer circuits of its own. (This option isn't very well tested if I remember correctly.)

Use SETEVENTS to listen for STREAM events so that you learn about new stream requests when they arrive, and finally...

when a new stream requests arrives, you will get a STREAM event, and you'll need to connect the stream to a circuit yourself, since Tor won't be doing it for you. You can do this with the ATTACHSTREAM command.

All these commands, events, and options are documented in control-spec.txt as included with Tor.

Удачи и хорошего настроения! (не говорю по-русски.)

comment:3 Changed 8 years ago by nickm

Component: Tor ClientTor
Note: See TracTickets for help on using tickets.