V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
LxnChan
V2EX  ›  Android

国内的 ROM 如何换掉移动数据的 DNS?

  •  
  •   LxnChan · 2022-02-27 20:13:26 +08:00 · 8231 次点击
    这是一个创建于 779 天前的主题,其中的信息可能已经有所发展或是发生改变。

    目前我的系统是 Miui 13 ,有电脑(可以 adb ),有没有办法换掉移动数据从运营商获取的 DNS ?

    大家有其他类型 Android 系统(类原生、原生、flyme 、ColorOS 等)的解决方案也可以写在这,准备出一篇文章专门记载一下这类的操作方法。

    注意:这里问的是移动数据(或者叫流量、3G/4G/5G ),不是局域网也不是家用 /商用宽带!!!

    请保持对陌生人的友善。

    20 条回复    2022-02-28 16:41:52 +08:00
    Love4Taylor
        1
    Love4Taylor  
       2022-02-27 20:15:55 +08:00
    私人 DNS ,也就是 DoT 。
    d7101120120
        2
    d7101120120  
       2022-02-27 20:16:28 +08:00
    a22271001
        3
    a22271001  
       2022-02-27 20:19:05 +08:00
    yanqiyu
        4
    yanqiyu  
       2022-02-27 20:20:51 +08:00
    用有公网的家宽搭一个 DoT 服务器就行
    HXHGTS
        5
    HXHGTS  
       2022-02-27 20:53:15 +08:00 via Android
    Adguard 客户端,或者一些科学上网工具都可以支持,建议采用第二种,一步到位
    fenghuang
        6
    fenghuang  
       2022-02-27 22:25:50 +08:00
    这个应该时运营商下发的,不允许修改
    lovelylain
        7
    lovelylain  
       2022-02-27 22:40:14 +08:00 via Android
    本地运行 trojan-go ,apn 里设置代理为
    bclerdx
        8
    bclerdx  
       2022-02-27 22:43:34 +08:00
    @Love4Taylor 这个仅对 WLAN 流量起作用,对运营商的移动数据无效。
    cev2
        9
    cev2  
       2022-02-27 22:52:51 +08:00
    @bclerdx #8 并不是,安卓 P+的私人 DNS ( DoT )对蜂窝网络和 WLAN 都支持,只要是 APP 使用了系统的 DNS 解析器。很多 APP 可能自己内置了 httpdns ,这类 APP 不走系统的 DoT 。
    bclerdx
        10
    bclerdx  
       2022-02-27 22:57:01 +08:00
    @cev2 难道 Android 9 及以上版本的私人 DNS 改了么?我记得之前 Google 的页面说仅对 WLAN 流量起作用啊?
    cev2
        11
    cev2  
       2022-02-27 23:37:19 +08:00
    @bclerdx #10 我不知道你说的那个信息来源,但可能不是这个私人 DNS 功能。
    在安卓 P 之前,原生是不自带 DoT 的,在不 root 情况下想修改 DNS 可以通过 VPN 来实现。或者连接 WLAN 时不使用 DHCP 获取 DNS ,手动设置单个 WiFi 的 DNS ,这个符合你说的仅对 WLAN 有效。
    安卓 P 原生自带了私人 DNS ( DoT )(其实翻译成隐私 DNS 可能更好),对蜂窝网络和 WLAN 都生效。但开启 VPN 时,VPN 的 DNS 优先级高于私人 DNS ,此时可能会不生效。
    安卓 Q 上对此做了改动,私人 DNS 的优先级高于 VPN 的 DNS ,即使开启了 VPN ,私人 DNS 依然有效。
    但这一切的前提是 APP 使用了系统的 DNS 解析器,大量的 APP 有自己内置 httpdns ,这会导致上面那些操作对这些 APP 都无效。
    Zy143L
        12
    Zy143L  
       2022-02-28 01:29:51 +08:00 via Android
    使用 adgurad clash 进行 DNS 覆盖
    docx
        13
    docx  
       2022-02-28 01:39:08 +08:00 via Android
    较新的系统都有私人 DNS 设置
    如果没有的,通过安装第三方软件实现
    harwck
        14
    harwck  
       2022-02-28 05:56:56 +08:00
    Clash 直接全局或者 VPN 连回家
    zxjunz
        15
    zxjunz  
       2022-02-28 09:46:55 +08:00
    设置->高级->私人 DNS
    linuxyz
        16
    linuxyz  
       2022-02-28 11:46:37 +08:00   ❤️ 1
    1, 手机扶墙。 设置全局 VPN(不推荐), 或指定应用 VPN(需要把系统 Android System 和 Settings 应用加进来)
    2, MIUI13 是 Settings -> Connection & sharing ->Private DNS
    3, 在 Private DNS provider hostname 填入 dns.google 或者你喜欢的 DoH provider
    这里有一些可以参考 https://dnsprivacy.org/public_resolvers/
    大陆也有几家 https://notecore.net/post/340

    你也可以自建 DoH: 需要有 WebHosting, 域名,Certificate, DoH 服务软件, 自建需要花点小钱钱和时间。

    就我观察,国行的 MIUI13 ROM 无论你怎么配都会尝试 114.114.114.114
    当然它也会尝试你指定的 Private DNS 。

    另外 Private DNS 是全局生效的,八成会影响 WX 公众号的显示啥的。
    感觉 WX 做了运营商的 CDN ,即便你不把 WX 加入 VPN, 启用 Private DNS 后解析到的 IP 也已经受影响了。
    BrookO
        17
    BrookO  
       2022-02-28 11:47:10 +08:00
    之前我 DNS 部署在公网会被 ban 端口,会警告你违反电信管理条例,,有公网的家宽不清楚会不会被 ban
    linuxyz
        18
    linuxyz  
       2022-02-28 12:40:30 +08:00
    @BrookO 都会,国内的家宽都是不能开服务的, 都需要备案!
    BrookO
        19
    BrookO  
       2022-02-28 14:03:02 +08:00
    @linuxyz 域名备案过了,dns 部署在公网上是需要资质的
    docx
        20
    docx  
       2022-02-28 16:41:52 +08:00 via Android
    @BrookO 要用非标准端口,否则即使是买云服务器也会被停
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   934 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 20:48 · PVG 04:48 · LAX 13:48 · JFK 16:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.