在开发的过程中,项目的域名更换了一个新的 IP
地址,但是使用电脑访问的话并不会立即生效,这个时候只需要强制的刷新一下本地的 DNS
缓存,就可以拿到我们最新设置的 域名-IP
映射关系,进行域名的访问。
dscacheutil 命令(推荐使用)
sudo dscacheutil -flushcache
# 需要输入密码
- 作用: 该命令会清除
macOS
系统中的DNS
缓存,包括解析的DNS
记录和主机名。它会强制系统在下次访问网站或其他网络服务时重新解析DNS
记录,以获取最新的信息。 - 影响范围: 这个命令只影响
DNS
缓存,不会影响其他网络服务或进程。
killall 命令
sudo killall -HUP mDNSResponder
# 需要输入密码
- 作用: 这个命令会发送一个
SIGHUP
信号给macOS
上的mDNSResponder
进程。mDNSResponder
是负责处理多播DNS
和单播DNS
查询的进程。发送SIGHUP
信号会告诉mDNSResponder
重新加载其配置和缓存。 - 影响范围: 除了刷新
DNS
缓存外,重新加载mDNSResponder
的配置可能会影响其他与网络相关的服务和进程。
总结
sudo dscacheutil -flushcache
更直接地清除 DNS
缓存,而 sudo killall -HUP mDNSResponder
不仅刷新 DNS
缓存,还可能影响其他网络服务的状态。通常情况下,如果只需要刷新 DNS
缓存而不影响其他网络服务,推荐使用前者。