DNS domain name server/system
FQDN 完全域名(完全正式域名标识)
http://www.pikachu1.com.
主机名称(www) 一级域名(pikachu1) 顶级域名(com) 根域(. )
DNS解析顺序:从右往左
域名用.分层,每层可包含63字节,最多可有127层
但所有层加在一起,不得超过256个字节
域名允许使用:大小写a-z,数字0-9及-连接线,但是不区分大小写
主dns 提供域名解析服务 所发布域名具备权威性
辅dns 配合主dns使用 数据是从主dns同步
dns服务器 提供域名解析的服务器 存放解析数据
dns缓存服务器 解析客户机的请求 并将结果缓存到服务器
资源记录 dns的数据类型 各种解析类型
zone区文件 dns的解析文件 用于存放资源记录
查询流程
(解析顺序:从右往左):如www.pikachu1.com
客户机通过域名访问网站时,需要先将域名解析成ip地址才可访问,所以会根据本机设置的dns服务器地址查询域名解析。
客户机将域名解析请求信息发送给dns,服务器收到信息后,查询本地缓存中是否有匹配信息,如果有则直接返回。
如果没有,则询问根,com域名的解析地址。然后根据根服务器返回信息,再次询问com服务器,pikachu1服务器地址。根据com服务器返回信息,询问pikachu1服务器www的解析地址。
最终将此解析信息返回给客户端,同时保存一份到本地缓存中,以备下次查询使用。
查询模式:
递归 在收到客户机请求之后,必须告诉客户机一个准确的结果,如果没有相关数据,就去到其它服务器询问。
迭代 在受到客户机请求之后,不会返回结果,而是告诉客户机另一台服务器的地址客户机通过该地址去问另一台服务器,直到查询到最终的结果。
DNS服务器搭建
centos7
服务端ip 192.168.146.201
#yum -y install bind
修改配置文件
#vim /etc/named.conf
删除无用项,保留如下:
options { 主配置区,固定格式
directory "/var/named"; 设置工作目录,也就是区文件目录,引号内为绝对路径
};
zone "." IN { 区文件区,引号内要写要解析的域名,IN为声明,可省
type hint; 身份,master-主,slave-从,forward-转发,hint-根域
file "named.ca"; 区文件名,引号内写文件名称,默认.zone结尾
};
#cd /var/named
#ls
#cp -p named.localhost piakchu1.com.zone(注意文件的所有者,保留原属性)
#vim pikachu1.com.zone
$TTL 1D 缓存过期时间
@ IN SOA @ rname.invalid. (
0 ; serial 序列
1D ; refresh 刷新时间
1H ; retry 重试时间
1W ; expire 过期时间
3H ) ; minimum 缓存过期时间
NS @ 授权服务器的地址
A 127.0.0.1 域名解析
AAAA ::1 域名解析
(系统会比较TTL和minimum,不同时,按照minimum)
(缓存过期时间-域名查询保质期)
注意事项:
1,此文件中出现的任何域名必须加上根域;
2,此文件的@都会翻译成本机域名(邮箱的@换成“.”)
(序列:2019012401)
#systmectl restart named
测试
#vim /etc/resolv.conf
将全局DNS配置文件的DNS1改成127.0.0.1(相当于自己问自己)
dns解析查询命令nslookup
#yum provides */nslookup 查询nslookup命令的软件包
#yum -y install bind-utils
#nslookup pikachu1.com
补充:
bind-chroot安全性增强工具,它可以把bind的主配置文件路径改为/var/named/chroot/etc/named.conf,
而区文件的目录改为/var/named/chroot/var/named/
pikachu1.com. IN SOA pikachu1.com. rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS pikachu1.com.
A 1.1.1.1
AAAA ::1
a A 1.1.1.2 ;a.pikachu1.com
www A 1.1.1.3 ;www.pikachu1.com
b.pikachu1.com. A 1.1.1.4 ;b.pikachu1.com
c CNAME b.pikachu1.com. ;c.pikachu1.com
mail MX 5 1.1.1.5 ;@mail.pikachu1.com
MX 10 1.1.1.6 ;@pikachu1.com
MX 15 c.pikachu1.com.
(CNAME-域名解析,MX-邮件;解析c.pikachu1.com会先解析为b.pikachu1.com,再解析为1.1.1.4,10的优先级高于5)
“;”-注释
#nslookup c.pikachu1.com
DNS主辅服务器搭建
主服务器ip 192.168.146.201
#vim /etc/named.conf
(allow-transfer可写可不写)
区文件和上面一样
辅服务器ip 192.168.146.202
#yum -y install bind
#vim /etc/named.conf
#systemctl restasrt named
会自动生成区文件
DNS转发服务器
主服务器
辅服务器
完全转发
完全转发 forward only
条件转发
DNS缓存服务器
递归查询“recursion yes”