DNS
在 Mac 上使用加密 DNS
普通 DNS 查询是不加密的。在 macOS 11 及更高版本中,安装 DNS 设置描述文件后,即可通过 HTTPS 或 TLS 发送 DNS 查询。
症状
- 希望网络上的其他设备无法读取 DNS 查询。
- 安装 DNS 描述文件后,酒店或咖啡馆的登录页面打不开。
- 安装 DNS 描述文件后,公司内部名称无法使用。
可能的原因
- 明文 DNS。默认情况下,Mac 以不加密的方式把 DNS 查询发给网络的服务器。
- DNS 设置描述文件。Apple 的 DNS Settings 负载会指定一个使用 HTTPS 或 TLS 协议的加密 DNS 服务器。
- 描述文件屏蔽了网络自身的 DNS。强制门户和公司网络通常需要使用它们自己的 DNS 服务器才能正常工作。
如何检查
查找 DNS 描述文件。在 macOS 15 及更高版本中,选取苹果菜单 >“系统设置”>“通用”>“设备管理”。
在 macOS 13 和 14 中,选取苹果菜单 >“系统设置”>“隐私与安全性”>“描述文件”。
显示 macOS 当前使用的 DNS 配置。
scutil --dns
如何修复
从 DNS 服务商处获取描述文件。许多服务商都为 Apple 设备提供了描述文件。
打开描述文件,macOS 会将其添加到“已下载”部分。
在 macOS 15 及更高版本中,选取苹果菜单 >“系统设置”>“通用”>“设备管理”。
在 macOS 13 和 14 中,选取苹果菜单 >“系统设置”>“隐私与安全性”>“描述文件”。
连按“已下载”下方的描述文件,阅读其内容,然后点按“安装”。
要停用加密 DNS,请选择该描述文件并点按移除按钮。
如果登录页面打不开,请移除描述文件,登录后再重新安装。
使用 Kilobat
CLI 会根据提供的 HTTPS 端点生成一个 DNS over HTTPS 描述文件。安装前请先检查它。
kilobat dns-profile https://dns.quad9.net/dns-query > Kilobat-DNS.mobileconfigKilobat 不会安装描述文件。请按照上述步骤安装。
常见问题
描述文件对所有网络都有效吗?
Apple 的文档指出,来自 MDM 的描述文件仅适用于受管理的 Wi-Fi 网络。自行安装的描述文件也适用于蜂窝网络。
可以移除描述文件吗?
可以。在“设备管理”或“描述文件”中选择它,然后点按移除按钮。某些来自机构的描述文件只有管理员才能移除。
参考资料
- Apple Developer:DNSSettings payload
- Apple 支持:使用配置描述文件统一 Mac 电脑上的设置
- Apple 支持:使用配置描述文件(macOS 14 使用手册)
- Apple 支持:在 Mac 上更改 DNS 设置
参考资料核查于 2026年10月29日。man 手册页为 macOS 自带版本;在“终端”中用 man <name> 打开。