TL;DR:iPhone(iOS/iPadOS)没有安卓那种系统级「私人DNS」开关。要在 iPhone 上使用加密DNS(DoT 或 DoH),唯一的官方途径是安装一份配置描述文件(.mobileconfig)。本文以 AdGuard DNS 官方提供的免费描述文件为例,手把手教你下载、安装、信任证书,并验证生效。整个过程大约5分钟。
为什么iPhone不像安卓那样有私人DNS开关
这是很多从安卓换到iPhone的用户最大的困惑:我在安卓上三两下就能开好私人DNS,到了iPhone翻遍「设置」也找不到。原因很简单——苹果在 iOS 14 开始才原生支持加密DNS,但它没有给普通用户开放手动填写hostname的入口。
苹果的设计思路是:加密DNS属于「系统级网络配置」,要么由 MDM(移动设备管理)企业推送,要么由 App 通过 NetworkExtension 接口实现,要么通过安装一份现成的配置描述文件来完成。对普通个人用户来说,安装描述文件是最简单、最不需要技术基础的方式。
描述文件本质上是一个 XML 格式的配置包(后缀 .mobileconfig),里面写好了你要用的 DoT/DoH 服务器地址、协议类型、证书等信息。iPhone 读取后就会把系统DNS切换到加密通道。
准备工作
开始之前,请确认以下几点:
- 你的 iPhone 系统版本在 iOS 14 或以上(iPhone 6s 及更新机型均可升级)。更早的系统不支持加密DNS描述文件。
- 你需要用 Safari 浏览器打开描述文件下载页面(用微信或其他浏览器打开可能无法触发安装流程)。
- 记住你的锁屏密码,安装描述文件时需要输入。
第一步:下载加密DNS描述文件
我们以 AdGuard 官方公共DNS为例,它提供免费、可直接下载的 DoT/DoH 描述文件,不需要注册。
- 打开 iPhone 上的 Safari 浏览器。
- 访问 AdGuard 公共DNS页面:
https://adguard-dns.io/en/public-dns.html - 页面往下滑,找到 iOS 板块。
选择你想要的DNS服务器类型:
- Default server:拦截广告和跟踪器
- Non-filtering server:不过滤任何内容,纯加密(推荐只想要隐私保护的用户)
- Family protection:拦截广告+成人内容+安全搜索
- 选好后点击 「Download configuration profile」(下载配置描述文件)按钮。
- Safari 会弹出提示:「此网站正尝试下载一个配置描述文件,要允许吗?」,点「允许」。
如果你想自定义(比如排除某些Wi-Fi网络不走加密DNS),可以点「Open profile constructor」进入定制页面,选择协议类型(DoT 或 DoH)后再下载。
第二步:在设置中安装描述文件
下载完成后,描述文件并不会自动安装,你需要手动确认:
- 打开 iPhone 自带的「设置」App。
在设置首页顶部,你会看到一条「已下载描述文件」(Profile Downloaded)的提示,点进去。
- 如果没看到这条提示,手动进入「设置 → 通用 → VPN与设备管理」,在「已下载的描述文件」下方找到刚才下载的 AdGuard DNS 描述文件,点它。
- 进入描述文件详情页后,点右上角的「安装」。
- 系统会要求输入你的锁屏密码,输入继续。
- 接下来会弹出警告,说明该描述文件将被安装,再次点右上角「安装」确认。
- 等待几秒,屏幕顶部出现「已安装」字样即表示描述文件安装成功,点「完成」。
第三步:手动信任根证书(关键!很多人卡在这一步)
这是iPhone加密DNS流程里最容易被忽略、但又最关键的一步。描述文件装好了不代表立刻生效——如果描述文件里包含根证书,iOS出于安全考虑,默认不信任手动安装的根证书,必须手动打开信任开关。
操作路径:
- 打开「设置」→「通用」。
- 滑到页面最底部,点「关于本机」。
- 一直滑到最底部,找到「证书信任设置」(Certificate Trust Settings),点进去。
- 你会看到一个叫「针对根证书启用完全信任」的区域,下面列出了你刚安装的描述文件带来的证书(通常名字里带 AdGuard 或 DNS)。
- 打开该证书对应的开关,在弹出的确认框中点「继续」。
完成这一步后,加密DNS通道才真正建立起来。如果你跳过了这步,DNS查询可能仍然走明文,或者直接报错。
第四步:验证加密DNS是否生效
怎么确认iPhone已经在用加密DNS了?
- 打开 Safari,访问
https://1.1.1.1/help(Cloudflare 的检测页)。页面会自动检测你的网络环境,其中「Using DNS over HTTPS (DoH)」或「Using DNS over TLS (DoT)」一项显示 Yes,就说明加密DNS已经生效。 - 也可以进入「设置 → 通用 → VPN与设备管理」,在「描述文件」一栏看到你刚才安装的 AdGuard DNS 描述文件,说明它处于激活状态。
- 如果想临时关闭,在同一描述文件详情页点「删除描述文件」即可恢复默认DNS。
iPhone加密DNS的几种实现方式对比
除了本文介绍的描述文件方式,iPhone上还有其他实现加密DNS的途径,简单对比一下:
| 方式 | 原理 | 优点 | 缺点 |
|---|---|---|---|
| 配置描述文件 | 系统级DNS配置 | 免费、原生、不耗电 | 需要手动装证书 |
| DNS类App(如1.1.1.1、AdGuard App) | 通过VPN隧道接口实现 | 图形界面友好、可一键开关 | 后台常驻,略有耗电 |
| 路由器级加密DNS | 在路由器上配DoT/DoH | 所有设备统一生效 | 需要路由器支持 |
描述文件方式是苹果官方支持的、最干净的方案——它不依赖任何App后台运行,重启手机后依然生效。如果你还不确定 DoT 和 DoH 该选哪个,可以先阅读DoH/DoT/DoQ 三种加密协议对比了解区别,再回到本教程选择对应的描述文件。
常见问题(FAQ)
问:iPhone 支持 DoH 吗?和 DoT 有什么区别?
答:支持。从 iOS 14 开始,苹果同时支持 DoT(DNS over TLS)和 DoH(DNS over HTTPS)两种加密协议,都可以通过描述文件配置。两者加密效果类似,主要区别在于端口和兼容性——DoT 用 853 端口,部分老旧防火墙可能拦截;DoH 走 443 端口,和正常网页流量混在一起更难被屏蔽。如果不确定选哪个,DoH 的兼容性通常更好。
问:不装描述文件,iPhone 能开私人DNS吗?
答:不能。苹果没有在系统设置里给普通用户开放手动填写DoT主机名的入口。你要么装描述文件,要么装一个通过 NetworkExtension 实现加密DNS的App(如 Cloudflare 的 1.1.1.1 App、AdGuard App),没有第三种「开关式」的方法。
问:安装描述文件安全吗?会不会被监控?
答:只要你从官方来源(如 AdGuard、Cloudflare、Google 官方页面)下载描述文件,就是安全的。描述文件只修改你的DNS解析服务器地址,不会读取你的其他数据。但不要从不明第三方网站下载描述文件,因为恶意描述文件可能包含VPN配置、证书等,存在风险。
问:换了Wi-Fi或者用蜂窝数据,加密DNS还生效吗?
答:生效。描述文件配置的是系统级DNS,Wi-Fi 和蜂窝移动数据都走同一条加密通道,不需要分别设置。如果你在描述文件构造器里排除了某些Wi-Fi名称,那在那些Wi-Fi下会自动回退到明文DNS。
参考来源
- Apple 官方支持 - 在 iPhone 上安装或移除配置描述文件 —— 支撑文中「设置 → 通用 → VPN与设备管理」查看和安装描述文件的流程。
- Apple 官方支持 - 手动安装的证书描述文件如何开启信任 —— 支撑文中「设置 → 通用 → 关于本机 → 证书信任设置」手动信任根证书的步骤。
- Apple Developer 文档 - DNSSettings Payload —— 支撑文中 iOS 14+ 通过描述文件配置 DoT/DoH 的技术事实。
- AdGuard DNS 官方页面 - Connect to public AdGuard DNS servers(iOS板块) —— 支撑文中下载AdGuard描述文件、选择服务器类型、安装步骤的具体操作。