在mac上搭建本地DNS名称服务

首先想到docker好像能给容器名称做解析,于是搜索:docker dns hadoop,得到:
Dnsmasq解决docker集群节点互通问题 - Winse Blog

于是了解到dnsmasq软件,继续搜索:mac brew dnsmasq hadoop vmware
根据参考链接1参考链接2,做了如下配置

配置文件1,dnsmasq基本配置文件/usr/local/etc/dnsmasq.conf,修改以下行:
resolv-file=/usr/local/etc/resolv.dnsmasq.conf
strict-order
server=/medium.com/8.8.8.8
listen-address=127.0.0.1
addn-hosts=/usr/local/etc/dnsmasq.hosts
cache-size=15000
conf-dir=/usr/local/et/dnsmasq.d

参考链接

配置文件2,/usr/local/etc/dnsmasq.hosts,新建此文件
文件内容形如/etc/hosts文件,一个ip,空格或Tab之后,一个域名
备注:除了此方法,也可选用系统的/etc/hosts文件,但此使用文件有一种风险,就是,如果DNS服务器没有配置成127.0.0.1,宿主机也能成功使用/etc/hosts成功解析,但虚拟机使用DNS就无法解析,可能难以排查故障,为了一致性,此处使用了另外的hosts文件

配置文件3,/usr/local/etc/resolv.dnsmasq.conf,新建此文件
文件内容示例如下:
nameserver 114.114.114.114
nameserver 8.8.8.8

下面解释以上配置

使用本地127.0.0.1作为DNS服务器的话,它会先返回dnsmasq.hosts中的域名,或者,如果是medium.com域中的名称,则交由8.8.8.8处理
如果以上解析失败,则严格按顺序在resolv.dnsmasq.conf中的服务器上搜索名称
本地保留15000个缓存
而conf-dir是里面的文件都加载为配置文件,不过此处文件夹是空的,没有实际用到

配置完成后,运行:
sudo brew services restart dnsmasq
然后就可以使用nslookup,server 127.0.0.1,写个域名,看看效果了
如果没有问题,就可以把本机的网络配置中的DNS设置为仅有127.0.0.1这一项了
vmware fusion的NAT网络会自动使用这里的dns服务器列表,就能成功解析名称了

关键词:
DNS host name server hadoop spark cluster 主机名 互相访问

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • NAME dnsmasq - A lightweight DHCP and caching DNS server....
    ximitc阅读 2,938评论 0 0
  • dnsmasq是什么我就不说了,请自行百度。 目前我需要使用的用途是:1.dhcp(分配一个或者多个内网ip地址)...
    dnaEMx阅读 16,361评论 0 6
  • 问题 iOS开发过程中,一般会用到host来和服务器在内网进行接口对接联调,通常而言使用Charles来做代理,配...
    mercurygear阅读 17,389评论 8 17
  • 今天中午放学,儿子第一步还是拿起手机,我学会不关注,儿子一会儿开心的跟我分享空间的一张孙悟空提着金箍棒,骑着电动车...
    qhdly阅读 298评论 0 8
  • “少爷为什么把你带来?”洪七讲了吃鸡被冤枉偷鸡的经过。“你是叫花?”“算是吧?”“丐帮的?”“不是。”老者跟桑遁土...
    三人随笔阅读 564评论 0 1