[tor-commits] [stem/master] Issuing DNS lookups via tor in client usage example
atagar at torproject.org
atagar at torproject.org
Wed Aug 7 16:48:27 UTC 2013
commit 4fc65393374ed32a9c67c11758b0c5b94ed6f5f5
Author: Damian Johnson <atagar at torproject.org>
Date: Wed Aug 7 09:49:25 2013 -0700
Issuing DNS lookups via tor in client usage example
Suggestion from Julian to issue DNS lookups via tor. This is based on...
http://www.talesofacoldadmin.com/2012/11/13/proxying-dns-with-python.html
---
docs/tutorials/to_russia_with_love.rst | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/docs/tutorials/to_russia_with_love.rst b/docs/tutorials/to_russia_with_love.rst
index 5c9883a..97c4da7 100644
--- a/docs/tutorials/to_russia_with_love.rst
+++ b/docs/tutorials/to_russia_with_love.rst
@@ -20,7 +20,7 @@ Tor makes `configuring your exit locale <https://www.torproject.org/docs/faq.htm
In the following example we're using stem to `start Tor <../api/process.html>`_, then reading a site through it with `SocksiPy <http://socksipy.sourceforge.net/>`_. This is not always reliable (some relays are lemons) so you may need to run this more than once.
-**Do not rely on the following not to leak.** Though it seems to work, DNS resolution and other edge cases might expose your real IP. If you have a suggestion for how to improve this example then please `let me know <http://www.atagar.com/contact/>`_!
+**Do not rely on the following not to leak.** Though it seems to work there may be edge cases that expose your real IP. If you have a suggestion for how to improve this example then please `let me know <http://www.atagar.com/contact/>`_!
::
@@ -40,6 +40,13 @@ In the following example we're using stem to `start Tor <../api/process.html>`_,
socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS5, '127.0.0.1', SOCKS_PORT)
socket.socket = socks.socksocket
+ # Perform DNS resolution through the socket
+
+ def getaddrinfo(*args):
+ return [(socket.AF_INET, socket.SOCK_STREAM, 6, '', (args[0], args[1]))]
+
+ socket.getaddrinfo = getaddrinfo
+
def query(url):
"""
More information about the tor-commits
mailing list