Mac 终端无法联网问题解决
神奇的 macOS。
问题
今天本想装个东西,但 brew update
时一直报 could not resolve host
。第一时间觉得是 Clash 的问题,于是设置了 proxy,但仍未解决,尝试 unset 但也无济于事。
后来发现不仅对于 github.com
报错,甚至对镜像 mirrors.tuna.tsinghua.edu.cn
也报错,ping
了一下 github.com
和 baidu.com
,果然都不通。因此并不是 proxy 的问题。
尝试 ping 8.8.8.8
,发现可以通。因此原因基本可以锁定是 DNS 设置的问题。
但之前从未更改过 Mac 的 DNS 设置,为什么终端突然不能联网了呢?尝试在 Settings - Wi-Fi - Details - DNS - DNS Servers 添加了两个阿里云的 DNS Server:223.5.5.5
、223.6.6.6
,并刷新 DNS 缓存:
1 | sudo dscacheutil -flushcache |
稍等几分钟后,终端网络恢复正常。
总结
当 Mac 终端无法联网时,大多是因为两种情况:proxy 和 DNS,首先可以通过 ping
一个 IP(如 ping 8.8.8.8
)检查是否是 DNS 的问题。
如果是 DNS 的问题,手动在 Settings - Wi-Fi - Details - DNS - DNS Servers 处添加公共 DNS Server(如 223.5.5.5
和 223.6.6.6
)并刷新缓存:
1 | sudo dscacheutil -flushcache |
这种方式在大多数情况下应该都可以解决 DNS 问题导致的网络连接问题。