V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
baobao1270
V2EX  ›  DNS

搭了个 DoT 服务器玩玩

  •  
  •   baobao1270 · May 16, 2020 · 10074 views
    This topic created in 2178 days ago, the information mentioned may be changed or developed.

    网上好多教程都很繁琐,自己摸索了一下,感觉最简单的方法就是 Nginx 反代 Cloudflare DNS

    stream {
        upstream dot{
            zone dot 64k;
            server 1.1.1.1:853;
        }
    
        server{
                listen 853 ssl;
                ssl_certificate      /path/to/full-chain.cer;
                ssl_certificate_key  /path/to/private-key.key;
    
                proxy_pass dot;
                proxy_ssl on;
        }
    }
    

    自己测试了一下,有些国内网站(知乎,哔哩哔哩)的 CDN 好像会被解析到海外节点。不知道大家有没有办法解决这个问题。

    顺便问一下,阿里云上海搭建 DoH (只开 853 端口,不开 53 端口)安全吗,会被查吗?

    20 replies    2020-06-04 20:36:58 +08:00
    windyland
        1
    windyland  
       May 16, 2020 via Android   ❤️ 2
    smart dns 国内外分流,然后 tls 包装?
    MeteorCat
        2
    MeteorCat  
       May 16, 2020 via Android
    先插眼,看看有没有大手子分析下法律风险
    marquina
        3
    marquina  
       May 16, 2020   ❤️ 1
    分流的话推荐一下自己的 ts-dns: https://github.com/wolf-joe/ts-dns
    端口设成 853 简直是在裸奔……设成其它端口是最起码的,反正支持非标准端口的 DNS 工具一抓一大把
    jinliming2
        4
    jinliming2  
       May 16, 2020
    > 有些国内网站(知乎,哔哩哔哩)的 CDN 好像会被解析到海外节点

    Cloudflare 的 DNS 不支持 EDNS client subnet (ECS) 功能(因为涉及隐私,所以不收集客户端 IP )。
    可以尝试使用 Google (或者其他支持 ECS 技术)的 DoT 服务试试。

    https://developers.google.com/speed/public-dns/docs/dns-over-tls
    https://developers.google.com/speed/public-dns/docs/ecs

    我现在使用的是 Google 的 DoH 服务,平常用着还行……
    love
        5
    love  
       May 16, 2020
    这个主要用来干什么的?
    billytom
        6
    billytom  
       May 16, 2020 via iPhone
    为什么不反代 gg 的,支持 edns,就没你说的那个问题,另外端口怎么都换一下吧
    billytom
        7
    billytom  
       May 16, 2020
    @windyland 请问怎么可以 tls 或者 doh 包装 smartdns 的结果?试过用 tcp 方式对外服务(私人用),不用几分钟连本机都被污染了。。。
    skylancer
        8
    skylancer  
       May 16, 2020
    那为啥不用 DoH 呢
    如果为了 Android 自带的 DoT Client, 那为什么不直接用比如 Clash AdGuard 的 DNS 解析呢
    c978R77Le1z2f8u9
        9
    c978R77Le1z2f8u9  
       May 16, 2020
    1.1.1.1 不支持 ECS,除了 Google 可以用 9999
    HugeDicker
        10
    HugeDicker  
       May 17, 2020
    最简单的方法是 adguard home
    zro
        11
    zro  
       May 17, 2020
    一直以为 Nginx 只能在 Linux 运行,刚手贱从 OpenWRT 的仓库搜了下,发现居然有结果。。有空又要研究一下这东东,唉。。不知道资源占用大不大~~😂
    kojirou
        12
    kojirou  
       May 17, 2020
    就查个 dns 到底有什么用啊?为什么不直接 fq 啊?
    alphatoad
        13
    alphatoad  
       May 17, 2020
    会被搞。我记得阿里的工程师有分享过 DoT/DoH 嗅探
    ysc3839
        14
    ysc3839  
       May 17, 2020 via Android   ❤️ 1
    @zro OpenWrt 就是 Linux 呀,只不过是针对嵌入式设备的。
    jinliming2
        15
    jinliming2  
       May 17, 2020 via iPhone   ❤️ 1
    @zro 1,nginx 可以在 windows 上跑,2,OpenWRT 也是 Linux
    systemcall
        16
    systemcall  
       May 17, 2020 via Android   ❤️ 1
    @zro 以前试过 newifi 上的 nginx,跑 php 开销挺大的,很卡,现在的无线路由应该不至于了
    你要是乐意,可以把 openwrt 的 luci 放在 nginx 上面跑,编译的时候调一下就行了
    zro
        17
    zro  
       May 17, 2020
    @systemcall #16 谢谢,目前有个旁路挂了 lighttpd 跑 Web-Dav,目录是 /www/dav/,再挂个 U 盘,目录是 /sda1/,本来想通过 Web-Dav 访问到 U 盘 /sda1/netUSB/的内容,就设了软 ln 指定到 /www/dav/netUSB,奇怪的是在浏览器下,能访问到 /www/dav/netUSB 的内容,除了没上传功能都正常;而在 iOS 使用 web-dav 的客户端,/www/dav/netUSB 倒成了一个文件,打都打不开~~😒

    不知道 nginx 跑 Web-Dav 是不是也这样,不是的话就把 Lighttpd 换了。。
    ifxo
        18
    ifxo  
       May 17, 2020
    不用自己搭建,现成的一大堆 https://github.com/xyzmos/GeekDNS
    Bunnyranch
        19
    Bunnyranch  
       Jun 4, 2020
    @jinliming2 俺用谷勾的 DOH 什么网站都打不开啊
    jinliming2
        20
    jinliming2  
       Jun 4, 2020
    @Bunnyranch 你检查一下你的 DoH 解析成功了吗? DoH 的地址能成功返回吗?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   781 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 58ms · UTC 21:37 · PVG 05:37 · LAX 14:37 · JFK 17:37
    ♥ Do have faith in what you're doing.