Github 上有哪个 Python 脚本能通过 socks proxy 将 dns.google.com 的解析转到本地侦听?

2017-12-30 20:27:17 +08:00
 pq

一、这个脚本能在本地启动一个 dns 解析服务,供其它应用查询 dns ; 二、脚本的上级 dns 是 dns.google.com ,通过 socks proxy 去访问; 三、能在 Python 2.7 上跑,不依赖第三方库,因为是在路由器上跑的。

找了很久都没找到合适的,自己又不会写。

BTW:LEDE 官方软件库里,本来有一个叫 http_dns_proxy 的,正适合我这种应用场景,但它不知因为什么 BUG,完全不 work。

2626 次点击
所在节点    问与答
15 条回复
lniwn
2017-12-30 20:31:33 +08:00
> 脚本的上级 dns 是 dns.google.com

标准 53 端口查询越过墙?能实现的话也不会有那么多🐤了。
pq
2017-12-30 20:44:56 +08:00
@lniwn 不是的,是 https ! https://dns.google.com/
lniwn
2017-12-30 20:47:32 +08:00
@pq ip 都被 ban 了,应用层协议不管怎么换都无济于事。
pq
2017-12-30 20:53:28 +08:00
@lniwn 晕死,我说了,是走 socks proxy 去访问,这个 socks 代理肯定不是一般的,而是能翻墙的。
zmz125000
2017-12-30 20:57:19 +08:00
目前用 DNSCrypt + ChinaDNS
pq
2017-12-30 21:13:24 +08:00
@zmz125000 我目前也是个 dnscrypt-proxy,但它无法同时配置多个解析地址并自动选择一个可用的,单一的地址,经常解析失败,基本上隔几天就得上路由器修改配置才能正常工作,而 dns.google.com 则足够稳定,通过 socks 去访问,不用担心解析失败。
kiolygenius
2017-12-30 22:29:04 +08:00
PRCDNS
pq
2017-12-30 22:37:06 +08:00
@kiolygenius 刚才看了一下项目页面,它是基于 python 3.5 的,而且只支持 TCP 查询,无法跟 dnsmasq 搭配使用。
ysc3839
2017-12-30 22:51:48 +08:00
@pq dnsmasq 可以“同时配置多个解析地址并自动选择一个可用的”。
pq
2017-12-30 23:19:18 +08:00
@ysc3839 看来你没用过移动宽带,它的 dns 查询,比墙只是单纯污染特定 dns 更厉害,它劫持所有 dns 查询请求。如果一个 dnsmasq 就能解决,我何苦呢?
lovefantasy
2017-12-30 23:25:24 +08:00
如果是单纯的转发 iptables 就可以吧,如果要是解析的话也不难,参考 ss
pq
2017-12-30 23:32:42 +08:00
@lovefantasy 我的 ssr 是 python 版本的,没有 ss-redir 或 ss-tunnel,只有 local,而且它不像 ss 的 local,不能配置 udp 前转。
lovefantasy
2017-12-31 00:10:54 +08:00
ss 不是有转发 UDP 的功能么,服务端肯定也有对应的实现
ysc3839
2017-12-31 01:01:36 +08:00
@pq 配合 DNSCrypt 不就好了?
0987363
2017-12-31 09:11:10 +08:00
用 tcp 请求 dns。 然后走 ss

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/418912

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX