---------- [ Note ] ---------- Dns2tcp is a tool for relaying TCP connections over DNS. There is only a simple identification mecanism but no encryption : DNS encapsulation must be considered as an unsecure and anonymous transport layer. Resources should be public external services like ssh, ssltunnel ... ----------[ Examples ]---------- Client: ------ View list of available connection. $ dns2tcpc -z dns2tcp.hsc.fr -k <my-key> <dns_server> Available connection(s) : ssh-gw ssh6-home ssl-tunnel $ Line based connection to a remote ssl-tunnel host : $ dns2tcpc -r ssl-tunnel -l 4430 -k <my-key> -z dns2tcp._hsc.fr <dns_server> listening on port 4430 ... File configuration : $ cat > ~/.dns2tcprc << EOF domain = dns2tcp.hsc.fr resource = ssl-tunnel local_port = 4430 debug_level = 1 key = whateveryouwant server = the_dns_server # or scan /etc/resolv.conf EOF $ dns2tcpc Server : ------- File configuration : $ cat > ~/.dns2tcpdrc << EOF listen = x.x.x.x port = 53 user = nobody key = whateveryouwant chroot = /var/empty/dns2tcp/ domain = dns2tcp.hsc.fr resources = ssh:127.0.0.1:22 , smtp:127.0.0.1:25, pop3:10.0.0.1:110, ssh2:[fe80::1664]:22 EOF $ ./dns2tcpd -F -d 1 ----------[ Known Bugs ]---------- DNS desynchronisation dns2tcpd server not supported on Windows