私は過去数日間、socks4/5プロキシを介したDNSリークを防ぐための良い解決策を探して髪を引っ張ってきました。
SocksiPy(-branch)モジュールを調べて、いくつかのもの(urllib、urllib2、dnstools)をラップしようとしましたが、それらはすべてDNS要求をリークしているようです。pyCurlもそうです。
proxychains /proxyresolvがsocks4/5プロキシを介してDNS要求をスローできることは知っています。また、SocksiPyと同じように、いくつかのLD_PRELOADライブラリを使用してモンキーパッチソケットの機能を実行しますが、その理由がわかりません。 socks4またはsocks5プロキシを介してDNSを送信しません。
Linuxの場合、libproxychains.soでCTypeを使用して解決できる可能性があると思いますが、マルチプラットフォームのものを探しているので、ソケットモジュールにモンキーパッチを適用するのが良い方法だと思います。
誰かがこれを回避するための良い方法を考え出しましたか?移植性のためにすべてをコード内で実行したいのですが、別のプロキシサーバーを実行することに頼りたくありません。
ありがとう!