RHCE 第九天 DNS及案例

DNS

域名系统DNS(Domain Name System),是因特网使用的命名系统,用来把便于人们使用的机器名字转换成为IP地址。域名系统其实就是名字系统。为什么不叫“名字”而叫“域名”呢?这是因为在这种因特网的命名系统中使用了许多的“域(domain)”,因此就出现了“域名”这个名词。“域名系统”明确地指明这种系统是应用在因特网中。

因特网的域名结构

由于因特网的用户数量较多,所以因特网在命名时采用的是层次树状结构的命名方法。任何一个连接在因特网上的主机或路由器,都有一个唯一的层次结构的名字,即域名(domain name)。这里,“域”(domain)是名字空间中一个可被管理的划分。

域名只是逻辑概念,并不代表计算机所在的物理地点。他分为三大类:

(1) 国家顶级域名:采用ISO3166的规定。如:cn代表中国,us代表美国,uk代表英国,等等。国家域名又常记为ccTLD(cc表示国家代码contry-code)

(2) 通用顶级域名:最常见的通用顶级域名有7个,即:com(公司企业),net(网络服务机构),org(非营利组织),int(国际组织),gov(美国的政府部门),mil(美国的军事部门)。

(3) 基础结构域名(infrastructure domain):这种顶级域名只有一个,即arpa,用于反向域名解析,因此称为反向域名。

在这里插入图片描述



现如今全球一共投放13个根服务器

服务器主要用来管理互联网的主目录,全世界只有13台。1个为主根服务器,放置在美国。其余12个均为辅根服务器,其中9个放置在美国,欧洲2个,位于英国和瑞典,亚洲1个,位于日本。所有根服务器均由美国政府授权的互联网域名与号码分配机构ICANN统一管理,负责全球互联网域名根服务器、域名体系和IP地址等的管理。 这13台根服务器可以指挥Firefox或互联网 Explorer这样的Web浏览器和电子邮件程序控制互联网通信。换句话说——攻击整个因特网最有力、最直接,也是最致命的方法恐怕就是攻击根域名服务器了。




递归查询与迭代查询

在这里插入图片描述
在这里插入图片描述

完整过程:

  1. 在浏览器中输入www.qq .com 域名,操作系统会先检查自己本地( 浏览器缓存,hosts,路由器缓存等 )是否有这个网址映射关系,如果有,就先调用这个IP地址映射,完成域名解析。
  2. 如果hosts里没有这个域名的映射,则查找本地DNS解析器缓存,是否有这个网址映射关系,如果有,直接返回,完成域名解析。
  3. 本地DNS解析器缓存都没有相应的网址映射关系,首先会找TCP/IP参数中设置的首选DNS服务器,在此我们叫它本地DNS服务器,此服务器收到查询时,如果要查询的域名,包含在本地配置区域资源中,则返回解析结果给客户机,完成域名解析,此解析具有权威性。
  4. 如果要查询的域名,不由本地DNS服务器区域解析,但该服务器已缓存了此网址映射关系,则调用这个IP地址映射,完成域名解析,此解析不具有权威性。
  5. 如果本地DNS服务器本地区域文件与缓存解析都失效,则根据本地DNS服务器的设置(是否设置转发器)进行查询,如果未用转发模式,本地DNS就把请求发至13台根DNS,根DNS服务器收到请求后会判断这个域名(.com)是谁来授权管理,并会返回一个负责该顶级域名服务器的一个IP。本地DNS服务器收到IP信息后,将会联系负责.com域的这台服务器。这台负责.com域的服务器收到请求后,如果自己无法解析,它就会找一个管理qq.com的DNS服务器地址给本地DNS服务器。当本地DNS服务器收到这个地址后,就会找qq.com域服务器,重复上面的动作,进行查询,直至找到www . qq .com主机。
  6. 如果用的是转发模式,本地DNS服务器就会把请求转发至上一级DNS服务器,由上一级服务器进行解析,上一级服务器如果不能解析,或找根DNS或把请求转至上上级,以此循环。找到最后把结果返回给本地DNS服务器,由此DNS服务器再返回给客户机。

递归:计算机只发送一次请求
迭代:计算机发送多次请求



DNS服务类型

主DNS服务器:	数据修改(接受用户请求返回数据)          master

辅助dns服务器: 	定期请求数据同步						slave

缓存dns服务器:	缓存dns数据							hint

转发服务器:		缓存服务器去掉缓存功能					forward

DNS解析答案

当DNS客户端向DNS服务器发出解析请求时,不管是否能够查询到想要的结果,都会返回一个解析答案。根据是否能够查询到想要的结果,可分为肯定答案和否定答案;根据解析答案是否由直接负责的DNS服务器返回,可分为权威答案和非权威答案

根据是否能够查询到想要的结果:
①肯定答案:存在查询的键(key),并且存在与其查询键对应的值(value)。
②否定答案:不存在查询的键(key),因此,自然不存在与其查询键(value)对应的值。

根据解析答案是否由直接负责的DNS服务器返回:
①权威答案:由直接负责的DNS服务器返回的答案。( 递归查询 )
②非权威答案:不是由直接负责的DNS服务器返回的答案。这种情况下一般是由其他DNS服务器直接返回缓存的解析结果。( 迭代查询 )



DNS协议的一种开源实现–bind
端口:53

提供dns服务的套件叫bind但执行服务名称的是named
我们说DNS是一种协议,而对于每一种协议的实现都需要程序员开发出遵循这种协议规范的软件程序来实现,这里要介绍的BIND就是DNS协议的一种开源实现。据统计,使用bind作为DNS服务器软件的DNS服务器大约占所有DNS服务器的九成。BIND全称为Berkeley Internet Name Domain,因为当今互联网上的通信几乎都必须借助于DNS服务器来解析主机名,得到通信对方的IP地址,而在DNS服务器上最常用的软件就是bind,所以,bind这款软件几乎可以说是当今互联网上常用的软件了。

bind的相关配置文件

etc/named.conf				主配置文件

/etc/rndc.conf				相关配置文件

/var/named/zidingyi.zone	区域数据文件,需要手动创建

/usr/sbin/named-checkconf	配置检查脚本工具

/usr/sbin/named-checkzone	区域配置检查工具

/var/named/named.ca  		区域文件dns数据库

解析库文件:存放于/var/named/目录下,一般名字为ZONE_NAME.zone

DNS在53端口上监听请求并提供响应的服务。出于性能的考虑,DNS查询请求用UDP协议交互并且每个请求的大小小于512字节,但是如果返回的请求大小大于512字节,交互双方会协商使用TCP协议

rndc服务默认监听在tcp的953端口,且默认监听于127.0.0.1地址,因此默认仅允许本地使用。

rndc的常见用法:
rndc reload:在不重新启动DNS服务的情况下,重新加载配置文件及zone.



资源记录名称

SOA(起始授权记录)		记录提供有关dns区域工作方式的信息 -----具体负责哪个区域的解析 (指定权威服务器)
					这代表着master/salve相关的认证,授权资料。不论有没有设定master/salve的架构都需要设定好。

NS  				标记dns服务器  将域名最终映射到哪一台主机(标记本地 dns服务器)   

CNAME				记录域别名                                             

PTR(用于反向DNS)	指针记录 将IPV4 IPV6地址映射到主机名 

A(ipv4地址记录) 		资源记录,将主机名映射到ipv4地址。

AAAA(ipv6地址记录)  	资源记录,将主机名映射到ipv6地址。

MX 					邮件交换记录,标记邮件服务主机名

在这里插入图片描述
TTL

$TTL 值 :当外部DNS服务器对你的DNS这个域进行查询时,这个记录会放置在对方的DNS服务器多久

五种定义的信息
serial number: 序列号 定义当前使用的数据序列号 sn遵循“年+月+日+编号” 主和从的更新依据
refresh: 定义检查间隔时间 (上次和这次变化的时间)
retry: 重试时间 < 检查时间>
expire: 过期时间 (什么时候通过从服务器解析)
negative answer ttl: 否定答案的缓存时长 (没有指定生存期的数据可以保存在数据中的时间及TTL值)

时间单位:M(分钟)、H(小时)、D(天)、W(周),默认单位是秒



案例一:正向解析

服务端:

[root@localhost ~]# mount /dev/sr0 /mnt/
mount: /mnt: WARNING: device write-protected, mounted read-only.
[root@localhost ~]# yum install bind -y
[root@localhost ~]# setenforce 0
  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值