目录
引入:
当前TCP/IP网络中的设备之间进行通信,是利用和依赖于IP地址实现的。但数字形式的IP地址是很难记忆的。当网络设备众多,想要记住每个设备的IP地址,可以说是"不可能完成的任务"。那么如何解决这一难题呢?我们可以给每个网络设备起一个友好的名称,如:www.baidu.com,这种由文字组成的名称,显而易见要更容易记忆。但是计算机不会理解这种名称的,我们可以利用一种名字解析服务将名称转化成(解析)成IP地址。从而我们就可以利用名称来直接访问网络中设备了。除此之外还有一个重要功能,利用名称解析服务可以实现主机和IP的解,即:当主机IP变化时,只需要修改名称服务即可,用户仍可以通过原有的名称进行访问而不受影响。
一、DNS简介
1.DNS介绍
DNS:Domain Name System 域名系统,应用层协议,是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网,基于C/S架构,服务器端:53/udp, 53/tcp 实际上,每一台 DNS 服务器都只负责管理一个有限范围(一个或几个域)内的主机域 名和 IP 地址的对应关系,这些特定的 DNS 域或 IP 地址段称为 zone(区域)。根据地址解 析的方向不同,DNS 区域相应地分为正向区域(包含域名到 IP 地址的解析记录)和反向区 域(包含 IP 地址到域名的解析记录)
IPv4的根名称服务器:全球共13个负责解析根域的DNS服务器,美国10个,英国1,瑞典1,日本1
IPv6的根名称服务器:全球共25个,中国1主3从,美国1主2从
dns:域名解析协议
作用:将域名转化成ip地址
IP地址是32位二进制数(010101……),人们为了方便记忆,将其转化成十进制,由于都是数字,不方便记忆,所以出现了域名,方便人们记忆。
一个dns服务器,只管字节范围内的解析
服务器端口:53/udp, 53/tcp
53/udp解析地址,53/tcp 主从之间同步
正向解析:将域名解析为对应的ip地址。
反向解析:通过ip地址解析对应的域名。
2.DNS查询方式
-
递归查询:一般客户机和本地DNS服务器之间属于递归查询,即当客户机向DNS服务器发出请求后,若DNS服务器本身不能解析,则会向另外的DNS服务器发出查询请求,得到最终的肯定或否定的结果后转交给客户机。此查询的源和目标保持不变,为了查询结果只需要发起一次查询。(不需要自己动手)递归只需问一次
-
迭代查询:一般情况下(有例外)本地的DNS服务器向其它DNS服务器的查询属于迭代查询,如:若对方不能返回权威的结果,则它会向下一个DNS服务器(参考前一个DNS服务器返回的结果)再次发起进行查询,直到返回查询的结果为止。此查询的源不变,但查询的目标不断变化,为查询结果一般需要发起多次查询。(需要自己动手) 迭代要多次
递归查询:客户机和本地服务器之间的,对已有服务器依次发送,A可以解析则返回,不能则递归到下一台直到成功或全部都失败返回结果,不需要动手。
迭代查询:本地服务器向其他服务器查询,查询源不变查询目标一直在变,需要多次查询,需要自己动手。
3.域名组成
例如: www.baidu.com.
从右往左看
.根域
.com 顶级域 一级域
.baidu 二级域
www 主机名
例如: www.baidu.com
com 公司
edu 教育
org 组织
cn 中国
根的dns服务器只能解析 主机名+根域
一级域的dns服务器只能解析 主机名+一级域+根域
二级域的dns服务器 主机名+二级域+一级域+根域
4.DNS服务器类型
缓存域名服务器
- 也称为DNS高速缓存服务器
- 通过向其他域名服务器查询获得域名-->IP地址记录
- 将域名查询结果缓存到本地,提高重复查询时的速度
主域名服务器
- 特定DNS区域的权威服务器,具有唯一性
- 负责维护该区域内所有域名-->IP地址的映射记录
- 需要自行建立所负责区域的地址数据文件
从域名服务器
- 也称为辅助域名服务器,是对主域名服务器的热备份
- 其维护的域名-->IP地址记录来源于主域名服务器
- 需要从主域名服务器自动同步区域地址数据库
5.dns的解析过程
1.先看我本机的hosts文件,如果有,直接访问;如果没有,就去找你设置的缓存dns服务器
2.如果缓存服务器有,直接反馈结果(递归);如果没有,就需要迭代查询,直接去找根域服务器
3.由于根域服务器,只能解析 根,无法解析www.baidu.com,但是根域服务器让你去找一级域服务器
4.一级域发现自己也解析不了,让你去找二级域
5.二级域发现这台服务器在自己的管理范围内,直接反馈结果给缓存服务器
6.缓存服务器再交给客户
6.本地名称解析配置文件——hosts
文件位置
- Linux hosts文件位置:/etc/hosts
- windows hosts文件位置 : c:/windows/system32/drivers/etc/hosts
7.在内网搭建DNS服务器
在内网环境中,我们需要一台自己的dns服务器去解析自己内网的服务,ip地址不方便记忆,可以使用域名上网
(软件名 bind , 服务名 named)
bind主包
yum install bind bind-utils -y 主软件 和 配置包管理软件(工具包)
正向解析
正向解析:把域名解析成ip地址,以kgc.com 为例
使用一台虚拟机192.168.246.7
rpm -q bind 检查是否安装dns服务
yum -y install bind 安装dns服务,安装bind软件包 (bind为DNS服务程序)
重点1.DNS解析的作用
2.递归查询与迭代查询的原理
3.DNS解析过程
4.正向解析,主从复制
还有......见后续文章
二、CDN——内容分发网络
静态资源:不需要服务器二次处理的(图片、txt、视频)
动态资源:需要服务器二次处理的(java、Python、php)