美文网首页
在mac上搭建本地DNS名称服务

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

作者: cdarling | 来源:发表于2019-01-15 11:08 被阅读0次

    首先想到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 主机名 互相访问

    相关文章

      网友评论

          本文标题:在mac上搭建本地DNS名称服务

          本文链接:https://www.haomeiwen.com/subject/nemedqtx.html