一·DNS含义:
DNS是域名系统(Domain Name System)的缩写,它是由解析器和域名服务器组成。域名服务器是指保存有该网络中所有主机的域名和对应的IP地址,并具有将域名转化为IP地址功能的服务器。其中域名必须对应一个IP地址,而IP地址不一定有域名。域名系统采用类似目录树的等级结构。域名服务器为客户机/服务器模式中的服务器方,主要有两种形式:主服务器和转发服务器。将域名映射为IP地址的过程称为“域名解析”。在Internet上域名与IP地址是一对一或一对多的关系,域名只是便于人们记忆。而机器之间只能采用IP进行互动,域名解析由专门的域名解析服务器完成,DNS就是域名解析服务器,DNS命名用于Internet等TCP/IP等网络中,通过用户友好的名称查找计算机和服务。当用户在应用程序中输入DNS名称时,DNS服务可以将此名称解析为与之相关的其他信息,如IP地址。在上网时输入的网址,是通过域名解析系统解析找到了对应的IP地址,才能上网。DNS服务器不但有正向解析功能,也有反向解析功能。
二 DNS授权机制
从一级域依次向下排序,直到主机,但根域和顶级域是特殊的,不能由个人指定。其他的域可由公司、企业自行指定
三 服务器类型
主域名服务器:负责维护一个区域所有域名信息,为特定域名的所有信息的权威来源,可以修改信息。
辅助域名服务器:当主域名服务器出现故障,关机或负载过重等情况,辅助域名服务器作为备份服务器来提供域名解析服务,辅助域名服务器是从另一台远程域名服务器下载的所有域名信息,域名信息不具有修改权限
缓存域名服务器:当从远程域名服务器获得域名解析信息后,将其缓存到高速缓存中,当下次需要请求相同的域名解析时,直接从本地缓存中读取,缓存域名信息不具有权威性
转发域名服务器:转发域名服务器用来请求不在本地域名服务器上的信息,当收到域名请求服务时,现在本地缓存中查取,如果查询不到。即依次向指定的域名服务器发出请求,直到查到所需信息返回结果。否则,返回无法映射的信息
四 DNS具体实现过程:在解析过程中我们的主机事先是需要根域在哪的,主机在寻找根域的过程是用的递归的方式,而在找到根域后寻找目标主机时使用的是迭代方式。
注:如果在根域寻找目标主机的过程中使用的递归的方式的话,每次查找到后还要再次反馈给根域那么势必会增加根域服务器的负担,所以为了减少根域服务器的负担,在查找目标主机的过程中使用的是迭代的方式。
如果每次访问主机时都去解析会很麻烦,DNS中的缓存就是为了让一台主机访问其他主机时,不再去找根解析,以此减轻服务器的负担。
Linux下的DNS服务的工具:bind
服务脚本:/etc/rc.d/init.d/named
主配置文件:/etc/named.conf
区域解析库文件:/var/named/ZONE_NAME.zone
DNS中的名称与对应主机名不要求是一样的,一个名称可以对应多个IP,一个IP也可对应多个名称
反向域(反向解析时使用):.in-addr.arpa
域(逻辑概念):domain
区域(物理概念):zone
【区域解析库】每一行一个资源记录rr(resource record)
资源记录:有类型概念,用于标记此记录解析的属性
资源记录类型
SOA:起始授权记录,一个区域文件只能有一个
NS : name server 标记谁是解析服务器,可有多个
MX: 标记谁是域内的邮件服务器,可有多个(有优先级0-99)
A : 主机名->IP的映射关系
PTR:IP->主机名的映射关系
AAAA:主机名->IPV6的映射关系
CNAME:正式名称 如:A CNAME B :A是B的别名
注:A和PTR不能同时出现,一个解析库要么是正向解析库要么是反向解析库。
【权威服务器】:负责某域内全部主机的DNS服务器
【非权威应答】:通过本地缓存访问主机
具体操作如下:
1、安装Dns服务
2、在图形化界面 firewall-config 打开防护墙窗口进行如下设置,加入dns
3、查看是否修改成功
4、重启dns服务
5、查看53号接口是否打开,图中所示未对本机打开
6、编辑配置文件,打开接口
7重启服务,让修改生效:
8、.netstat -antlpe | grep named 再次查看53接口是否被打开,由下图可知,已经打开
9、vim /etc/resolv.conf 将dns设置为本机ip ,这里的search后写为example.com
dns服务配置完成
域名解析服务:
1正向解析:将域名解析为IP地址
先cd到dns服务下,复制loopback文件并重新命名(这里截的图名字改错了)应该是ljq.com
修改配置文件(这是改为hk.com的配置,名字和地址换成你的即可
vim ljq.com
编辑文件,将如下信息编辑到文件中
systemctl restart named 重启服务让修改生效
.测试
dig news.zr.com 输入域名让dns解析出ip
反向解析
反向解析:解析ip找到与之对应的域名
1.cd /var/named/ 切换到/var/named/目录下
2.cp -p named.loopback zr.com.ptr 复制named.loopback生成zr.com.ptr文件
3.vim /hk.com.ptr 编辑文件如图所示:(这里的地址采用反写)
vim /etc/named.rfc1912.zones 编辑此文件
改为反向
.systemctl restart named 重启服务让修改生效
.测试
dig -x 192.168.2.3 解析第一个ip