This is a command line utility to resolve DNS requests via a SOCKS tunnel like Tor or a HTTP proxy.

Features

  • Provides anonymous DNS for any Windows application in combination with Tor
  • This way you can force Opera or Internet Explorer (examples) to use Tor for all communication
  • Can also be compiled and used on Linux or other *nix variants (also Mac OS X)

Project Samples

Project Activity

See All Activity >

Categories

DNS, Internet, Tunneling

License

BSD License

Follow DNS2SOCKS

DNS2SOCKS Web Site

Other Useful Business Software
Auth0 B2B Essentials: SSO, MFA, and RBAC Built In Icon
Auth0 B2B Essentials: SSO, MFA, and RBAC Built In

Unlimited organizations, 3 enterprise SSO connections, role-based access control, and pro MFA included. Dev and prod tenants out of the box.

Auth0's B2B Essentials plan gives you everything you need to ship secure multi-tenant apps. Unlimited orgs, enterprise SSO, RBAC, audit log streaming, and higher auth and API limits included. Add on M2M tokens, enterprise MFA, or additional SSO connections as you scale.
Sign Up Free
Rate This Project
Login To Rate This Project

User Ratings

★★★★★
★★★★
★★★
★★
2
0
0
1
0
ease 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 5 / 5
features 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
design 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 3 / 5
support 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 3 / 5

User Reviews

  • I compiled dns2socks on tomato base router, version 1.7 worked fine, but version 1.8 always failed: gcc -pthread -Wall -O2 -o dns2socks DNS2SOCKS.c [optware][asus:/tmp/mnt/sda2/compile/dns2socks]$ ./dns2socks /l:/var/log/dns2socks.log /q 127.0.0.1:7777 8.8.8.8:53 0.0.0.0:5252 DNS2SOCKS V1.8 (free software, use parameter /? to display help) Invalid address '127.0.0.1' and port '7777' specified for SOCKS server! I see the source: if(iRet) { //only for the DNS server also support name if(&g_sDnsSrvAddr==psAddr) { size_t uLen=strlen(szIpAndPort); if(uLen<256 && uLen) { ((struct sockaddr_in6*)&g_sDnsSrvAddr)->sin6_port=htons((uint16_t)atoi(szPort)); if(((struct sockaddr_in6*)&g_sDnsSrvAddr)->sin6_port) { g_sDnsSrvAddr.ss_family=AF_UNSPEC; //this marks usage of name *(char**)&((struct sockaddr_in6*)&g_sDnsSrvAddr)->sin6_addr=szIpAndPort; //use sin6_addr for pointer to name (128 bit -> large enough, alignment should also be fine) ((struct sockaddr_in6*)&g_sDnsSrvAddr)->sin6_flowinfo=(uint8_t)uLen; //use sin6_flowinfo for length return 1; //o.k. } } } OutputFatal("\nInvalid address '%s' and port '%s' specified for %s!\n", szIpAndPort, szPort, szParamName); return 0; //error } Are those means: if &g_sDnsSrvAddr!=psAddr, always return failed? Sorry i am a C language newbie.
  • Not actively supported and not working out of the box. Getting the message "Server actively refused connection" (by which I think it's the TOR SOCK server that's refusing). Set-up as follows: Windows 8.1 (fully updated). Latest TOR bundle (up and running ok). Latest DNS2SOCKS (version matching TOR bundle). Having configured the NIC for 127.0.0.1 preferred DNS, started the TOR bundle, started DNS2SOCKS, saw the requests listed in DNS2SOCKS console along with matching actively refused messages. It's unfortunate that DNS2SOCKS doesn't support IP6 - Yet?...
  • A very useful tool.
Read more reviews >

Additional Project Details

Operating Systems

Linux, Mac, Windows

Languages

English

Intended Audience

Advanced End Users, End Users/Desktop, Security Professionals

User Interface

Command-line

Programming Language

C

Related Categories

C DNS Software, C Internet Software, C Tunneling Software

Registered

2012-01-06