文章目录

  • Linux版本之docker容器bind搭建DNS服务器 ,双网卡或者多网卡的配置实现
  • 实现效果
  • 前提条件:
  • 1.下载镜像(主机dns200)
  • 2.启动容器(主机dns200)
  • 3.Webmin界面个性设置
  • 4.设置dns域名配置
  • 1)删除自带全部主域名配置:
  • 2)创建视图
  • 3)开始创建主区域
  • 4)开始创建正向区域记录地址
  • 5)132网段的设置也是一样的
  • 5.测试域名
  • 1)win10
  • 6.完成设置


Linux版本之docker容器bind搭建DNS服务器 ,双网卡或者多网卡的配置实现

实现效果

同一个域名,可以在两个网段同时访问,有一个网络故障,也能正常使用,实现网络高可以

前提条件:

服务器准备:

主机名

ip

dns200(dns服务器)

192.168.56.200,192.168.132.200

centos121(客户端)

192.168.56.121,192.168.132.121

win10(客户端)

192.168.56.141,192.168.132.141

1.下载镜像(主机dns200)

docker pull sameersbn/bind:9.16.1-20200524

2.启动容器(主机dns200)

参数说明:

参数

说明

WEBMIN_INIT_SSL_ENABLED

是否应通过SSL服务Webmin。默认为true。如果您在较早的阶段执行SSL终止,请将其设置为false。

WEBMIN_INIT_REDIRECT_PORT

从端口提供Webmin。将此设置为反向代理端口,例如443。默认为10000。

ROOT_PASSWORD

设置web登录密码

启动命令:

docker run -d \
--name bind9 \
--publish 53:53/tcp \
--publish 53:53/udp \
--publish 10000:10000/tcp \
--volume /usr/local/docker/bind:/data \
--env ROOT_PASSWORD=root \
sameersbn/bind:9.16.1-20200524

访问Webmin界面:用户名密码:root/root,如果没有设置–env ROOT_PASSWORD=root,默认的用户名密码:root/password
(注意:一定要用https,不然访问不了界面)

https://192.168.56.200:10000/

3.Webmin界面个性设置

把界面改成中文:

docker 两个网络互相通信 docker 双网卡_linux

4.设置dns域名配置

1)删除自带全部主域名配置:

docker 两个网络互相通信 docker 双网卡_linux_02


删除成功

docker 两个网络互相通信 docker 双网卡_linux_03

2)创建视图

docker 两个网络互相通信 docker 双网卡_docker 两个网络互相通信_04


填写信息:(我这边写两个网卡的配置)

1:视图的名称

2:就是写网段信息

3:确认

docker 两个网络互相通信 docker 双网卡_linux_05


再新建一个132网段的视图

docker 两个网络互相通信 docker 双网卡_linux_06


注:几个网卡就是配置这个视图

3)开始创建主区域

点击创建新的主区域

docker 两个网络互相通信 docker 双网卡_双网卡_07


输入信息:

1:输入自己的主域名

2:选择视图

3:初始化时容器的id,改成对应视图网段的ip:192.168.56.200

4:邮箱地址(自定义)

5:新建确认

docker 两个网络互相通信 docker 双网卡_双网卡_08


再新建一个132网段的

docker 两个网络互相通信 docker 双网卡_dns_09


创建成功:

docker 两个网络互相通信 docker 双网卡_linux_10

4)开始创建正向区域记录地址

点击主区域:

docker 两个网络互相通信 docker 双网卡_dns_11


点击地址:

docker 两个网络互相通信 docker 双网卡_dns_12

填写内容:

1:输入名称,比如:ttt,后面访问的时候会自动加上主区域名称,域名全称变成:ttt.binggoling.com

2:域名要映射的主机地址

3:确认

docker 两个网络互相通信 docker 双网卡_linux_13


点击右上角的应用,把配置生效:

docker 两个网络互相通信 docker 双网卡_双网卡_14

注意,有多个ip映射,就多配置几个

5)132网段的设置也是一样的

在视图132的主区域上设置,IP是192.168.132.121

docker 两个网络互相通信 docker 双网卡_linux_15

5.测试域名

1)win10

正向解析:

两个网卡分别设置ip4属性:DNS服务器地址(DNS地址要对应网段)

docker 两个网络互相通信 docker 双网卡_dns_16


docker 两个网络互相通信 docker 双网卡_域名_17


打开cmd,直接ping域名:ping ttt.binggoling.com

C:>ping ttt.binggoling.com

正在 Ping ttt.binggoling.com [192.168.56.121] 具有 32 字节的数据:
来自 192.168.56.121 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.56.121 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.56.121 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.56.121 的回复: 字节=32 时间<1ms TTL=64

192.168.56.121 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 0ms,最长 = 0ms,平均 = 0ms

把网卡56网段的禁用

docker 两个网络互相通信 docker 双网卡_dns_18

再次ping域名:ping ttt.binggoling.com,会自动到132网段上连接

C:>ping ttt.binggoling.com

正在 Ping ttt.binggoling.com [192.168.132.121] 具有 32 字节的数据:
来自 192.168.132.121 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.132.121 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.132.121 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.132.121 的回复: 字节=32 时间<1ms TTL=64

192.168.132.121 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 0ms,最长 = 0ms,平均 = 0ms

注:你可以提前ping一下设置的域名:是无法解析的

C:>ping ttt.binggoling.com
Ping 请求找不到主机 ttt.binggoling.com。请检查该名称,然后重试。

6.完成设置