View on GitHub

Hostd

Tools to custom your domain resolved rules. Used BlackHole as DNS server.

Download this project as a .zip file Download this project as a tar.gz file

示例

在日常开发中,我们常常会需要将线上机器的IP绑定到本地,以便测试。在示例中,我们尝试将"www.dianping.com"域名指向本地IP"127.0.0.1"。

首先,我们测试一下"www.dianping.com"现在的IP是多少。


    nslookup www.dianping.com 42.96.139.35
    Server:		42.96.139.35
    Address:	42.96.139.35#53

    Non-authoritative answer:
    www.dianping.com	canonical name = www.dianping.com.cdn20.com.
    www.dianping.com.cdn20.com	canonical name = www.dianping.com.wscdns.com.
    Name:	www.dianping.com.wscdns.com
    Address: 180.153.132.49

      

这个结果来自google的DNS服务器8.8.8.8,BlackHole进行了一个代理和缓存。然后我们尝试修改这个DNS绑定。

hostd修改配置的界面如下(你可以尝试在下面窗口修改,或者访问页面):

点击选中"127.0.0.1",然后使用nslookup进行测试。


    nslookup www.dianping.com 42.96.139.35
    Server:   42.96.139.35
    Address:  42.96.139.35#53

    Non-authoritative answer:
    Name: www.dianping.com
    Address: 127.0.0.1
      

我们的修改成功了!取消配置的选定,则会回到正常IP。

设置42.96.139.35为系统的dns服务器,即可达到动态修改域名解析的效果。

hostd会为某个IP地址维护单独的域名列表,无需担心域名绑定被他人修改。

本地部署

Hostd是开源的,你可以在本地搭建这个服务。对于企业用户,你可以在公司内部部署一个Hostd,并修改DHCP到的DNS地址为这台机器,这样用户就无需在本地进行配置了!

具体安装和配置请点击这里