来源: 链接://www.greatytc.com/p/c1765b927aea
1, 这里使用homebrew安装,如果还没有安装homebrew可使用下面命令一键安装
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)
使用brew包管理安装dnsmasq
brew install dnsmasd
最后将DNSmasq默认的配置示例文件放到指定位置并改名
cp /usr/local/opt/dnsmasq/dnsmasq.conf.example /usr/local/etc/dnsmasq.conf
2,配置
配置就是对dnsmaq.conf文件的参数修改,在修改它之前,我们先建立我们需要读取的hosts文件,实际也可以直接使用系统的hosts文件/etc/hosts里面的域名绑定,但是这样会影响本机的DNS环境,所以还是建议自行生成我们需要的hosts文件比较好
vi /etc/masq.hosts
192.168.2.105 www.bibi.com
建立好所需要的hosts文件,再修改dnsmaq.conf配置文件。
addn-hosts=/etc/masq.hosts //指定需要解析的hosts文件位置
listen-address=127.0.0.1,x.x.x.x //监听需要解析域名的地址
127.0.0.1是本地,x.x.x.x是本机内网地址,必须设置内网地址,局域网内网的其它设备才能访问这个DNS服务器。
我们使用自己的DNS服务器,一般是针对某些域名需要解析成我们指定的ip地址,但是其它域名我们还是希望它访问正常的DNS服务器,这样我们就需要在DNS服务器上设置默认的DNS服务器
上面两行是本机地址内网其它的DNS服务器,下面是常用的外网DNS服务器。这样连接到这台DNS服务器的设备访问其它的域名也没问题了。最后如果需要本机也使用masq.hosts里面的解析,DNS服务器是重上往下找的,所以本机的要放在前面,不然还没等访问本机已经从其它DNS服务器获得地址了。
重启dns即可生效。
sudo brew services restart dnsmasq