http://www.damagehead.com/blog/2015/04/28/deploying-a-dns-server-using-docker/
https://blog.csdn.net/miss1181248983/article/details/90779267
https://www.linuxidc.com/Linux/2019-05/158642.htm
bind是一個非常靈活,功能齊全的DNS系統
1、下載鏡像
docker pull sameersbn/bind:latest
2、啟動
docker run --name bind -d --restart=always \ --publish 53:53/tcp --publish 53:53/udp --publish 10000:10000/tcp \ --volume /opt/bind:/data --env='WEBMIN_INIT_SSL_ENABLED=false' \ --env='ROOT_PASSWORD=qwe123' sameersbn/bind:latest
其中 WEBMIN_INIT_SSL_ENABLED默認為true,即關閉web頁面,ROOT_PASSWORD設置web登錄密碼,沒有設置默認為root/password
3、登錄 默認端口10000,登錄地址即http://ip:10000/
4、配置:
1、新增master zone
再創建一個master zone,對應上面的
進入剛剛創建的test zone
添加解析
先添加ns解析,這個必須有,否則所有解析失敗
在添加其他解析
添加CNAME解析
最后記得保存
命令行配置:
1、添加zone ,一個正向解析 一個反向解析
vi /opt/bind/bind/etc/named.conf.local
#反向解析,ip倒着寫
zone "254.254.9.172.in-addr.arpa" { type master; file "/var/lib/bind/172.9.254.254.rev"; }; zone "hz.com" { type master; file "/var/lib/bind/hz.com.hosts"; };
2、配置正向解析
vim /opt/bind/bind/lib/hz.com.hosts 文件名與上面定義的一致
$ttl 38400 hz.com. IN SOA ns.hz.com. admin.hz.com. ( 1589427702 10800 3600 604800 38400 ) @ IN NS ns.hz.com. ns IN A 192.1.1.1 #ns這行一定要有 aa.hz.com. IN A 192.1.1.3 #A 記錄 www.hz.com. IN CNAME ns #CNAME記錄
#域名可以簡寫可以全寫
3、配置反向解析
vi 172.9.254.254.rev
$ttl 38400 254.254.9.172.in-addr.arpa. IN SOA ns.hz.com. ( 1589427616 10800 3600 604800 38400 )3.1.1.192.in-addr.arpa. IN PTR aa.hz.com.
#ip可以簡寫可以全寫
4、重啟docker
docker restart bind
5、測試
yum install -y bind-utils
[root@10 ~]# host ns.hz.com 10.1.11.46 #docker運行的那台服務器IP Using domain server: Name: 10.1.11.46 Address: 10.1.11.46#53 Aliases: ns.hz.com has address 192.1.1.1 [root@10 ~]#