Mac刷新DNS缓存需按系统版本执行对应命令:Sonoma至Catalina用sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder,Mojave至Sierra仅需后者,El Capitan及更早需先查进程再杀;推荐统一用复合命令sudo dscacheutil -flushcache && sudo killall -HUP mDNSResponder,并通过scutil --dns验证生效。
mac 通过终端刷新本地 dns 缓存,核心是清空系统缓存并重启负责域名解析的服务进程。不同 macos 版本调用的底层服务不同,用错命令可能无效——不是输了就完事,得匹配你的系统。
先确认你用的是哪个 macOS 版本
按 Command + 空格 打开 Spotlight,输入“关于本机”并回车,看顶部显示的系统名称和版本号(比如 macOS Sonoma 14.7 或 macOS Ventura 13.6)。这是后续选命令的前提。
按版本执行对应命令
打开“终端”(可在 Spotlight 搜索“终端”),复制粘贴以下任一命令:
- Sonoma (14)、Ventura (13)、Monterey (12)、Big Sur (11)、Catalina (10.15): sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
- Mojave (10.14)、High Sierra (10.13)、Sierra (10.12): sudo killall -HUP mDNSResponder
- El Capitan (10.11) 及更早: 先运行 ps aux | grep -E '(mDNS|discovery)' 查看进程名; 若含 discoveryd,执行 sudo killall -HUP discoveryd; 若含 mDNSResponder,执行 sudo killall -HUP mDNSResponder
推荐新手用这一条(兼容性好、不易出错)
不管什么版本(Catalina 及以上都支持),直接用复合命令,确保两步动作严格顺序执行:
sudo dscacheutil -flushcache && sudo killall -HUP mDNSResponder
输完回车后,提示输入密码——键盘不显示字符,输完直接回车即可。终端返回新提示符(如 zsh% 或 bash$)且无报错,即表示完成。
免费 DNS 与邮件安全分析(IntoDNS.ai):包括 DNSSEC、SPF、DKIM、DMARC、MTA-STS、BIMI、SMTP STARTTLS、FCrDNS、黑名单、发件人要求及报告。
刷新后建议验证是否真生效
光看终端没报错不够。在终端中运行:
scutil --dns
重点看输出里 nameserver 开头的行。如果全是 192.168.x.x 或 10.x.x.x,说明还在用路由器默认 DNS,容易被劫持或响应慢。可手动在「系统设置 → 网络 → 高级 → DNS」中添加 1.1.1.1 或 8.8.8.8,保存后系统会自动触发一次 DNS 重建,相当于二次加固。










