明天继续给你们介绍Linux基础知识,本文主要内容是DNS的主从配置。
阅读本文,您须要有一定的DNS基础,假若您对此还存在疑惑,欢迎查阅以下文章:
LinuxDNS服务解读——DNS基础知识
LinuxDNS服务解读——DNS实战配置
因为在LinuxDNS服务解读——DNS实战配置一文中早已提及了单台DNS服务器的配置思路虚拟机linux安装dns服务器,因而在本文中不会对此进行过多赘言。
一、DNS主从构架思路
明天,我们将使用两台Linux设备,来实现DNS主从的构架配置。机器如下:
DNS主服务器:192.168.136.101
DNS从服务器:192.168.136.210
在DNS主从构架中,DNS从服务器从DNS主服务器上同步区域配置文件,也可以提供DNS服务。
二、DNS主服务器配置文件
为了实现DNS的主从配置,须要在单台DNS配置文件的基础上,添加allow_update选项,在本实例中,DNS主服务器配置文件如下:
options {
listen-on port 53 { any; };
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";
recursing-file "/var/named/data/named.recursing";
secroots-file "/var/named/data/named.secroots";
allow-query { any; };
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
bindkeys-file "/etc/named.root.key";
managed-keys-directory "/var/named/dynamic";
pid-file "/run/named/named.pid";
session-keyfile "/run/named/session.key";
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
zone "." IN {
type hint;
file "named.ca";
};
zone "pzz.com" IN {
type master;
file "pzz.com.zone";
allow-update{192.168.136.210;};
};
zone "136.168.192.in-addr.arpa" IN {
type master;
file "192.168.136.arpa";
allow-update{192.168.136.210;};
};
与LinuxDNS服务解读——DNS实战配置一文中不同之处在于每位zone的allow-update选项中富含DNS从服务器的IP地址。
正向解析和反向解析的区域配置文件与上文中完全相同。
三、DNS从服务器配置文件
在DNS从服务器上,首先安装DNS,然后其主配置文件更改如下:
options {
listen-on port 53 { any; };
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";
recursing-file "/var/named/data/named.recursing";
secroots-file "/var/named/data/named.secroots";
allow-query { any; };
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
bindkeys-file "/etc/named.root.key";
managed-keys-directory "/var/named/dynamic";
pid-file "/run/named/named.pid";
session-keyfile "/run/named/session.key";
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
zone "." IN {
type hint;
file "named.ca";
};
zone "pzz.com" IN {
type slave;
file "pzz.com.zone";
masters { 192.168.136.101; };
};
zone "136.168.192.in-addr.arpa" IN {
type slave;
file "192.168.136.arpa";
masters { 192.168.136.101; };
};
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
在上述配置文件中,须要更改的点为option选项中的listen-onport数组和allow-query数组,须要新加入的配置为zone配置,zone配置的区域必须和DNS主服务器保持一致,type类型为slavelinux设置环境变量,file可以自定义linux设置环境变量,当DNS主从构架成功运行后,DNS从服务器会手动同步DNS主服务器上的区域配置文件,该文件就是以从DNS服务器中的file文件命名的,masters选项为DNS主服务器的IP地址,在这儿须要注意IP地址前面和大括弧前面必须跟两个冒号。
四、DNS主从构架配置验证
当完成上述配置后,DNS从服务器开启DNS功能,命令如下:
systemctl start named
然后我们发觉,在/var/named目录下,手动生成了两个区域配置文件,如下所示:
以后,选择一台机器,将其DNS服务器的IP地址指向我们新配置的DNS从服务器虚拟机linux安装dns服务器,PING测试我们配置的一些域名记录,结果如下:
综上,DNS从服务器配置成功,才能从主服务器中手动同步区域配置文件,但是对外提供DNS服务。