天行健,君子以自强不息;地势坤,君子以厚德载物;

macOS命令行模式修改DNS

习惯性的按照Linux下修改方式,直接编辑  /etc/resolv.conf ,改完发现没有生效,仔细看了一下文档

#
# macOS Notice
#
# This file is not consulted for DNS hostname resolution, address
# resolution, or the DNS query routing mechanism used by most
# processes on this system.
#
# To view the DNS configuration used by this system, use:
# scutil --dns
#
# SEE ALSO
# dns-sd(1), scutil(8)
#
# This file is automatically generated.
#

查看系统使用的DNS配置

scutil --dns

查询了一下相关资料,原来macOS使用 networksetup 命令来管理

列出所有的网络连接方式
networksetup -listallnetworkservices

给指定的网络连接方式设定DNS服务器
networksetup -setdnsservers <workservices> x.x.x.x

# 注:x.x.x.x就是要更改的DNS地址,可以加空格跟多个
# <workservices>是要修改的网络接口,需要替换为具体的网络接口名称(参看前一步列表)

检查当前DNS设置
networksetup -getdnsservers <workservices>

清空当前的DNS设置
networksetup -setdnsservers <workservices> empty

清空DNS缓存
dscacheutil -flushcache

 

点赞

发表回复