mac修改局域网dns本质是为本机网络连接(如wi-fi)手动指定解析服务器,仅影响该设备;需通过图形界面或终端设置dns地址(如223.5.5.5、1.1.1.1),并强制刷新缓存(ventura及以上执行sudo dscacheutil -flushcache; sudo killall -hup mdnsresponder)才能生效。
mac 修改局域网 dns 服务器地址,本质就是为当前使用的网络连接(如 wi-fi 或以太网)手动指定 dns 解析服务器。这和改路由器上的 dns 不同——你在 mac 上设的是本机的 dns,只影响这台电脑,不改变整个局域网其他设备的设置。
图形界面设置(推荐大多数用户)
操作直观、无需命令,适合日常使用,设置后重启也不丢失:
- 点击左上角苹果图标 → “系统设置”
- 左侧选“网络”,右侧找到你正在用的连接(比如“Wi-Fi”或“以太网”)
- 点该连接右侧的“更多设置…” → 切换到“DNS”标签页(可能需要向下滚动才能看到)
- 点左下角【+】号,依次输入两个 DNS 地址,例如:
223.5.5.5(阿里主用)
1.1.1.1(Cloudflare 备用)
输入一个后按回车再输下一个;顺序决定优先级,系统从上往下尝试 - 点“好”保存 → 返回网络主界面,点右下角“应用”使配置立即生效
终端命令设置(更底层、适合多网络或脚本化)
绕过图形界面直接写入系统配置,对 Chrome 预加载、某些后台服务更可靠:
- 打开“终端”,执行:
networksetup -listallnetworkservices
记下你要改的服务名,如 Wi-Fi 或 Ethernet - 设 DNS(以 Wi-Fi 为例):
sudo networksetup -setdnsservers "Wi-Fi" 223.5.5.5 1.1.1.1 - 恢复自动获取(如需退回):
sudo networksetup -setdnsservers "Wi-Fi" automatic
必须刷新 DNS 缓存(关键一步,否则不生效)
改完 DNS 后,系统仍可能沿用旧缓存记录。这步跳过,等于白改:
- macOS Ventura 13 及更新版本(你当前系统大概率是):
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder - macOS Monterey 12 及更早版本:
sudo killall -HUP mDNSResponder - 回车后输入管理员密码(屏幕不显示字符,输完直接回车)
验证是否真正生效
别只看设置界面,要确认系统实际在用哪个 DNS:
- 终端执行:
scutil --dns | grep nameserver
输出里应出现你刚填的 IP 地址 - 实测解析效果(任选一个域名):
dig github.com @1.1.1.1 +short
dig github.com @223.5.5.5 +short
看是否能返回 IP,并对比响应速度











