一、DNS介绍
(1)DNS服务的作用
DNS服务器将域名翻译成IP地址,然后调出IP地址所对应的网页。
(2)DNS服务体系架构
①、DNS与域名
《1》域名分为三个部分,用 "."分割。
每个域名代表一个 IP,而DNS就是用来转换IP与域名。
《2》DNS服务由DNS服务器提供。
②、体系结构
DNS是一个分层的分布式名称对应系统,类似于计算机的目录树型结构。最顶端是“root”,root下方是基本的类别域名,被称为顶级域或者一级域,有两种划分方式,一种是按照行业划分,如:.com、.net;一种是按国家划分,如:.cn 。再往下是组织域名,例如:xingyun、baidu等。最底下是主机名,例如:mail、www等。
DNS的分布式数据库是以域名为索引的,各个域名实际上就是一颗很大的逆向树中路径,这个逆向树被称为域名空间。
树的最大深度不能超过127层,书中每个节点都有一个长达63个字节。
③、架构模型
DNS采用C/S架构模型。
《1》客户端
日常使用网络的计算机都是一个DNS客户端。应用程序、服务、进程等通过操作系统底层的功能发起对dns服务器的查询,对待定域名进行解析。
Linux中一般使用系统底层提供gethostbyname()功能进行域名解析。
解析的方式如下:
1、文件解析
/etc/hosts、/etc/networks两个文件可做域名的文件解析
(将localhost解析成127.0.0.1)
2、DNS服务器解析
1、DNS配置文件在/etc/resolv.conf文件中,里面配置DNS服务器。
(在nameserver后面添加DNS服务器IP即可)
2、配置文件/etc/nsswitch.conf控制查询顺序
3、DNS的专用查询命令
命令host、dig都不会使用/etc/nsswitch.conf的配置,只通过/etc/resolv.conf进行DNS查询。
【1】命令host可以用于dns查询
【2】命令dig也可以进行dns查询,输出较为详细的信息
【3】nslookup命令
《2》服务器
DNS是一个树状结构,查询的时候根据域名从右到左查询,域名每一级有独立的一个或多个服务器。
如下:
追踪整个域名的查询过程
查询过程:. ------> com. -------->baidu.com -------->www.baidu.com
(3)DNS查询类型
①、迭代查询
②、递归查询
这种方式的缺陷:在每一级的服务器上,都会缓存大量的信息。
实际的生产过程中,结合这两种方式使用:
二、DNS解析记录
域名注册完成后需要做域名解析,域名解析时会添加解析记录,这些记录有:
(1)A记录:将域名指向一个IPV4地址
(2)AAAA记录:将域名指向一个IPv6地址
(3)CHAME记录:将a域名指向B域名,可实现与被只想域名B相同的访问效果。表示歇息到领域各域名上。
(4)MX记录:建立电子邮箱服务,将指向邮箱服务器地址。
(5)NS记录:域名解析服务器记录,用来指定该域名有哪个DNS服务器进行解析。
(6)TXT记录:可任意填写,可以为空,一般做一些验证记录时会用到此项。
(7)SRV记录:添加服务记录服务器,服务记录时会添加此项,SRV记录了那台服务器提供了哪个服务。
(8)URL转发:①、显性URL转发记录:将域名指向一个HTTP(s)协议地址,访问域名是自动跳转至目标地址。相当于地址重写
②、隐性URL转发记录:将域名指向一个https协议地址,访问域名时自动跳转至目标地址,隐形转发会颖仓真实的目标地址。
(9)PTR记录:是A记录的逆记录,负责将IP反向解析为域名。
(10)SOA记录:起始授权机构记录,NS用于标识多态域名解析服务器,SOA记录用于在众多的NS记录中标识哪一台是主服务器。
三、DNS服务器搭建配置与解析过程
(1)程序安装
①、bind安装
②、DNS配置文件