Thread: A TCP Redirecting Driver

  1. #1
    Join Date
    Dec 2009

    A TCP Redirecting Driver

    How would one write a driver that could reroute TCP/IP connections (preferably delagating the actual TCP/IP work to the normal TCP/IP driver)? I want to write a driver that uses the Tor network to reroute all connections through the Tor network, which would alleviate the annoyance that is configuring applications to use Tor. Preferably, the driver could only do redirection, leaving the dirty work of the protocol to the normal TCP/IP driver.

    EDIT: For those who aren't familiar with Tor:

  2. #2
    Join Date
    Aug 2010
    Ontario Canada
    How slow do you want your softwares to be?

    From the Tor faq...
    What is Tor?
    The name "Tor" can refer to several different components.

    The Tor software is a program you can run on your computer that helps keep you safe on the Internet. Tor protects you by bouncing your communications around a distributed network of relays run by volunteers all around the world: it prevents somebody watching your Internet connection from learning what sites you visit, and it prevents the sites you visit from learning your physical location. This set of volunteer relays is called the Tor network. You can read more about how Tor works on the overview page.

    The Tor Project is a non-profit (charity) organization that maintains and develops the Tor software.
    Bouncing stuff around like that not only increases the loading on backbones and brances by double the bandwidth used, it can never go any faster than the slowest branch in the resulting path... If one of your volunteers happens to be on a 256k DSL connection, serving half a dozen others, you're going to end up browsing and downloading at the most spectacularly slow speeds you've ever seen... Just like the good old dialup days...

  3. #3
    Join Date
    Dec 2009
    This is kinda OT, but I'll respond anyway. The point is anonymity, it doesn't matter how slow it is, to a usable extent. It would be easy to code it so that more is forwarded through faster peers than slower ones.

  4. #4
    Registered User
    Join Date
    Jun 2005
    I may stand corrected, but don't recall anything in TOR documentation about methods to ensure redirection through faster peers.

    I suspect CommonTater's point is that most people want performance first but might sacrifice performance for anonymity if they decide they need it. It will be a relatively rare user who will want "slow and anonymous" by default (if they want anonymity by default, they will probably not want to lose speed to get it).

    For your software to succeed, it will probably need to allow similar (or better) flexibility than TOR does, and in a more user friendly manner rather than just locking down a default setting. It might be better to make suggestions to the TOR folks about methods to make their software more user friendly.

    On the original question, you would be best off looking at documentation for Microsoft's DDK (Driver Development Kit). I haven't looked closely at the DDK for a while, but seem to recall one of the examples concerned bridging to the TCP/IP driver.
    Right 98% of the time, and don't care about the other 3%.

    If I seem grumpy or unhelpful in reply to you, or tell you you need to demonstrate more effort before you can expect help, it is likely you deserve it. Suck it up, Buttercup, and read this, this, and this before posting again.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. redirecting confusion
    By kiros88 in forum Linux Programming
    Replies: 1
    Last Post: 03-02-2010, 08:44 PM
  2. [C++] USB gadget driver, unbound kernel driver?
    By Jelte in forum C++ Programming
    Replies: 0
    Last Post: 01-13-2010, 08:53 AM
  3. Redirecting I/O
    By suwie in forum C Programming
    Replies: 6
    Last Post: 09-30-2004, 09:53 PM
  4. redirecting stdout
    By Draco in forum C Programming
    Replies: 13
    Last Post: 10-11-2003, 12:56 AM
  5. Redirecting cin?
    By rafe in forum C++ Programming
    Replies: 4
    Last Post: 10-10-2002, 09:28 AM