提供简单、快速的 DNS 缓存服务
√ 支持 linux,macos
√ 支持从hosts
(/etc/hosts*
,C:\Windows\System32\drivers\etc\hosts*
)读取配置信息
√ 支持从//etc/resolv.conf
,windows注册表
读取上游 DNS 服务器 IP
√ 支持从注册中心/dns
读取配置
√ 支持hydra
应用注册的dns
服务
√ 缓存上游 DNS 解析结果,加快响应速度
√ 所有配置热更新,无需重启服务
√ 上游 DNS 服务器检测,优先使用速度最快的服务器
√ 基于hydra实现
- 下载
go get github.com/micro-plat/ddns
- 编译
go install github.com/micro-plat/ddns
- 安装
sudo ddns install
- 运行
sudo ddns start
- 测试
dig github.com @127.0.0.1
- 本机使用
sudo vim /etc/resolv.conf
#修改内容如下:
nameserver 127.0.0.1
- 修改
hosts
文件,添加需解析的域名,删除无需解析的域名 etc
目录下新建名称以hosts
开头的文件,添加解析信息
sudo vim /etc/hosts_google
# Google Start
172.217.6.127 com.google
172.217.6.127 domains.google
172.217.6.127 environment.google
172.217.6.127 google.com
172.217.6.127 google.com.af
172.217.6.127 google.com.ag
172.217.6.127 google.com.ai
172.217.6.127 google.com.ar
172.217.6.127 google.com.au
"/etc/hosts_google" 9L
- 进入注册中心(
fs
或zookeeper
),在节点/dns
目录下新建域名,和解析的 IP,如:
/dns
-----google.com
--------172.217.6.127
为API服务设置解析域名
hydra.Conf.API(":8081", api.WithDNS("www.ddns.com"))
DDNS实时收到解析信息
[2019/08/23 16:31:12.48855][i][9077e9414][缓存:www.ddns.com,1条]
未在hosts*
,或注册中心
配置的域名,直接使用上游DNS服务器
查询域名解析结果
- 打开
/etc/resolv.conf
文件,添加上游 DNS 服务器 IP
sudo vim /etc/resolv.conf
nameserver 127.0.0.1
nameserver 114.114.114.114
nameserver 8.8.8.8
注册中心 > 本地 HOSTS > 上游 DNS