DNS服务端搭建

Docker使用sameersbn/bind镜像搭建DNS服务器

https://hub.docker.com/r/sameersbn/bind

进行下面测试的时候记得将本机的dns修改DNS服务器的地址,并关闭ipv6的连接

安装命令

docker run --name bind -d --restart=always \
  --publish 53:53/tcp --publish 53:53/udp --publish 10000:10000/tcp \
  --volume /srv/docker/bind:/data \
  sameersbn/bind:9.16.1-20200524

启动Nginx服务

docker run --name Nginx -d -p 80:80 Nginx

手动配置文件进行域名拦截

拦截www.getcharzp.cn这个域名到上面启动的Nginx服务中

1、编辑/srv/docker/bind/bind/etc/named.conf.local文件

vim /srv/docker/bind/bind/etc/named.conf.local 新增下面的内容

zone "getcharzp.cn" {
        type master;
        file "/var/lib/bind/getcharzp.cn.hosts";
        };

2、在/srv/docker/bind/bind/lib下新增cn.hosts文件

vim /srv/docker/bind/bind/lib/getcharzp.cn.hosts (PS:下面的9d427dee11c8为自己docker容器的ID,qq.qq.com为邮箱地址)

$ttl 38400
getcharzp.cn.                 IN      SOA     9d427dee11c8. qq.qq.com. (
                        1633857751
                        10800
                        3600
                        604800
                        38400 )
getcharzp.cn.                 IN      NS      9d427dee11c8.
www.getcharzp.cn.             IN      A       119.27.164.148

3、重启bind

docker restart bind

通过webmin界面进行域名拦截配置

点击 Create master zone

输入Master Zone 的基本信息

点击Address新增域名

根据自己的具体情况新增对应的域名及其IP地址

配置上游dns服务

针对该dns服务中未含有的域名,使用8.8.8.8这个IP对应的服务器进行解析

vim /srv/docker/bind/bind/etc/resolv.conf

nameserver 8.8.8.8

相关文章

Docker是什么Docker是 Docker.Inc 公司开源的一个基于 LXC技...
本文为原创,原始地址为:http://www.cnblogs.com/fengzheng...
镜像操作列出镜像:$ sudo docker imagesREPOSITORY TAG IMA...
本文原创,原文地址为:http://www.cnblogs.com/fengzheng/p...
在 Docker 中,如果你修改了一个容器的内容并希望将这些更改...
在Docker中,--privileged 参数给予容器内的进程几乎相同的权...