我正在运行 macOS 10.14.6。
如果我没有插入以太网,并转到网络 -> WiFi -> 高级 -> DNS,则我拥有默认 DNS 服务器A.A.A.A
和B.B.B.B
。这些服务器呈灰色,我无法删除它们。如果我添加自定义 DNS 服务器,它将替换这些默认服务器,如果我删除自定义服务器,则默认服务器将恢复。
查看/etc/resolv.conf
,列出的两个名称服务器与上面的相匹配:
domain x.y.com
nameserver A.A.A.A
nameserver B.B.B.B
现在,如果我插入以太网并以与上述相同的方式查看默认 DNS 服务器,我会看到服务器C.C.C.C
和D.D.D.D
。查看/etc/resolv.conf
,我发现以前的默认服务器已被覆盖:
domain u.v.com
nameserver C.C.C.C
nameserver D.D.D.D
但是,如果我返回 WiFi DNS 设置,我仍然会看到相同的默认值A.A.A.A
和B.B.B.B
。这意味着默认值必须在除之外的某个地方定义/etc/resolv.conf
。这些定义位于哪里,我可以更改它们吗?
答案1
configd
macOS 的 DNS 配置由“系统配置”系统( 、/Library/Preferences/SystemConfiguration
、scutil
等)处理,该系统处理 macOS 的大部分网络设置。要查看系统知道的所有 DNS 服务器以及它将向何处发送哪些类型的查询,请运行scutil --dns
。
macOS 的 DNS 解析系统比旧的 Unix 平面文件(如)要复杂一些/etc/resolv.conf
,因为在现代,人们会遇到需要将不同类型的查询发送到不同的 DNS 服务器的情况。例如,如果您有 VPN 连接要工作,并且您在 example.com 工作,您可能希望所有针对 example.com 的查询都通过您的 VPN 隧道发送到工作中的内部视野 DNS 服务器,而您可能希望所有其余查询都发送到您的家庭 ISP 的 DNS 服务器以降低延迟(这样,当您碰巧建立 VPN 连接时,工作中的窥探系统管理员就无法窥探您的系统恰好正在分派的非工作 DNS 查询)。
答案2
我敢打赌你的网络有 DHCP,并且 DNS 是由它设置的。