一、 为什么你的 Mac 总是在访问“旧路径”?
当你访问一个域名(如 bigengwu.cn)时,系统为了提速,并不会每次都去询问互联网“它的 IP 是多少”。macOS 会把这个结果存在本地的一个“笔记本”上,这就是 DNS 缓存。
- 问题所在: 当你搬了家(换了服务器 IP),或者加了中转站(开启 Cloudflare 代理),如果这个“笔记本”还没更新,你的 Mac 就会固执地跑向旧地址。
- 典型症状:
- 网站显示“私密连接错误”(因为旧 IP 上没装新证书)。
- 开启了代理,但 Ping 出来的 IP 还是服务器真实 IP。
- 手机流量能打开,家里 Wi-Fi 连的 Mac 却打不开。
二、 核心操作:一键刷新 macOS 系统 DNS 缓存
要让 Mac 扔掉旧的“笔记本”去查新地址,你需要动用 终端(Terminal)。
1. 打开终端
按下 Command + 空格键,搜索 “终端” 或 “Terminal” 并回车。
2. 输入刷新命令
根据你目前使用的系统版本(适用于 macOS Big Sur, Monterey, Ventura, Sonoma 及更高版本),复制并粘贴以下命令:
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder3. 执行
- 按下回车键。
- 系统会提示输入密码(你开机锁屏的密码)。注意:输入时屏幕不会显示星号或任何字符,输完直接回车即可。
三、 容易被忽略的“第二战场”:浏览器内部缓存
即便系统缓存刷新了,Chrome 或 Edge 浏览器可能还有自己的独立 DNS 缓存。如果你发现终端操作完还没用,请继续这一步:
- 在 Chrome 地址栏输入:
chrome://net-internals/#dns - 找到页面中的 “Clear host cache” 按钮并点击。
- 在 Edge 地址栏输入:edge://net-internals/#dns(操作同上)。
或者找到Domain Security Policy → Delete domain security policies,输入域名点击Delete
四、 终极验证:怎么知道生效了?
你不需要一遍遍去刷浏览器,直接在终端里用 ping 命令检查:
ping 你的域名- 如果返回的 IP 变了: 恭喜!你的 Mac 已经找到了新路径。
- 如果 IP 还是旧的: 说明缓存不在你的 Mac 上,而是在你的路由器或者 运营商(上海移动) 的服务器上。
五、 如果还是“不听话”怎么办?
如果刷新了本地缓存还是不行,可以尝试以下“急救包”:
- 续订 DHCP 租约:
前往 系统设置 -> 网络 -> Wi-Fi -> 详细信息 -> TCP/IP,点击 “续订 DHCP 租约”。这会让路由器重新认识你。 - 手机热点大法:
断开 Wi-Fi,用手机 5G/4G 信号开热点给 Mac 用。手机网络的 DNS 刷新通常比宽带快得多。 - 修改手动 DNS:
将 DNS 手动改为 1.1.1.1 和 8.8.8.8。这相当于跳过了运营商那个“慢半拍”的笔记本,直接去问最权威的地址。
结语
在云服务器搬家或配置 CDN 的过程中,DNS 延迟是最大的敌人。掌握了 dscacheutil -flushcache 这行命令,你就掌握了 Mac 网络调试的主动权。下次再遇到“配置改了却不生效”的怪事,先给你的 Mac 删掉旧记忆吧!
作者:霍欣标,如若转载,请注明出处:https://www.bigengwu.cn/shu/394.html