CentOS8 - Bind DNS - Internal Zone (内部区域)、IPv6、External Zone(外部区域)、CNAME 和 Slave
一、 服务器配置IPV4&IPV6地址1) IPV4配置保持不变
2) 配置IPv6地址
1. 检查是否已开启IPv6服务
a 连接服务器
b 运行命令ip addr | grep inet6或者ifconfig| grep inet6
若返回inet6相关内容,表示实例已成功开启IPv6服务。
若未返回inet6相关内容,表示实例未开启IPv6服务。
2. 持久开启IPv6
a 运行vim /etc/modprobe.d/disable_ipv6.conf,将options ipv6 disable=1修改为options ipv6disable=0 后保存退出。
b 运行vim /etc/sysconfig/network,将NETWORKING_IPV6=no修改为NETWORKING_IPV6=yes后保存退出。
c 运行vim /etc/sysctl.conf做如下修改:
#net.ipv6.conf.all.disable_ipv6 = 1
#net.ipv6.conf.default.disable_ipv6 = 1
#net.ipv6.conf.lo.disable_ipv6 = 1
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.lo.disable_ipv6 = 0
修改完成后,保存并退出。
d 运行sysctl -p使配置生效。
3. 配置IPv6地址
Red Hat 7 /Redhat8的操作步骤如下:
a 远程SPV连接服务器
b 运行vi /etc/sysconfig/network-scripts/ifcfg-ens192打开网卡配置文件,ens192为网卡标识符
单IPv6地址:
IPV6INIT=yes
IPV6ADDR=<IPv6地址>/<子网前缀长度>
IPV6_DEFAULTGW=<IPv6网关>
Dns01:
IPV6ADDR=fd15:4ba5:5a2b:1008::1/64
DNS02:
IPV6ADDR=fd15:4ba5:5a2b:1008::2/64
c重启网络服务:
DNS1配置:
[root@dns1network-scripts]# nmcli connection show
NAME UUID TYPE DEVICE
ens33 c96bc909-188e-ec64-3a96-6a90982b08ad ethernet ens33
virbr0 26b2cf8d-acf7-47d8-818b-f6d104596aa3 bridge virbr0
nmcli connection modify ens33ipv6.dns "fd15:4ba5:5a2b:1008::01 fd15:4ba5:5a2b:1008::02"
nmcli connection modify ens33ipv4.dns "192.168.139.128 192.168.139.129"
nmcli connection downens33;nmcli connection up ens33
DNS2配置:
[root@dns02 ~]# nmcliconnection show
NAME UUID TYPE DEVICE
System ens33 c96bc909-188e-ec64-3a96-6a90982b08ad ethernet ens33
virbr0 440a5ef8-bb2c-4a4a-a373-f84e86223d21 bridge virbr0
nmcli connection modify ens33ipv6.dns "fd15:4ba5:5a2b:1008::01 fd15:4ba5:5a2b:1008::02"
nmcli connection modifySystem\ ens33 ipv4.dns "192.168.139.128 192.168.139.129"
nmcli device show ens33
nmcli connection down 'Systemens33';nmcli connection up 'System ens33'
d 测试网络连通性
步骤1登录已完成IPv6地址配置的服务器。
步骤2执行以下命令验证网络连通性。正常如下有IPv6地址的返回。
ping -6 fd15:4ba5:5a2b:1008::01
ping -6 fd15:4ba5:5a2b:1008::02
ping -4 192.168.139.128
ping -4 192.168.139.129
4. 准备一台IPv6客户端发起请求测试
a 创建一台IPv6客户端,保证与改造的服务器可以通过IPv6地址内部互相通信
b 检查IPv6地址
步骤1 使用Windows远程桌面客户端。
步骤2 唤起cmd命令,输入ipconfig,检查确认IPv6地址已正确配置。
ping -6 fd15:4ba5:5a2b:1008::01
ping -6 fd15:4ba5:5a2b:1008::02
ping -4 192.168.139.128
ping -4 192.168.139.129
二、 IPV4 DNS BIND服务配置1) 确定DNS拓扑(Toplogy)架构
规划DNS01,DNS02为:
dns1: 192.168.139.128 fd15:4ba5:5a2b:1008::01
dns2: 192.168.139.129 fd15:4ba5:5a2b:1008::02
2) Internal NetWork-配置IPV4下的DNS
1. 登录服务器,查看IPv4&IPv6是否正常配置
#ip addr
#nmcli device show ens33
2. 安装bind
# dnf install bind bind-utils
3. 备份原配置文件
#cp /etc/named.conf /etc/named.conf.orignal
4. 编辑配置文件
#vim /etc/named.conf
5. 添加反向和正向解析
查看vim /etc/sysconfig/named
编写解析文件:
#vim /var/named/dapengos.com.lan
#vim /var/named/139.168.192.db
6. 启动服务
#systemctl enable --now named
#systemctl status named
3) 防火墙配置
#systemctl status firewalld
#firewall-cmd --add-service=dns –permanent
#firewall-cmd –reload
#firewall-cmd --list-all
[root@dns1 named]# firewall-cmd --add-service=dns --permanent
Warning: ALREADY_ENABLED: dns
Success
[root@dns1 named]# firewall-cmd --reload
success
[root@dns1 named]# firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion:no
interfaces: ens33
sources:
services: cockpitdhcpv6-client dns ssh
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
#systemctl status firewalld
4) 域名解析测试验证
#dig dapengos.com
# dig -x4 192.168.139.128
#host host dns1.dapengos.com
# dig -x4 192.168.139.128^C
# host dns1.dapengos.com
dns1.dapengos.com has address 192.168.139.128
# host www1.dapengos.com
www1.dapengos.com has address 192.168.139.130
# host mail1.dapengos.com
mail1.dapengos.com has address 192.168.139.130
# host 192.168.139.130
130.139.168.192.in-addr.arpa domain name pointermail1.dapengos.com.
130.139.168.192.in-addr.arpa domain name pointerwww1.dapengos.com.
# host 192.168.139.128
128.139.168.192.in-addr.arpa domain name pointerdns1.dapengos.com.
#nslookup
三、 IPV6DNS BIND服务配置
1) 添加IPV6 DNS配置
#vim /etc/named.conf
2) 添加IPV6DNS域名配置
#vim/var/named/dapengos.com.lan
3) 添加IPV6 DNS解析配置
#添加8.0.0.1.b.2.a.5.5.a.b.4.5.1.d.f.ip6.arpa配置
#vim /etc/named.conf
#编辑新的配置
#vim /var/named/8.0.0.1.b.2.a.5.5.a.b.4.5.1.d.f.db
4) 重启named服务
#systemctl restart named
#systemctl status named
5) 测试配置IPV6的DNS服务
#dig dns1.dapengos.com
#dig -6 dns1.dapengos.com
#dig-x fd15:4ba5:5a2b:1008::01
#host -6 dns1.dapengos.com
#host -4 dns1.dapengos.com
[root@dns1 named]# host -6 dns1.dapengos.com
dns1.dapengos.com has address 192.168.139.128
dns1.dapengos.com has IPv6 address fd15:4ba5:5a2b:1008::1
[root@dns1 named]# host -4 dns1.dapengos.com
dns1.dapengos.com has address 192.168.139.128
dns1.dapengos.com has IPv6 address fd15:4ba5:5a2b:1008::1
[root@dns1 named]#
#nslookup
[root@dns1 named]# nslookup
> dns1.dapengos.com
Server: 192.168.139.128
Address: 192.168.139.128#53
Name: dns1.dapengos.com
Address: 192.168.139.128
Name: dns1.dapengos.com
Address: fd15:4ba5:5a2b:1008::1
6) PC客户端测试
1. 客户端配置检查
a 创建一台IPv6客户端,保证与改造的服务器可以通过IPv6地址内部互相通信
b 检查IPv6地址
步骤1 使用Windows远程桌面客户端。
步骤2 唤起cmd命令,输入ipconfig,检查确认IPv6地址已正确配置。
步骤3 在浏览器输入http://[IPv6地址],可正常访问IPv6的Web服务。
#ping www.baidu.com
#ping dns1.dapengos.com
2. 添加DNS解析
a DNS发布域名解析AAAA记录,开通IPv6公网
b 互联网上验证DNS解析
>nslookup
>server 8.8.8.8
>dns1.dapengos.com
3. 互联网访问验证
本地终端已接入IPv6网络,PC、手机都可以,目前国内大部分省份Android手机
已经接入IPv6网络,可以通过访问http://test-ipv6.com来判断本地终端是否也接
入IPv6网络。
访问地址:http://[IPv6地址]
域名访问:dns1.dapengos.com
四、 Canonical name cname alias(命名规范)
1) cname配置
#vim /var/named/dapengos.com.lan
#host dns.dapengos.com
五、 External Network View Statement (外部区域视图声明)
1) view配置设置
#vim /etc/named.conf
view "internal" {
match-clients {
localhost;
internal-network;
};
2) 重启named服务
六、 Slave DNS server Secondary DNS server
1) 操作另外一台服务器192.168.139.129安装bind
#dnf install bind bind-utils
2) 服务器DNS设置
#nmcli connection modify ens33 ipv4.dns“192.168.139.128 192.168.139.129”
#nmcli connection modify ens33 ipv6.dns“fd15:4ba5:5a2b:1008::1 fd15:4ba5:5a2b:1008::2 ”
#nmcli connection down ens33;nmcli connection up ens33
3) 修改192.168.139.128的named.conf
1. 修改allow-transfer配置
allow-transfer {localhost; 192.168.139.129; fd15:4ba5:5a2b:1008::2 };
2. 增加zone下的also-notify
also-notify {192.168.139.129; fd15:4ba5:5a2b:1008::2 };
4) 所有配置文件添加dns1与dns2解析
1. dns1配置上添加dns2解析
2. dns2配置上添加dns1,dns2的解析
#vim /etc/named.conf
3. 测试DNS配置
#host dns1.dapengos.com
5) 防火墙配置
#systemctl status firewalld
#firewall-cmd --add-service=dns --permanent
#firewall-cmd --reload
#firewall-cmd --list-all
6) 关机验证其中一台
七、 DNS BIND配置帮助文档
官方文档:https://www.isc.org/
帮助文档:https://downloads.isc.org/isc/bind9/9.17.3/doc/arm/html/reference.html#configuration-file-elements