当前位置: 首页 > 工具软件 > SkyDNS > 使用案例 >

快速搭建 DNS 服务器: skydns + etcd

贺华容
2023-12-01

参考: [ skynetservice github ] [ skydns 测试记录 CSDN ]

etcd 安装配置


安装

yum install etcd


配置

sed -i 's@ETCD_LISTEN_CLIENT_URLS=.*@ETCD_LISTEN_CLIENT_URLS="http://172.17.0.1:2379"@1' /etc/etcd/etcd.conf

sed -i 's@ETCD_ADVERTISE_CLIENT_URLS=.*@ETCD_ADVERTISE_CLIENT_URLS="http://172.17.0.1:2379"@1' /etc/etcd/etcd.conf


启动 etcd

systemctl enable etcd
systemctl start etcd



skydns by docker


docker run -d --restart=always \
    --name skydns  \
    -p 0.0.0.0:53:53/udp \
    skynetservices/skydns \
    -machines "http://172.17.0.1:2379" \
    -addr "0.0.0.0:53"      


这样完成了 skydns 的搭建. 接下来进行 DNS 记录的配置.


DNS 记录的添加


添加 skydns 配置

etcdctl --endpoints http://172.17.0.1:2379 set /skydns/config '{"dns_addr":"0.0.0.0:53","ttl":30, "nameservers": ["8.8.8.8:53","114.114.114.114:53"], "domain":"special."}'


重启 skydns

docker restart skydns


添加记录

etcdctl --endpoints http://172.17.0.1:2379 set /skydns/special/test/www '{"host":"10.0.0.1"}'

etcdctl --endpoints http://172.17.0.1:2379 set /skydns/special/tiantiandas/blog '{"host":"www.cnblogs.cn"}'


记录验证

测试工具: dig

yum install bind-utils


[ dig 的使用 ]

dig @localhost www.test.special



无法解析公网域名的问题

如果在添加 skydns/config 的时候将 domain 设定为 com, cn 这种域名, 那 自己本身作为权威DNS 服务器, 将不会查到类似于 baidu.com, sina.com 这种域名, 但是 sina.cn 这种是可以查到.

转载于:https://www.cnblogs.com/tiantiandas/p/skydns_and_etcd.html

 类似资料: