1.DNS
Domain Name Service
域名服务
作用:为客户机提供域名解析服务
2.域名组成
2.1 域名组成概述
如”www.sina.com.cn“是一个域名,从严格意义讲,“sina.com.cn”才被称为域名(全球唯一),这个域名是要花钱买的,而“www”是主机名
“主机名.域名”称为完全限定域名(FQDN)。一个域名下可以有多个主机名,域名全球唯一,那么“主机名.域名”肯定也是全球唯一
以“sina.com.cn”域名为例,一般管理员在命名其主机的时候会根据其主机的功能而命名,比如网站的是“www”,博客的是“blog”,论坛的是“bbs”,那么对应的FQDN分别为”www.sina.com.cn“,”blog.sina.com.cn“,”bbs.sina.com.cn“,虽然有这么多个完全限定域名(FQDN),然而我们只需要在阿里云,腾讯云之类的网站申请一个域名为“sina.com.cn”即可
2.2 域名组成
树形结构
根域:“.”
顶级域
国家顶级域: cn,jp,hk,uk
商业顶级域:
com 商业机构
gov 政府机构
mil 军事机构
edu 教育机构
org 民间组织机构
net 互联网
一级域名
二级域名
.....
例如:www.baidu.com.
注意:末尾是有个“.”的,只不过浏览器可以自动给你补全而已
最后的“.”为根域
.com为顶级域
.baidu为一级域名
www为主机名
3.监听端口
TCP 53和UDP 53
当客户机向服务器发起请求时,用的是UDP协议
当有多台DNS服务器连起来,DNS服务器之间的交流(转发),用的是TCP
4.DNS解析种类
4.1 按照查询方式分类
1.递归查询:客户机与本地DNS服务器之间
2.迭代查询:本地DNS服务器与根等其他DNS服务器
4.2 按照查询内容分类
1.正向解析:已知域名,解析IP地址
2.反向解析:已知IP地址,解析域名
5.案例
win2003的DNS服务端
将win2003软件放入
选择”安装可选的Windows组件“
双击“网络服务”
勾选“域名系统”
安装完成后,在cmd窗口输入netstat -an,可以看到TCP 53和UDP 53端口被启用
并且,在“管理工具”里面也有DNS的选项
如果要想把域名翻译成IP地址,那么对着“正向解析”右键,选择“新建区域”
“主要区域”,创建要运行的DNS服务器就选这个,
“辅助区域”,如果公司要弄两台DNS服务器,其中一台是用来做后备的,以防另外一台DNS服务器坏掉就选择这个,
“存根区域”,一般不选择这个,因为这个是让DNS服务器作为“根”服务器,而这个“根”服务器是国家专门机构去设置的
选择“主要区域”
这里输入的是你要预置好要解析的域名
所创建的文件就是专门用来解析域名baidu.com的,并且该文件是dns后缀的
直接点击“下一步”
创建baidu.com的正向解析完成
此时在“正向查找区域”内就会有你所设置的baidu.com的正向解析信息
SOA:解析baidu.com的权威服务器是谁,这里显示只有win2003自己
NS:解析baidu.com的DNS服务器有多少台,现在只有一台
对着白色区域右键---》新建主机
设置完全限定域名:
www为主机名(可以自定义)
设置完主机名,那么完全限定域名就自动变为:www.baidu.com
1.1.1.1则代表www.baidu.com解析为1.1.1.1的IP地址
最后按“添加主机”
完成添加,完成添加后,就可以向全世界去解析www.baidu.com的ip地址是1.1.1.1
为baidu.com这个域名配置多个完全限定域名pan.baidu.com,
解析为ip地址是:2.2.2.2
添加成功,此时,win2003的DNS服务器可以解析
www.baidu.com
和
pan.baidu.com
这两个完全限定域名了
注意:该实验是建立在第十章DHCP部署与安全的基础上的,所以win2003的DHCP服务器也是开启着的,客户机winxp的IP地址是由win2003自动分配的,并且请确保win2003与winxp的交换机是同一个
winxp的客户机
在winxp中,设置DNS服务器地址是win2003的IP地址10.10.10.1,因为win2003同时开启了DHCP服务器,所以作为客户机的winxp的IP地址设置为自动获取,让win2003为其分配
此时,在cmd窗口输入
nslookup www.baidu.com
那么,win2003的DNS服务器就会为你解析为1.1.1.1的IP地址
此时,在cmd窗口输入
nslookup pan.baidu.com(不会触发缓存机制)
那么,win2003的DNS服务器就会为你解析为2.2.2.2的IP地址
另外,为了查看客户机winxp是否使用了win2003的dns解析功能,你也可以用
ping www.baidu.com
和
ping pan.baidu.com
虽然,最后的结果是ping不通,但是可以看到客户机winxp是先去找win2003的dns服务器去解析这两个网址的,win2003也反馈给了客户机winxp两个ip地址,分别是:
1.1.1.1
和
2.2.2.2
也因此,可以发现,win2003的dns服务器功能顺利开启,
另外,这种做法是会触发winxp的DNS缓存机制的
6.查看自身的DNS缓存
在cmd窗口输入
ipconfig /displaydns
可以看到之前因为所做实验的缓存
7.删除(刷新)自身的DNS缓存
在cmd窗口输入
ipconfig /flushdns
之所以要学该命令,是因为电脑是有缓存机制的,当输入一个完全限定域名的时候,电脑会先找自身的缓存,看看有没有对应的IP地址,如果没有就会找位于C盘的hosts文件,如果都没有,才去找DNS服务器,
为了避免以前的DNS服务器解析错了自己的输入的完全限定域名从而导致自己上不了指定的网站,那么就要用改名了清除掉自身的缓存,从而重新找dns服务器进行正向解析
8.win2003为自身起解析域名
win2003服务端
“正向查找区域”的“baidu.com”,对着空白处右键---》“新建主机”
myDNS.baidu.com将会是在客户机中显示的解析域名
键入的IP地址为win2003自身的IP
并且勾选“创建相关的指针(PTR记录)”,最后按“添加主机”
添加完成
在“反向查找区域”右键---》“新建区域”
点击“下一步”
键入你的win2003的网络位地址的前三位
因为win2003的子网掩码是255.255.255.0
所以网络位地址(网段地址):10.10.10.0
所以此处输入
10.10.10
点击“下一步”
点击“下一步”
点击“完成”
创建成功
右击空白处---》“新建指针(PTR)”
因为win2003的ip地址是10.10.10.1,所以这里设置为1
下方的"浏览"则是选择已经设置好的“正向查找区域”中的作为win2003的完全限定域名mydns.baidu.com
创建成功
winxp客户机
此时在客户机winxp的cmd窗口输入
nslookup www.baidu.com
则会显示10.10.10.1的DNS服务器自身的域名是
mydns.baidu.com
9.设置多台DNS服务器共同工作(DNS的转发)
win2003-1(DNS服务器)
现在有两台作为DNS服务器的win2003,他们都使用共同一个交换机
win2003-1的IP地址是
10.10.10.1
子网掩码是
255.255.255.0
在DNS的“正向查找区域”,可以看到,该dns服务器可以解析
www.baidu.com,解析为:1.1.1.1
pan.baidu.com,解析为:2.2.2.2
并且会在客户机上显示该DNS服务器的名称:
mydns.baidu.com
"反向查找区域"这里的设置只是单纯设置了能在客户机显示该DNS服务器的名称:
mydns.baidu.com
这是与“正向查找区域”对应设置相匹配的
此时,对着Jack右键,选择属性
选择“转发器”,然后输入要转发的另外一台DNS的ip地址(win2003-2),这里的意思是,如果客户输入的要解析的DNS不是
www.baidu.com,
pan.baidu.com
的时候,win2003-1这台DNS服务器就会把这个解析请求转发给这里设定的其他的DNS服务器让其进行解析
然后按“应用”和“确定”
win2003-2(DNS服务器)
现在有两台作为DNS服务器的win2003,他们都使用共同一个交换机
win2003-2的IP地址是
10.10.10.2
子网掩码是
255.255.255.0
在DNS的“正向查找区域”,可以看到,该dns服务器可以解析
www.qq.com,解析为3.3.3.3
winxp(客户机)
让客户机与win2003-1和win2003-2是同一个交换机
因为该实验是建立在win2003-1提供DHCP服务上的,win2003-1除了提供DNS服务还提供了给客户机提供IP地址的DHCP服务,所以客户机这里才会有这样的设置
在cmd窗口输入
nslookup www.baidu.com (win-2003-1处理)
nslookup pan.baidu.com (win-2003-1处理)
nslookup www.qq.com (win-2003-1转发给win2003-2处理)
注意
当win2003-2的“正向查找区域”中的www.qq.com的IP地址从3.3.3.3改为4.4.4.4后
在客户机winxp再次输入nslookup www.qq.com,
此时解析出来的ip地址并不是4.4.4.4而是原来的3.3.3.3
这是因为
nslookup www.qq.com
是先发送给win2003-1的,但是此时win2003-1发现
nslookup www.qq.com
有对应的缓存3.3.3.3
所以win2003-1就不转发给win2003-2进行重新解析,而是把缓存的
3.3.3.3直接发给客户机所导致的
解决办法1
把win2003-1重启系统就好了
解决办法2
在“查看”,勾选“高级”
此时,会多出一个“缓存的查找”,对着其右键,选择“清除缓存”就可以了
10.备份DNS(辅助区域的作用)
win2003-1
在win2003-1的“正向查找区域”的baidu.com右键---》“属性”
选择“区域复制”,
选择“只允许到下列服务器”,
输入win2003-2的ip地址
注意:
不要选“到所有服务器”,若然选了这个,其他dns服务器都可以备份win2003-1的baidu.com,包括非法的(黑客的)dns服务器
win2003-2
右键,“新建区域”
选“辅助区域”
因为要复制(备份)的是win2003-1的“正向查找区域”的baidu.com,
所以这里选“正向查找区域”
因为要复制的是win2003-2的baidu.com,
所以这里输入baidu.com
输入win2003-1的IP地址
等待几十秒后,这个baidu.com的内容从win2003-1复制到win2003-2了
11.查看默认的DNS根服务器
右键,选择“属性”
选择“根提示”,这个列表就是世界上13台DNS的根服务器的IP地址
12.创建域名别名
在空白区域右键,选择“新建别名”
这里我设置了www.baidu.com的别名是myAlias.baidu.com
别名创建成功
在客户机winxp上的cmd窗口输入:
nslookup www.baidu.com
和
nslookup myAlias.baidu.com
,解析出来的IP地址都是
1.1.1.1,
并且还贴心地告知
myAlias.baidu.com
是
www.baidu.com
的别名
13.客户机域名请求解析流程
查看本地是否有缓存---》如果没缓存就找C盘下的hosts文件看看有没有对应的域名解析---》找DNS服务器
14.DNS服务器对域名的解析流程
先看DNS高速缓存---》缓存没有就看本地区域解析文件---》仍然没有就转发给另外的DNS服务器---》仍然没有就找“根”服务器
15.域名解析记录类型
A记录:正向解析记录
CNAME:别名
PTR记录:反向解析记录
MX:邮件交换记录
NS:域名服务器解析
16.DNS服务器分类
主要名称服务器 ---------- 用来解析域名(设置了正向查询区域或反向查询区域)
辅助名称服务器 ---------- 用来备份域名(备份其他DNS服务器已经设置好的正向查询区域或反向查询区域)
根名称服务器 ---------- 全世界有固定的13台根服务器
高速缓存名称服务器----------没有设置任何正向查询区域或反向查询区域的,单纯是用来转发到其他DNS服务器,而他自身只是单纯的把其他DNS服务器解析后回传的结果缓存起来提高解析速度的