搭建DNS正向解析服务器思路
服务端配置——
1.安装提供DNS服务软件bind,服务名为named
[[email protected] ~]# yum install bind -y
[[email protected] ~]# rpm -ql bind
2.编辑DNS主配置文件,定义域及域总文件目录、区域文件名
[[email protected] ~]# vim /etc/named.conf
3.创建并配置区域文件
[[email protected] ~]# vim /var/named/named.zuoye.com
客户端测试——
1.将客户端的 DNS 改为自己所配置的
(1)图形化界面,在网卡设置处改
(2)nmcli ipv4.dns 命令行
(3)/etc/resolve.conf 记录当前主机网卡匹配的DNS信息,vim 临时更改
2. 通过ping网址的方式、host测试
[[email protected] ~]# ping www.zuoye.com
[[email protected] ~]# host www.zouye.com 192.168.71.128
注意:
正向解析里,所有域名都必须有A记录解析,即必须解析出IP地址
区域资源记录文件中,标记域名必须写根域( . )例如zuoye.com. 主配置文件不用
DNS正向解析知识点
1.DNS主配置文件内容
[[email protected] ~]# vim /etc/named.conf
//options是全局模块
options {
//定义监听端口,若当前主机作为DNS服务器,让别人能够查询到我,此处写当前主机ip,也可以所有地址都监听,写any
listen-on port 53 { 127.0.0.1; };
listen-on-v6 port 53 { ::1; };
//定义数据文件目录
directory "/var/named"; //定义域总文件目录,所有区域文件都放在该目录下
dump-file "/var/named/data/cache_dump.db"; //缓存文件路径,格式为db数据库
statistics-file "/var/named/data/named_stats.txt"; //统计档案、文件
memstatistics-file "/var/named/data/named_mem_stats.txt"; //分配统计目录
allow-query { localhost; }; //只允许本地主机进行查询,不写该条默认所有人可以查询
recursion yes; //允许递归
};
//指定日志记录分类和它们的目标位置
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
//定义区域类型及区域文件名,file定义的路径是相对路径,绝对路径为/var/named/named.ca
zone "." IN {
type hint;
file "named.ca";
};
2.正向解析文件资源记录(Resource Record,RR),常见的正解文件RR相关信息有:
3.资源记录类型:
A——前面是域名对应后面IPv4的IP地址
AAAA——前面是域名对应后面IPv6的IP地址
NS——管理该域的DNS服务器的域名是什么 ,即NS后跟域名。例如: 写baidu.com域,要指出管理baidu.com这个域的DNS服务器的域名
MX——顺序数字,接受邮件的服务器主机名字。例如A给B发QQ邮件,发送人A的QQ号@qq.com,先发给QQ的邮箱服务器,找qq.com域的DNS服务器,里面有MX记录,记录邮箱服务器名字,名字前有数字,决定把邮件发给哪个邮箱服务器,数字越小越优先
CNAME——别名,形式为:别名 IN CNAME 真实域名
SOA起始授权记录——域的起始授权记录,对我们可以解析的域授权,包含7个参数
4.区域文件配置,可通过:r /var/named/named.localhost 读取配置格式
[[email protected] ~]# vim /var/named/named.zuoye.com
$TTL 1D //将ttl设置为全局变量($引用),设置ttl为1天
@ IN SOA @ admin.zuoye.com. ( 2021080201 1D 1H 1W 3H )
// @为通配符,连接主配置文件中定义的域,代表zone,现在@代表zuoye.com.
// SOA代表资源记录的类型为起始授权记录,第一个参数为主DNS服务器主机名,可以写@,也可以写master.zuoye.com. ,即交给哪个主机去解析
// admin.zuoye.com. 是管理员的Email,表示有问题找该管理员(本来是[email protected],但@有特殊含义表示域,因此改为 . )
// 序列号一般用年月日标记,01代表版本号,更新一次加一;1D代表更新频率为1天;1H代表失败重新尝试时间为1小时;1W代表失效时间为1周;3H代表缓存时间为3小时
IN NS master.zuoye.com.
// 前面有空格表示向上继承,延续上一条的domain
// NS记录管理zuoye.com域的域名服务器名字,此处定义为master.zuoye.com. ,即通过NS标记在这个域中,master.zuoye.com. 就是DNS服务器
master IN A 192.168.71.128
// 解析 master.zuoye.com. ,指定这台主机是192.168.71.128
www IN A 192.168.71.128
ftp IN A 192.168.71.128
wwww IN CNAME www
//解析www.zuoye.com. 对应的IP地址,用A类型映射,此处写www,系统会自动补全,ftp,wwww同理
// 让192.168.71.128作为本地DNS服务器,能查询出www、ftp、wwww这三个主机名对应的IP信息
// CNAME定义别名,形式为:别名 IN CNAME 真实域名
IN MX 10 mail.zuoye.com.
// MX记录接收邮件的服务器主机名,如果有要发送给zuoye.com域的邮件会优先发给数字小的邮件服务器