DNS服务器部署实验

知识点

资源记录参数:

$TTL 1D @ IN SOA @ gcm.qq.com.
;每一条资源记录的缓存时间 授权的二级域 IN 资源记录类型 数据(授权后的二级域) 邮箱地址

SOA(起始授权记录) 邮箱地址格式(五个参数,空格隔开)

五个参数

版本号(标记主从服务器数据是否一致) 刷新时间 重试时间(<刷新时间) 过期时间 否定应答的缓存时间

. 518400 IN NS a.root-servers.net.

NS(标识dns服务器的主机名(域名))

a.root-servers.net. 518400 IN A 198.41.0.4

主机名 资源记录的缓存时长 IN(标识Internet) 资源记录的类型(必须是大写,正向(A是映射到IPv4,AAAA是IPv6)反向PTR(IPv4/IPv6地址指向一个域名----指针记录)) 数据(IP/域名)

​ CNAME(别名)

DNS服务器部署

要求:

1.搭建dns服务器能够对自定义的正向或者反向域完成数据解析查询。

2.配置从DNS服务器,对主dns服务器进行数据备份

主从服务器都要做的配置
[root@server ~]# systemctl stop firewalld.service 
[root@server ~]# setenforce 0
[root@server ~]# mount /dev/sr1 /mnt
mount: /mnt: WARNING: source write-protected, mounted read-only.
[root@server ~]# dnf install bind -y

一、主服务器

配置文件
dig  
     -t 指定资源记录类型
     -x 反解析查询
     +trace 解析追溯显示源

注:如果资源记录文件是通过/var/named/named.localhost模版拷贝修改
方法一:cp   -a /var/named/named.localhost /var/named/named.xxxx

修改DNS.IPV4的配置
vim /etc/reslave.conf 
#该配置每次重启虚拟机会改变,不是永久修改
[root@server ~]# vim  /etc/named.conf 
options {
        listen-on port 53 { 192.168.79.128; };
        directory       "/var/named";
	allow-query     { any; };
};
zone "openlab.com" IN {
	type master;
	file "named.openlab.com" ;
};
zone "79.168.192.in-addr.arpa" IN {
        type master;
        file "named.192";
        allow-update { none; };
};
正向解析资源记录文件
vim /var/named/named.openlab.com 
$TTL 1D   @       IN      SOA     @       gcm.qq.com. (  
;每一条资源记录的缓存时间    授权的二级域    IN     资源记录类型    数据(授权后的二级域)          邮箱地址
                                        2024110101;serial 标记主从服务器数据是否一致
                                        1D      ;refresh 
                                        1H      ;retry
                                        3H      ;expire
                                        1D      ;minimum
)
@       IN      NS      ns.openlab.com.
ns      IN      A       192.168.79.128


www     IN      A       192.168.79.111
mail    IN      A       192.168.79.128
wwww    IN      CNAME   WWW                                        
测试
[root@localhost ~]# nslookup 
> server 192.168.79.128
Default server: 192.168.79.128
Address: 192.168.79.128#53
> www.openlab.com
Server:		192.168.79.128
Address:	192.168.79.128#53

Name:	www.openlab.com
Address: 192.168.79.111

反向解析资源记录文件
[root@localhost ~]# vim /var/named/named.192
$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      ns.openlab.com.
128     PTR     ns.openlab.com.

111     PTR     www.openlab.com.
123     PTR     ftp.openlab.com.

测试
[root@localhost ~]# nslookup 192.168.79.128
128.79.168.192.in-addr.arpa	name = ns.openlab.com.

[root@localhost ~]# nslookup 192.168.79.111
111.79.168.192.in-addr.arpa	name = www.openlab.com.

[root@localhost ~]# nslookup 192.168.79.123
123.79.168.192.in-addr.arpa	name = ftp.openlab.com.

二、主从服务器

完全区域传输
主服务器

将主服务器上的所有信息复制到辅助服务器上来实现完全区域传送,即复制整个区域文件

#主服务器的改动
options {
        listen-on port 53 { 192.168.79.128; };
        directory       "/var/named";
        allow-query     { any; };
        allow-transfer { 192.168.79.131; };        #允许传送资源记录文件到从服务器主机
};
zone "openlab.com" IN {
        type master;
        file "named.openlab.com" ;    #正向区域
};
zone "79.168.192.in-addr.arpa" IN {
        type master;
        file "named.192";			#反向区域
        allow-update { none; };
};
从服务器(131主机)
[root@localhost ~]# vim /etc/named.conf 
options {
        listen-on port 53 { 192.168.79.131; };  #从服务器主机的地址
        directory       "/var/named/slaves";
        allow-query     { any; };

};
zone "openlab.com" IN {
        type slave;
        file "named.openlab.com" ;    
	masters { 192.168.79.128; };  
};
zone "79.168.192.in-addr.arpa" IN {
        type slave;			#slave 从服务器
        file "named.192";
        masters { 192.168.79.128; };    #主dns服务器
};
[root@localhost ~]# systemctl restart named
#主从服务器都要重启服务
测试
#在/var/named/slaves目录下可以看到正反向的资源记录文件
[root@localhost ~]# watch ls /var/named/slaves   #watch命令默认每隔两秒刷新后边的动作
managed-keys.bind
managed-keys.bind.jnl
named.192
named.openlab.com
#该目录下文件以二进制表示,解析出来是乱码
增量区域传送

