DNS部署与安全
1 概述
1.1 相关概念
1.2 域名结构——树形结构
2 DNS解析分类及解析过程
2.1 按查询方式分类:
2.2 按查询的内容分类
2.3 用户机的DNS解析详细过程
2.4 服务器对域名请求的处理顺序
3 DNS服务器部署—以win2003为例
3.1 设置主要DNS服务器—正向解析
3.2 DNS反向解析
3.3 设置辅助DNS服务器
3.4 设置转发器
3.5 设置别名
3.6 DNS服务器清空缓存
3.7 将虚拟机连接到真实网络中
4 DNS服务器相关知识
4.1 域名解析记录类型
4.2 DNS服务器类型
4.3 相关命令
5 练习
参考文献
1 概述
不仅互联网有DNS服务器,中大型企业也有自己的DNS服务器。因此学会DNS服务器的搭建是很有必要的。本节首先介绍了DNS的基本概念、域名结构、解析类型和解析过程等原理。其次介绍了主要DNS服务器的部署过程,并扩展了设置转发器、备份、清理缓存、别名等操作。最后还讲解了常用的DOS命令。
1.1 相关概念
(1)DNS:Domain Name Service 域名服务
(2)作用:为客户机提供域名解析服务
(3)完全限定域名FQDN:(Fully Qualified Domain Name)由“主机名.域名”组成。一个域名下可以有多台主机,域名全球唯一,那么“主机名.域名”也全球唯一。完全限定域名FQDN实际上是一台服务器。
(4)常见主机名:
功能 主机名
网站 www
博客 blog
论坛 bbs
邮件 mail
(5)例子:
“www.sina.com.cn.”是一个域名,从严格意义上讲“sina.com.cn.”才是域名,而“www”是主机名。一般管理员在命名其主机的时候会根据其主机的功能而命名,比如说新浪将“sina.com.cn.”域名买下,今天买了台服务器提供网页服务,命名为“www”,那么对应的FQDN是www.sina.com.cn.,又买了台服务器提供邮件服务,命名为“mail”,那么对应的FQDN是mail.sina.com.cn.。因此只申请一个域名即“sina.com.cn.”即可。
(6)买域名:可以去万网。域名需要花钱,主机名不需要花钱。买了域名后上万网登录,可注册很多FQDN,并与服务器绑定。
(5)相关DOS命令
nslookup www.sina.com.cn. #查新浪网页服务器对应信息
nslookup mail.sina.com.cn. #查新浪邮件服务器对应信息
nslookup www.sina.com.cn. #查新浪网页服务器对应信息 nslookup mail.sina.com.cn. #查新浪邮件服务器对应信息
(6)监听端口号:TCP53、UDP53
1.2 域名结构——树形结构
(1)根域:一个点。一般情况下浏览器自动补全。
(2)根域之前依次是:顶级域名(百科及学术上顶级域名就是一级域名)、二级域名、三级域名……
(3)最前一个是主机名。
(4)例子:
如:www.baidu.com.
com后面的“.”为根域
com为顶级域名
baidu为二级域名
www为主机名
2 DNS解析分类及解析过程
2.1 按查询方式分类:
递归查询:客户机与本地DNS服务器之间,企业DNS服务器与转发器之间。(所问即所答)
迭代查询:本地DNS服务器与根等其他DNS服务器之间。(所问非所答)
2.2 按查询的内容分类
正向解析:已知域名,解析IP地址。
反向解析:已知IP地址,解析域名。
2.3 用户机的DNS解析详细过程
当一个用户在地址栏输入www.baidu.com时,DNS解析有大致十个过程,如下:
(1)浏览器先检查自身缓存中有没有被解析过的这个域名对应的ip地址,如果有,解析结束。同时域名被缓存的时间也可通过TTL属性来设置。
(2)如果浏览器缓存中没有(专业点叫还没命中),浏览器会检查操作系统缓存中有没有对应的已解析过的结果。而操作系统也有一个域名解析的过程。在windows中可通过c盘里一个叫hosts的文件来设置,如果你在这里指定了一个域名对应的ip地址,那浏览器会首先使用这个ip地址。但是这种操作系统级别的域名解析规程也被很多黑客利用,通过修改你的hosts文件里的内容把特定的域名解析到他指定的ip地址上,造成所谓的域名劫持。所以在windows7中将hosts文件设置成了readonly,防止被恶意篡改。
(3)如果至此还没有命中域名,才会真正的请求本地域名服务器(LDNS)来解析这个域名,这台服务器一般在你的城市的某个角落,距离你不会很远。
2.4 服务器对域名请求的处理顺序
(1)查看LDNS高速缓存。
(2)本地区域解析文件。即再查看作用域里有没有,即是否是自己所负责的,若有,则把IP发送给客户机。
(3)找转发器。(企业DNS服务器也能向根域名服务器发送递归解析,但一般为了偷懒,会装转发器)
(4)根。跳到Root Server 域名服务器请求解析。
(5)根域名服务器返回给LDNS一个所查询域的主域名服务器(gTLD Server,国际顶尖域名服务器,如.com .cn .org等)地址。
(6)此时LDNS再发送请求给上一步返回的gTLD。
(7)接受请求的gTLD查找并返回这个域名对应的Name Server的地址,这个Name Server就是网站注册的域名服务器。(如未命中继续迭代)
(8)Name Server根据映射关系表找到目标ip,返回给LDNS。
(9)LDNS缓存这个域名和对应的ip
(10)LDNS把解析的结果返回给用户,用户根据TTL值缓存到本地系统缓存中,域名解析过程至此结束
。
tips:
DNS软件里自带了根域的IP地址,在可以联网的基础上,只要自己解析不了,随时可以向根域发送请求。
3 DNS服务器部署—以win2003为例
3.1 设置主要DNS服务器—正向解析
(1)打开虚拟机win2003系统,设置固定的IP地址。
(2)安装DNS服务器软件。一般微软的2003和2008所有的自带服务软件一般去“>>单机开始>>单机管理工具”里面找,如果没有,可以去系统安装包(镜像文件里找)。win2003系统较老,需要将2003的系统镜像文件插入虚拟光盘中,之后打开我的电脑,可以看到光驱,双击运行。
tips:
win2008比较新,>>开始>>管理工具中依然找不到DHCP,但是不需要把win2008的镜像文件放入光盘,提前把所有服务安装包都放在C盘中了。
(3)点击安装可选的windows组件→找到网络服务双击进入→勾选DNS勾选确定。若未为服务器设置固定IP地址,则会弹出IP配置窗口进行配置。
(4)弹出文件缺少,因为虚拟机安装的时候将光驱修改为E盘,因此此处找不到。点击浏览,选择到光驱的响应文件夹。点确定。
(5)DNS软件安装后,打开cmd输入netstat -an,查看端口号开启情况,发现多了TCP53、UDP53。部署到这一步的DNS服务区可以称为缓存服务器。(思考:假设一个可以上网的服务器,将DNS部署至这一步,将其他客户机的DNS指向该服务器,能否正常上网?该服务器没有缓存、没有设置转发器,因为能上网可以自动访问根域)。
(6)点击开始→管理工具→DNS,右键正向查找区域→新建区域。
(7)选择主要区域→下一步→名称可命名为“baidu.com”(一般用所负责的域名服务来命名)下一步。
tips:
设置为主要区域的服务器一般称为主服务器,设置为辅助区域的服务器一般称为备份服务器,对主要区域进行备份(注意,只是对区域进行备份,而不是对整个服务器进行备份),存根区域指根域,全球只有13台,且都在外国。
(8)生成区域解析文件。该文件负责baidu.com相关域名的权威回答,直接由该服务器回答的是权威回答,转述的不算。
(9)暂不修改直接下一步→完成
(10)在空白处右键→新建主机A(A记录即为正向解析记录)→输入主机名www,FQDN自动补全→设置IP。
(11)打开winxp测试上述DNS是否部署成功。修改客户机winxp的DNS指向上述服务器,cmd输入以下命令,返回win2003服务器设置的IP地址,即可表示DNS服务设置成功。
nslookup www.baidu.com #可以返回IP 1.1.1.1
ping www.baidu.com #显示Pinging www.baidu.com [1.1.1.1] with 32 bytes of data:虽然没有连通,但是成功返回了IP 1.1.1.1
nslookup www.baidu.com #可以返回IP 1.1.1.1 ping www.baidu.com #显示Pinging www.baidu.com [1.1.1.1] with 32 bytes of data:虽然没有连通,但是成功返回了IP 1.1.1.1
tips:
(1)winxp尝试ping pan.baidu.com,出现如下回答,说明ping不通,主要由于DNS服务器没有设置pan.baidu.com的A记录。在win2003DNS服务器中添加pan.baidu.com的A记录,再去winxp上ping pan.baidu.com,发现还是ping不通。这时需要思考客户机访问域名时的过程,首先是查看缓存,之前的缓存中显示ping不通,后面更新了DNS服务器后还是ping不通。因此需要用"ipconfig /flushdns"这条命令清空缓存,之后再去ping pan.baidu.com,就可以ping通了。(win7及以上的系统就不存在这样的问题)。
(2)自己的DNS服务器未设置逆向解析时,查询域名信息时的对话解释:
3.2 DNS反向解析
(1)按上述设置主机www的方法,给win2003设置主机名为DNS1,并设置IP为服务器本机IP10.1.1.1。
(2)设置反向查找→新建→主要区域→如下反着填写→下一步直至完成。
(3)右键空白→新建指针→设置IP并浏览刚刚设置的正向解析中的主机DNS1。
(4)打开winxp测试上述DNS是否部署成功。cmd并输入nslookup www.baidu.com。正确返回DNS服务器名称及百度域名对应的地址。
3.3 设置辅助DNS服务器
备份的不是服务器,是服务器中的区域。
先将上述的DNS1的转发器取消,重置DNS2,再进行实验。
我们想对baidu.com区域进行备份,在主服务器DNS1中,右键baidu.com,在区域复制面板中,填写备份服务器的IP地址并选中添加,选择确定。
在备份服务器DNS2中→选择正向查找区域→右键→新建区域→选择辅助区域→确定。名称与主服务器区域名称一致,如baidu.com。
主服务器中设置了备份的区域的所有信息,将自动备份到备份服务器中。对备份服务器所备份的区域多次刷新后,可现实所备份的区域信息。
3.4 设置转发器
(1)用win2003-2模拟当地互联网的服务器,按以上步骤,在另一台win2003-2上新建一个DNS服务器,IP固定设为10.1.1.2。负责解析域名为qq.com。
(2)配置主机名为www的域名所对应的IP为2.2.2.2和DNS2对应的IP为10.1.1.2。
(3)在winxp中解析www.qq.com,无法获取响应结果。因为dns1没有解析www.qq.com的经验,同时由于无法联网没能访问根域。
(4)设置转发器是针对DNS服务器的,在win2003-1中,右键DNS服务器,在属性转发器中,添加win2003-2的IP地址(现实中为当地DNS服务器的IP)。
(5)在winxp中测试解析www.qq.com,虽然依旧是win2003-1那台DNS服务器对客户机进行应答,但其实给结论的是win2003-2那台DNS2服务器告诉DNS1的。
3.5 设置别名
(1)选中区域,在区域内的空白处右键,选择新建别名(CNAME)
(2)填写别名和相关的域名,点击确定。
(3)去winxp上测试,尝试解析,解析成功。
3.6 DNS服务器清空缓存
(1)打开win2003DNS1服务器,在查看中选中高级。
(2)将弹出缓存查找,右键缓存查找,清除缓存。
(3)选中反向查找区域,右键查看,取消高级。
3.7 将虚拟机连接到真实网络中
(1)VMware里有一个虚拟交换机VMnet0可桥接到真实机的网卡上。在虚拟机winxp和win2003的网卡设置中,将网络适配器连接到VMnet0这台交换机上.
(2)真实机有可能有多个网卡,比如笔记本电脑有有线网卡与无线网卡两种。一般虚拟机交换机VMnet0的桥接类型默认为自动,因此可能桥接到有线网卡,也可能桥接到无线网卡,这就导致有些人可以连接真实网络,一些人不可以。这需要查看目前真实机使用的是有线网卡还是无线网卡。
(3)点击VMware的编辑,设置虚拟网络编辑器,将VMnet0桥接到真实机所使用的网卡上。
(4)之前用作服务器的虚拟机记得把DHCP的地址池删除以及DNS的区域配置文件、转发器删除,再重新选择自动获取IP,之前当作客户机的虚拟机记得释放IP以及重新获取IP,两者都需要清空DNS缓存,因为在上述实验中存有多个DNS假缓存,cmd输入ipconfig /flushdns进行清空。
(5)cmd输入nslookup www.qq.com,解析成功。
注意:凡是做攻击操作的,不要将虚拟机连接到真实网络中,容易将局域网破坏。
4 DNS服务器相关知识
4.1 域名解析记录类型
A记录:正向解析记录
CNAME记录:别名
PTR记录:反向解析记录
SOA:权威服务器
MX:邮件交换记录
NS:域名解析服务器
4.2 DNS服务器类型
主要名称服务器
辅助名称服务器
根名称服务器
(高速)缓存名称服务器 :不设置区域
4.3 相关命令
nslookup 域名 #返回该域名信息
ipconfig
ipconfig /all
ipconfig /release #释放IP地址
ipconfig /renew #重获取IP地址
ipconfig /flushdns #刷新本地DNS缓存
ipconfig /displaydns #显示本地缓存的DNS记录
nslookup 域名 #返回该域名信息 ipconfig ipconfig /all ipconfig /release #释放IP地址 ipconfig /renew #重获取IP地址 ipconfig /flushdns #刷新本地DNS缓存 ipconfig /displaydns #显示本地缓存的DNS记录
5 练习
(1)主要DNS服务器:员工要指向DNS服务器,练习清空DNS缓存,练习nslookup手工解析
(2)反向解析
(3)辅助DNS服务器:成功更新区域解析记录
(4)设置转发器
(5)让虚拟机能够上网
(6)设置别名
tips:
下图中起始授权机构(SOA)是告诉我们谁是baidu.com的权威服务器,名称服务器(DS)是告诉我们谁是baidu.com的备份域名服务器。是自动生成的。
参考文献
[1] 第12节 DNS服务器基本概念、解析原理及部署——以win2003为例
[2] DNS域名解析原理与迭代和递归的区别
[3] 详解DNS域名解析全过程
————————————————
版权声明:本文为CSDN博主「像风一样9」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_64378913/article/details/121961619