Linux服务器架设篇,DNS服务器(三),正反解区域的配置

一、大体架构

DNS服务器其实只有一个“真正”的配置文件,即 /etc/named.conf 。其他的配置文件都是依据此配置展开的。每个域都需要两个配置文件,即正解文件和反解文件。该文件的所在位置和类型由主文件 /etc/named.conf 指定。

例如:

options {
	listen-on port 53 { any; };
	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; };
	recursion yes;
	allow-transfer	{ none;};
};

zone "." IN {
	type hint;
	file "named.ca";
};

zone "lanyue.com" IN {
	type master;
	file "zone.lanyue.com";
};

zone "1.168.192.in-addr.arpa" IN {
	type master;
	file "zone.192.168.1";
};




注意:
(1)反解文件必须依据规范写成 "xxx.xxx.xxx.in-addr-arpa" 格式。

注意:

1.每个正解或反解可以称之为一个zone,zone总共分为三种类型。

(1)hint

hint其实就是DNS zone的root (.)。该zone最为重要。因为当DNS服务器在自己的数据库中找不到要查询的信息时,便会到hint(.)去查找。言外之意是说由 .(root) 声明的zone为hint类型的文件记录了世界上仅有的13台DNS服务器的相关信息(该文件默认为named.ca,此文件内容不需要进行任何修改)!

(2)Master

该类型的DNS数据库中,里面所有的主机名相关信息都需要管理员收到添加。修改完成后需要重启named服务数据即可更新完毕。

(3)Slave

该文件为自动更新模式,它自动从类型为master的DNS服务器中获取数据。无需管理员手动修改。

2.系统配置文件

配置方法可以查看上一篇博文。

(1)/etc/hosts

较早的主机名/域名 ==》IP对应文件。

(2)/etc/resolv.conf

该文件负责记录运营商提供的DNS服务器地址。

(3)/etc/nsswitch.conf

决定/etc/hosts和/etc/resolv.conf的优先使用权。

3.本配置文件声明还需要两个文件,即:

一个正解文件 ===> zone.lanyue.com

一个反解文件 ===> zone.192.168.1

二、正解

1.概念

根据主机名或域名查找对应IP。即

[主机名/域名] ===> [IP]

2.正解文件资源记录(RR格式)

例如:

$TTL	600
@	IN	SOA	master.lanyue.com. root.lanyue.com.	(10000 10800 3600 604800 38400 )
@	IN	NS	master.lanyue.com.
master.lanyue.com.	IN	A	192.168.1.111
www.lanyue.com.	IN	CNAME	master.lanyue.com.
ftp.lanyue.com.	IN	CNAME	master.lanyue.com.
dns.lanyue.com.	IN	CNAME	master.lanyue.com.
gov.lanyue.com.	IN	A	192.168.1.112
org.lanyue.com.	IN	A	192.168.1.113
edu.lanyue.com.	IN	A	192.168.1.114



注意:
(1)@代表本域,本例中为 lanyue.com。即所有的@都可以用lanyue.com代替。
(2)第二行中,第四个字段为主服务器域名,第五个字段为管理员邮件地址(邮箱中的@用 . 代替)。
(3)所有的主机地址最后均由 . 来代表互联网中的最顶层即根(root)。
(4)同一个主机可以绑定多个IP,用来实现多个功能。
(5)同一个IP可以绑定多个主机,可以为以后规划做准备。
(6)一个正解数据库中,至少要包含$TTL,SOA,NS,NS对应的A(地址)记录

(1)关键字解析

资源记录类型 字段值
SOA 起始授权机构
A(主机) IPV4地址(指明是正解)
AAAA(主机) IPV6地址
CNAME(别名) 别名
MX(邮件交换器) 负责接收域中电子邮件的主机
NS(名称服务器) 负责此域的权威名称服务器
PTR 主机名(指明是反解)

(2)SOA参数详解

字段 描述
主DNS服务器域名 完全合格域名(FQDN)
管理员邮件地址 注意:地址邮件中的@由.替代
序列号 区域文件的修订版本号
刷新时间  
重试时间  
过期时间  
最小TTL 是指区域文件缓冲记录的生存周期

三、反解

1.概念

根据IP地址得到主机名,即

[IP] ===> [主机名]

2.反解文件资源记录(RR格式)

例如:

$TTL	600
@	IN	SOA	www.lanyue.com.	root.lanyue.com.	(10000 10800 3600 604800 38400 )
@	IN	NS	www.lanyue.com.
111	IN	PTR	www.lanyue.com.
112	IN	PTR	gov.lanyue.com.
113	IN	PTR	org.lanyue.com.
114	IN	PTR	edu.lanyue.com.



注意:
(1)@代表本域,本例中为 lanyue.com。即所有的@都可以用lanyue.com代替。
(2)第二行中,第四个字段为主服务器域名,第五个字段为管理员邮件地址(邮箱中的@用 . 代替)。
(3)所有的主机地址最后均由 . 来代表互联网中的最顶层即根(root)。
(4)同一个主机可以绑定多个IP,用来实现多个功能。
(5)同一个IP可以绑定多个主机,可以为以后规划做准备。
(6)反解记录中,用PTR来声明是反解。
(7)只要在反解里面要用到主机名时,务必使用FQDN(完整主机名 ===> host name + domain name)格式设置。

四、启动与验证named(DNS)服务

1.启动named服务

service named restart    (red hat 或 centos 6及以前版本开启方式)
systemctl restart named.service    (centos 和 red hat 新版本启动方式)

注意:

如果是个人测试使用,可以使用

 iptables -F
setenforce 0
systemctl stop firewalld.service

三条命令关闭防火墙并且清除掉防火墙规则。如果是企业,则需要设置严谨的翻火墙规则放行需要的端口。

2.验证DNS解析

五、出现错误解决办法

DNS配置有个致命的不足,那就是对数据的格式有着非常严谨的要求,很多情况下稍有一点不用心甚至多个空格都有可能出现问题。这该怎么办,看着满屏的报错信息,又不想翻烦人的日志(如果有精力与时间,一定要好好学英语,用来提高自己根据日志信息拍错的能力。学好英语对以后编程、开发、维护等诸多方面都受益良多,毕竟美国在IT这方面确实是足够优秀的),这种情况下,我们只能根据一些优秀的拍错软件来拍错。

1. named-checkconf

named-checkconf    [options]    [文件名]


-h ===> 显示使用情况摘要并且退出。
-z ===> 执行named.conf配置文件中找到的所有主要区域的测试负载
-t <目录> ===> 将现有的目录切换至指定目录以便处理配置文件中的已包括伪命令



注意:
使用该命令是需要指定配置文件的路径,否则默认检测 /etc/named.conf 文件。

2.named-checkzone

named-checkzone    [options]    [区域名]    [区域文件名]



-q ===> 安静模式 
-d ===> 启用调试 
-c <类别> ===> 指定区域类别,如果没有指定就使用IN
-n <模式> ===> 检测NS记录
-k <模式> ===> 使用指定的格式(fail | warn(默认) | ignore)执行检测
-m <模式> ===> 检测MX
-M <模式> ===> 检测MX是否使用CNAME
-S <模式>  ===> 检测SRV记录是否使用CNAME

posted @ 2019-12-02 15:25  IT蓝月  阅读(410)  评论(0编辑  收藏  举报
Live2D