在主服务器的正方向区域文件进行修改

$TTL 1D ;每一条资源记录的缓存时间
@       IN      SOA     @       gcm.qq.com. (   ;授权的二级域   IN      资源记录类型    数据(授权后的二级域)
  邮箱地址
                                        2024110103;serial 标记主从服务器数据是否一致#版本号加1
                                        1M      ;refresh 
                                        1M      ;retry
                                        1M      ;expire
                                        1M      ;minimum
)
@       IN      NS      ns.openlab.com.
        IN      NS      slave.openlab.com.   #增加的标识主机
ns      IN      A       192.168.79.128
slave   IN      A       192.168.79.131


www     IN      A       192.168.79.111
ftp     IN      A       192.168.79.123      #增加一条资源记录
wwww    IN      CNAME   WWW
~                                       

从服务器

#同步监听
[root@localhost ~]# tail -f /var/log/messages
Nov  3 16:10:38 localhost named[3400]: checkhints: b.root-servers.net/AAAA (2001:500:200::b) extra record in hints
Nov  3 16:15:35 localhost named[3400]: client @0x7f6c9c01eb48 192.168.79.128#42337: received notify for zone 'openlab.com'
Nov  3 16:15:35 localhost named[3400]: zone openlab.com/IN: notify from 192.168.79.128#42337: zone is up to date
Nov  3 16:17:36 localhost NetworkManager[1055]: <info>  [1730621856.2599] dhcp4 (ens160): state changed new lease, address=192.168.79.131
Nov  3 16:17:36 localhost systemd[1]: Starting Network Manager Script Dispatcher Service...
Nov  3 16:17:36 localhost systemd[1]: Started Network Manager Script Dispatcher Service.
Nov  3 16:17:36 localhost chronyd[916]: Forward time jump detected!
Nov  3 16:17:46 localhost systemd[1]: NetworkManager-dispatcher.service: Deactivated successfully.

#重启主服务器
[root@localhost ~]# systemctl restart named

Nov  3 16:21:39 localhost named[3400]: client @0x7f6ca49dfb38 192.168.79.128#48106: received notify for zone 'openlab.com'
Nov  3 16:21:39 localhost named[3400]: zone openlab.com/IN: notify from 192.168.79.128#48106: zone is up to date
Nov  3 16:23:50 localhost named[3400]: zone openlab.com/IN: expired
Nov  3 16:23:50 localhost named[3400]: zone openlab.com/IN: Transfer started.
Nov  3 16:23:50 localhost named[3400]: transfer of 'openlab.com/IN' from 192.168.79.128#53: connected using 192.168.79.131#56111       #从主服务器传输到从服务器
Nov  3 16:23:50 localhost named[3400]: zone openlab.com/IN: transferred serial 2024110103
Nov  3 16:23:50 localhost named[3400]: transfer of 'openlab.com/IN' from 192.168.79.128#53: Transfer status: success
Nov  3 16:23:50 localhost named[3400]: transfer of 'openlab.com/IN' from 192.168.79.128#53: Transfer completed: 1 messages, 10 records, 264 bytes, 0.001 secs (264000 bytes/sec) (serial 2024110103)    #传输的内容
Nov  3 16:23:50 localhost named[3400]: zone openlab.com/IN: sending notifies (serial 2024110103)

测试
#查看添加的内容是否能解析
[root@localhost ~]# nslookup 
> server 192.168.79.131     
Default server: 192.168.79.131
Address: 192.168.79.131#53
> ftp.openlab.com
Server:		192.168.79.131
Address:	192.168.79.131#53

Name:	ftp.openlab.com
Address: 192.168.79.123
转发区域传送

主服务器

[root@server ~]# vim /etc/named.conf
options {
        listen-on port 53 { 192.168.79.133; };
        forwarders { 192.168.79.128; };
        forward only;
};

zone "openlab.com" IN {
        type master;
        file "named.openlab.com";
};

zone "qq.com" IN {
        type master;
        file "named.openlab.com";
};

zone "79.168.192.in-addr.arpa" IN {
        type master;
        file "named.192";
        allow-update { none; };
};

[root@server ~]# vim /var/named/named.openlab.com
$TTL 1D
@       IN      SOA     @       rname.invalid.  (
                                        2024110101
                                        1M
                                        1M
                                        1M
                                        3M  )
        IN      NS      ns.openlab.com.
        IN      NS      slave.openlab.com.
slave   IN      A       192.168.79.131
ns      IN      A       192.168.79.128

www     IN      A       192.168.79.222
ftp     IN      A       192.168.79.123
mail    IN      A       192.168.79.111
wwww    IN      CNAME   WWW

131     PTR     slave.openlab.com.
128     PTR     ns.openlab.com.
123     PTR     ftp.openlab.com.
# 重启named服务
[root@server ~]# systemctl restart named

从服务器

# 验证:
[root@client ~]# nslookup 192.168.79.128
128.79.168.192.in-addr.arpa	name = ns.openlab.com.

[root@client ~]# nslookup 192.168.79.111
111.79.168.192.in-addr.arpa	name = www.openlab.com.

[root@client ~]# nslookup www.openlab.com
Server:		192.168.79.128
Address:	192.168.79.128#53

Name:	www.openlab.com
Address: 192.168.279.222
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值