codecamp

13.3 部署从服务器

作为重要的互联网基础设施服务,保证DNS域名解析服务的正常运转至关重要,只有这样才能提供稳定、快速且不间断的域名查询服务。在DNS域名解析服务中,从服务器可以从主服务器上获取指定的区域数据文件,从而起到备份解析记录与负载均衡的作用,因此通过部署从服务器可以减轻主服务器的负载压力,还可以提升用户的查询效率。

在本实验中,主服务器与从服务器分别使用的操作系统和IP地址如表13-2所示。

表13-2 主服务器与从服务器分别使用的操作系统与IP地址信息

主机名称 操作系统 IP地址
主服务器 RHEL 8 192.168.10.10
从服务器 RHEL 8 192.168.10.20

第1步:在主服务器的区域配置文件中允许该从服务器的更新请求,即修改allow-update {允许更新区域信息的主机地址;};参数,然后重启主服务器的DNS服务程序。

    [root@linuxprobe ~]# vim /etc/named.rfc1912.zones
    zone "linuxprobe.com" IN {
    type master;
    file "linuxprobe.com.zone";
    allow-update { 192.168.10.20; };
    };
    zone "10.168.192.in-addr.arpa" IN {
    type master;
    file "192.168.10.arpa";
    allow-update { 192.168.10.20; };
    };
    [root@linuxprobe ~]# systemctl restart named

第2步:在从服务器中填写主服务器的IP地址与要抓取的区域信息,然后重启服务。注意此时的服务类型应该是slave(从),而不再是master(主)。masters参数后面应该为主服务器的IP地址,而且file参数后面定义的是同步数据配置文件后要保存到的位置,稍后可以在该目录内看到同步的文件。

    [root@linuxprobe ~]# vim /etc/named.rfc1912.zones
    zone "linuxprobe.com" IN {
    type slave;
    masters { 192.168.10.10; };
    file "slaves/linuxprobe.com.zone";
    };
    zone "10.168.192.in-addr.arpa" IN {
    type slave;
    masters { 192.168.10.10; };
    file "slaves/192.168.10.arpa";
    };
    [root@linuxprobe ~]# systemctl restart named

第3步:检验解析结果。当从服务器的DNS服务程序在重启后,一般就已经自动从主服务器上同步了数据配置文件,而且该文件默认会放置在区域配置文件中所定义的目录位置中。随后修改从服务器的网络参数,把DNS地址参数修改成192.168.10.20,这样即可使用从服务器自身提供的DNS域名解析服务。最后就可以使用nslookup命令顺利看到解析结果了。

    [root@linuxprobe ~]# cd /var/named/slaves
    [root@linuxprobe slaves]# ls 
    192.168.10.arpa linuxprobe.com.zone
    [root@linuxprobe slaves]# nslookup
    > www.linuxprobe.com
    Server: 192.168.10.20
    Address: 192.168.10.20#53
    Name: www.linuxprobe.com
    Address: 192.168.10.10
    > 192.168.10.10
    Server: 192.168.10.20
    Address: 192.168.10.20#53
    10.10.168.192.in-addr.arpa name = www.linuxprobe.com.
    10.10.168.192.in-addr.arpa name = ns.linuxprobe.com.
    10.10.168.192.in-addr.arpa name = mail.linuxprobe.com.
13.2.2 反向解析实验
13.4 安全的加密传输
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }