ttdnsd(1)

NAME
ttdnsd - The Tor TCP DNS Daemon

SYNOPSIS
ttdnsd [-h | [-b 127.0.0.1 -p 53 -f /etc/ttdns.conf -P /var/lib/ttdnsd/pid -C /var/lib/ttdnsd/ -c -d -l]

DESCRIPTION
ttdnsd is a small UDP to TCP DNS shim for use with the Tor SOCKS proxy interface. It should also work with other SOCKS proxies. ttdnsd requires a single recursive DNS listener on the open internet to be useful. It provides no DNS caching support and may be chained with unbound or another DNS caching program for performance reasons. By default ttdnsd ships with 8.8.8.8 as the open TCP DNS resolver. ttdnsd creates a TCP connection through the configured SOCKS proxy to the randomly chosen DNS resolver(s) as configured in /etc/ttdns.conf ; the connection is held open for a reasonable amount of time and subsequently closed when it is no longer in use. This allows users to make arbitrary DNS queries to will exit from the Tor network to the configured resolver(s).

OPTIONS
-h

    Print usage information for ttdnsd(1)

-b

    Address to bind to - usually this should be 127.0.0.1

-p

    Port to listen on - almost always this should be port 53

-f

    Configuration file for ttdnsd - pre-chroot

-P

    Full path to the desired location of the pid file - pre-chroot

-C

    Full path to alternate chroot(2) directory - obviously, pre-chroot

-c

    Do not chroot ttdnsd(1) when running - useful for debugging

-d

    Debugging mode

-l

    Logging mode - this logs into ttdnsd.log

FILES
/etc/ttdns.conf

    Must contain at least a single IP address for a TCP aware DNS resolver

/var/lib/ttdnsd/pid

    The default pid file

/var/lib/ttdnsd/

    The default ttdnsd chroot path

/var/lib/ttdnsd/tsocks.conf

    contains the proper tsocks(1) configuration

ENVIRONMENT
TSOCKS_CONF_FILE

    TSOCKS_CONF_FILE should point to a tsocks.conf configuration file within the configured chroot(2) By default the tsocks configuration file is placed inside the chroot. By default this is named tsocks.conf and it is configured to use the standard Tor SOCKS IP address and port combination. This only needs to be set if you're mucking about.

EXAMPLE USAGE
Running as root will automatically switch to user nobody and group nogroup by running the following command: TSOCKS_CONF_FILE=tsocks.conf ttdnsd -b 127.0.0.1 -p 53 -P /var/lib/ttdnsd/pid If you're running Gnu/Linux you may use the included init.d script: /etc/init.d/ttdnsd start

EXIT STATUS
These are currently undocumented. Obviously we're shooting for ttdnsd to run forever and it should exit with 0 when you've properly shut it down.

PRIVACY
There may be unintended privacy or security issues from DNS tampering or tracking from your configured open recursive DNS resolver. Consider yourself warned!

BUGS
It's likely! Let us know by contacting tor-assistants@torproject.org Note that ttdnsd(1) is still in Alpha, and may not work as expected.

SEE ALSO
tor(1), tsocks(1), torify(1)