实验要求:要求在一台主机中同时配置DNS服务器和DHCP服务器;
(1)DNS服务器:不仅有主域名服务器,还要有从域名服务器充当备用服务器;
(2)DHCP服务器:提供192.168.80.0/24 网段的IP地址、子网掩码、默认网关、DNS服务器地址、DNS默认域名配置;
实验环境说明:
DNS服务器:主域名服务器(linux的CentOS 7-2)IP地址:192.168.80.20
从域名服务器(linux的CentOS 7-3)IP地址:192.168.80.30
DHCP服务器:(linux的CentOS 7-2)IP地址:192.168.80.20
客户端:linux的(CentOS 7-1) 、WIN10
(1)挂载镜像文件,安装DNS和DHCP服务器;
[root@clr ~]# systemctl stop firewalld #临时关闭防火墙
[root@clr ~]# setenforce 0
[root@clr ~]# mount /dev/sr0 /mnt #将光盘镜像挂载到/mnt目录下
mount: /dev/sr0 写保护,将以只读方式挂载
[root@clr ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
tmpfs 394M 32K 394M 1% /run/user/0
/dev/sr0 4.4G 4.4G 0 100% /mnt #查看新挂载的光盘镜像
[root@clr ~]# yum install -y bind dhcp #同时安装DNS(软件名叫bind)和DHCP服务
已加载插件:fastestmirror, langpacks
(2)修改DNS的主配置文件;
[root@clr ~]# vim /etc/named.conf #修改主配置文件
options {
listen-on port 53 { 192.168.80.20; }; #监听53号端口,并使用192.168.80.20提供DNS域名解析服务
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { any; }; #允许所有网段使用本服务器的DNS解析服务
(3)修改区域配置文件,添加正反向区域配置;
[root@clr ~]# vim /etc/named.rfc1912.zones #修改区域配置文件
#设置修改正向域名解析服务
zone "gzy.com" IN { #正向解析"gzy.com"区域
type master; #类型为主区域,设置master
file "gzy.com.zone"; #指定主域名服务器的数据文件为gzy.com.zone
allow-transfer { 192.168.80.30; }; #允许IP地址为192.168.80.30的从域名服务器同步传输连接主域名服务器的文件数据
};
#设置修改反向域名解析服务
zone "80.168.192.in-addr.arpa" IN { #反向解析"192.168.80.0"网段的域名解析服务
type master; #类型为主区域,设置master
file "gzy.com.zone.local"; #指定主域名服务器的数据文件为gzy.com.zone
allow-transfer { 192.168.80.30; }; #允许IP地址为192.168.80.30的从域名服务器同步传输连接主域名服务器的文件数据
};
(4)配置正反向区域数据文件;
[root@clr ~]# cd /var/named
[root@clr /var/named]# ll
总用量 16
-rw-r-----. 1 root named 152 6月 21 2007 named.localhost
-rw-r-----. 1 root named 168 12月 15 2009 named.loopback
drwxrwx---. 2 named named 6 1月 26 00:48 slaves
[root@clr /var/named]# cp -a named.localhost gzy.com.zone #配置正向区域数据文件,并保留源文件的权限和属主的属性复制
[root@clr /var/named]# cp -a named.localhost gzy.com.zone.local #配置反向区域数据文件,并保留源文件的权限和属主的属性复制
[root@clr /var/named]# ls
data gzy.com.zone named.ca named.localhost slaves
dynamic gzy.com.zone.local named.empty named.loopback
[root@clr /var/named]# vim gzy.com.zone #修改并配置正向区域数据文件
$TTL 1D
@ IN SOA @ admin.gzy.com. ( #“@”符号表示当前的DNS区域名,末尾的‘.’是根域的意思,切记不可省略
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 192.168.80.20 #记录主机IP地址
clr IN A 192.168.80.100 #记录正向解析clr.gzy.com对应的IP为192.168.80.100
Ayu IN A 192.168.80.110 #记录正向解析Ayu.gzy.com对应的IP为192.168.80.110
xiaocai IN A 192.168.80.120 #记录正向解析xiaocai.gzy.com对应的IP为192.168.80.120
girl IN CNAME clr #为域名clr.gzy.com创建别名girl.gzy.com
[root@clr /var/named]# vim gzy.com.zone.local #修改并配置反向区域数据文件
$TTL 1D
@ IN SOA gzy.com admin.gzy.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS gzy.com. #记录当前区域的DNS服务器名称
A 192.168.80.20 #记录主机IP地址
100 IN PTR clr.gzy.com. #记录反向解析192.168.80.100对应的域名为clr.gzy.com
110 IN PTR Ayu.gzy.com. #记录反向解析192.168.80.110对应的域名为Ayu.gzy.com
120 IN PTR xiaocai.gzy.com. #记录反向解析192.168.80.120对应的域名为xiaocao.gzy.com
(5)重启DNS服务,并验证测试;
[root@clr /var/named]# vim /etc/resolv.conf
# Generated by NetworkManager
#search localdomain
nameserver 192.168.80.20 #设置DNS主服务地址
nameserver 192.168.80.30 #设置DNS从服务地址
[root@clr /var/named]# systemctl restart named #重启DNS服务
[root@clr /var/named]# nslookup clr.gzy.com #验证正向解析
Server: 192.168.80.20
Address: 192.168.80.20#53
Name: clr.gzy.com
Address: 192.168.80.100
[root@clr /var/named]# nslookup Ayu.gzy.com #验证正向解析
Server: 192.168.80.20
Address: 192.168.80.20#53
Name: Ayu.gzy.com
Address: 192.168.80.110
[root@clr /var/named]# nslookup xiaocai.gzy.com #验证正向解析
Server: 192.168.80.20
Address: 192.168.80.20#53
Name: xiaocai.gzy.com
Address: 192.168.80.120
[root@clr /var/named]# nslookup girl.gzy.com #验证正向解析
Server: 192.168.80.20
Address: 192.168.80.20#53
girl.gzy.com canonical name = clr.gzy.com.
Name: clr.gzy.com
Address: 192.168.80.100
[root@clr /var/named]# nslookup 192.168.80.120 #验证反向解析
120.80.168.192.in-addr.arpa name = xiaocai.gzy.com.
[root@clr /var/named]# nslookup 192.168.80.110 #验证反向解析
110.80.168.192.in-addr.arpa name = Ayu.gzy.com.
[root@clr /var/named]# nslookup 192.168.80.100 #验证反向解析
100.80.168.192.in-addr.arpa name = clr.gzy.com.
(6)修改/etc/dhcp/dhcpd.conf文件,配置并启动DHCP服务器;
[root@clr /var/named]# vim /etc/dhcp/dhcpd.conf
[root@clr /var/named]# cd /usr/share/doc/dhcp-4.2.5/
[root@clr /usr/share/doc/dhcp-4.2.5]# ls
dhcpd6.conf.example dhcpd.conf.example ldap
[root@clr /usr/share/doc/dhcp-4.2.5]# \cp -f dhcpd.conf.example /etc/dhcp/dhcpd.conf #将dhcpd.conf.example这个文件中的内容强制复制到/etc/dhcp/dhcpd.conf文件中
[root@clr /usr/share/doc/dhcp-4.2.5]# vim /etc/dhcp/dhcpd.conf
vim /etc/dhcp/dhcpd.conf
default-lease-time 60000; #延长DHCP的租约租期
max-lease-time 72000; #延长DHCP的租约租期
subnet 192.168.80.0 netmask 255.255.255.0 {
range 192.168.80.100 192.168.80.200; #DHCP服务器动态分配的IP地址网段范围
option routers 192.168.80.254; #设置默认网关
option domain-name "gzy.com"; #指定域名解析的默认域名,和/etc/resolv.conf文件里面search预留的默认域名作用相同
option domain-name-servers 192.168.80.20, 192.168.80.30; #设置DNS服务器的IP地址
}
[root@clr ~]# systemctl restart dhcpd #启动dhcp服务器
(1)挂载镜像文件,安装DNS和DHCP服务器;
[root@clr ~]# systemctl stop firewalld #临时关闭防火墙
[root@clr ~]# setenforce 0
[root@clr ~]# mount /dev/sr0 /mnt #将光盘镜像挂载到/mnt目录下
mount: /dev/sr0 写保护,将以只读方式挂载
[root@clr ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
tmpfs 394M 32K 394M 1% /run/user/0
/dev/sr0 4.4G 4.4G 0 100% /mnt #查看新挂载的光盘镜像
[root@clr ~]# yum install -y bind dhcp #同时安装DNS(软件名叫bind)和DHCP服务
已加载插件:fastestmirror, langpacks
(2)修改DNS的主配置文件;
[root@clr ~]# vim /etc/named.conf #修改主配置文件
options {
listen-on port 53 { 192.168.80.20; }; #监听53号端口,并使用192.168.80.20提供DNS域名解析服务
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { any; }; #允许所有网段使用本服务器的DNS解析服务
(3)修改区域配置文件,添加正反向区域配置;
[root@myhost2 ~]# vim /etc/named.rfc1912.zones #修改区域配置文件
#设置修改正向域名解析服务
zone "gzy.com" IN { #正向解析"gzy.com"区域
type slave; #类型为从区域,设置slave
masters { 192.168.80.20;}; #设置连接到主域名服务器的IP地址192.168.80.20
file "slaves/gzy.com.zone"; #指定从域名服务器的数据文件为slaves/gzy.com.zone
};
#设置修改反向域名解析服务
zone "80.168.192.in-addr.arpa" IN { #反向解析"192.168.80.0"网段的域名解析服务
type slave; #类型为从区域,设置slave
masters { 192.168.80.20;}; #设置连接到主域名服务器的IP地址192.168.80.20
file "slaves/gzy.com.zone.local"; #指定从域名服务器的数据文件为slaves/gzy.com.zone
};
(4)重启DNS服务,并验证测试;
[root@clr /var/named]# vim /etc/resolv.conf
# Generated by NetworkManager
#search localdomain
nameserver 192.168.80.20 #设置DNS主服务地址
nameserver 192.168.80.30 #设置DNS从服务地址
~
[root@clr /var/named]# systemctl restart named #重启DNS服务
[root@clr /var/named]# systemctl stop named #关闭主域名服务器的DNS服务(切记此命令一定是在主域名服务器上执行的,然后在从域名服务器上验证域名解析服务是否还能正常运行)
[root@myhost2 ~]# nslookup 192.168.80.100 #验证反向解析
100.80.168.192.in-addr.arpa name = clr.gzy.com.
100.80.168.192.in-addr.arpa name = abc.gzy.com.
[root@myhost2 ~]# nslookup 192.168.80.110 #验证反向解析
110.80.168.192.in-addr.arpa name = Ayu.gzy.com.
[root@myhost2 ~]# nslookup 192.168.80.120 #验证反向解析
120.80.168.192.in-addr.arpa name = xiaocai.gzy.com.
[root@myhost2 ~]# nslookup clr.gzy.com #验证正向解析
Server: 192.168.80.30 #可以看出是由从域名服务器进行解析的
Address: 192.168.80.30#53
Name: clr.gzy.com
Address: 192.168.80.100
[root@myhost2 ~]# nslookup Ayu.gzy.com #验证正向解析
Server: 192.168.80.30 #可以看出是由从域名服务器进行解析的
Address: 192.168.80.30#53
Name: Ayu.gzy.com
Address: 192.168.80.110
Name: Ayu.gzy.com
Address: 192.168.80.210
[root@myhost2 ~]# nslookup xiaocai.gzy.com #验证正向解析
Server: 192.168.80.30 #可以看出是由从域名服务器进行解析的
Address: 192.168.80.30#53
Name: xiaocai.gzy.com
Address: 192.168.80.120
(1)关闭客户端NAT模式中的使用本地DHCP服务将IP地址分配给虚拟机;
(2)更改网络连接设置,选择自动获取IP地址和DNS服务器地址;
(3)验证DHCP和DNS服务器是否生效;
(1)修改网卡配置文件,设置通过dhcp服务器获取IP地址;
[root@bogon ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=321e3916-3634-443b-b772-d6b26761ca37
DEVICE=ens33
ONBOOT=yes
MTU=2
IPV6_PRIVACY=no
(2)重启网卡配置,并验证DHCP和DNS服务器是否生效;
[root@bogon ~]# systemctl restart network #重启网卡配置
[root@localhost ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1280
inet 192.168.80.163 netmask 255.255.255.0 broadcast 192.168.80.255
#由DHCP服务器动态获取的IP地址192.168.80.163
[root@localhost ~]# vim /etc/resolv.conf
# Generated by NetworkManager
search gzy.com
nameserver 192.168.80.20 #由DHCP服务器动态获取的DNS服务地址192.168.80.20和192.168.80.30
nameserver 192.168.80.30
[root@localhost ~]# nslookup 192.168.80.100 #验证反向解析
100.80.168.192.in-addr.arpa name = clr.gzy.com.
100.80.168.192.in-addr.arpa name = abc.gzy.com.
[root@localhost ~]# nslookup 192.168.80.110 #验证反向解析
110.80.168.192.in-addr.arpa name = Ayu.gzy.com.
[root@localhost ~]# nslookup 192.168.80.120 #验证反向解析
120.80.168.192.in-addr.arpa name = xiaocai.gzy.com.
[root@localhost ~]# nslookup clr.gzy.com #验证正向解析
Server: 192.168.80.20
Address: 192.168.80.20#53
Name: clr.gzy.com
Address: 192.168.80.100
[root@localhost ~]# nslookup xiaocai.gzy.com #验证正向解析
Server: 192.168.80.20
Address: 192.168.80.20#53
Name: xiaocai.gzy.com
Address: 192.168.80.120
[root@localhost ~]# nslookup girl.gzy.com #验证正向解析
Server: 192.168.80.20
Address: 192.168.80.20#53
girl.gzy.com canonical name = clr.gzy.com.
Name: clr.gzy.com
Address: 192.168.80.100