MacOS 使用SwitchHosts修改 hosts 不生效的原因及解决方法

MacOS 使用SwitchHosts修改 hosts 不生效的原因及解决方法

使用switch host修改mac hosts后,cat 发现hosts已经修改成功。 

 

 但是ping的时候发现,域名解析的ip还是老的。

翻了很多资料,在windows下并没有这种情况。

最后在stackoverflow上发现如下咨询:

This is because macOS Catalina has another thing going; it will only make changes in the hosts file effective if you change them as the root user  !!

我的系统是

也就是说,mac下默认不是root用户的修改,可能不会立刻起效。

这也就解释了,为什么hosts修改成功了,但是本地dns还是读取的老的IP。

 可以看到hosts文件的修改权限是本地用户。

所以解决方法也就有两种了。

1.执行sudo killall mDNSResponder,手动刷新本地dns缓存。

2.使用sudo vim hosts命令修改hosts文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值