Github 上有哪个 Python 脚本能通过 socks proxy 将 dns.google.com 的解析转到本地侦听? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
pq
V2EX    问与答

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

  •  
  •   pq 2017-12-30 20:27:17 +08:00 3053 次点击
    这是一个创建于 2910 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

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

    15 条回复    2017-12-31 09:11:10 +08:00
    lniwn
        1
    lniwn  
       2017-12-30 20:31:33 +08:00 via iPhone
    > 脚本的上级 dns 是 dns.google.com

    标准 53 端口查询越过墙?能实现的话也不会有那么多了。
    pq
        2
    pq  
    OP
       2017-12-30 20:44:56 +08:00
    @lniwn 不是的,是 https ! https://dns.google.com/
    lniwn
        3
    lniwn  
       2017-12-30 20:47:32 +08:00 via iPhone
    @pq ip 都被 ban 了,应用层协议不管怎么换都无济于事。
    pq
        4
    pq  
    OP
       2017-12-30 20:53:28 +08:00
    @lniwn 晕死,我说了,是走 socks proxy 去访问,这个 socks 代理肯定不是一般的,而是能翻墙的。
    zmz125000
        5
    zmz125000  
       2017-12-30 20:57:19 +08:00 via Android
    目前用 DNSCrypt + ChinaDNS
    pq
        6
    pq  
    OP
       2017-12-30 21:13:24 +08:00
    @zmz125000 我目前也是个 dnscrypt-proxy,但它无法同时配置多个解析地址并自动选择一个可用的,单一的地址,经常解析失败,基本上隔几天就得上路由器修改配置才能正常工作,而 dns.google.com 则足够稳定,通过 socks 去访问,不用担心解析失败。
    kiolygenius
        7
    kiolygenius  
       2017-12-30 22:29:04 +08:00
    PRCDNS
    pq
        8
    pq  
    OP
       2017-12-30 22:37:06 +08:00
    @kiolygenius 刚才看了一下项目页面,它是基于 python 3.5 的,而且只支持 TCP 查询,无法跟 dnsmasq 搭配使用。
    ysc3839
        9
    ysc3839  
       2017-12-30 22:51:48 +08:00 via Android
    @pq dnsmasq 可以“同时配置多个解析地址并自动选择一个可用的”。
    pq
        10
    pq  
    OP
       2017-12-30 23:19:18 +08:00
    @ysc3839 看来你没用过移动宽带,它的 dns 查询,比墙只是单纯污染特定 dns 更厉害,它劫持所有 dns 查询请求。如果一个 dnsmasq 就能解决,我何苦呢?
    lovefantasy
        11
    lovefantasy  
       2017-12-30 23:25:24 +08:00 via Android
    如果是单纯的转发 iptables 就可以吧,如果要是解析的话也不难,参考 ss
    pq
        12
    pq  
    OP
       2017-12-30 23:32:42 +08:00
    @lovefantasy 我的 ssr 是 python 版本的,没有 ss-redir 或 ss-tunnel,只有 local,而且它不像 ss 的 local,不能配置 udp 前转。
    lovefantasy
        13
    lovefantasy  
       2017-12-31 00:10:54 +08:00 via Android
    ss 不是有转发 UDP 的功能么,服务端肯定也有对应的实现
    ysc3839
        14
    ysc3839  
       2017-12-31 01:01:36 +08:00 via Android
    @pq 配合 DNSCrypt 不就好了?
    0987363
        15
    0987363  
       2017-12-31 09:11:10 +08:00 via Android
    用 tcp 请求 dns。 然后走 ss
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5056 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 07:31 PVG 15:31 LAX 23:31 JFK 02:31
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86