实验七利用Wireshark分析DNS协议
一、实验目的
分析DNS协议 二、实验环境
与因特网连接的计算机,操作系统为Windows,安装有Wireshark、IE等软件。
三、实验步骤
nslookup工具允许运行该工具的主机向指定的DNS服务器查询某个DNS记录。如果没有指明DNS服务器,nslookup将把查询请求发向默认的DNS服务器。其命令的一般格式是:
nslookup –option1 –option2 host-to-find dns-server
1、打开命令提示符(Command Prompt),输入nslookup命令。
图中显示三条命令,第一条命令:nslookupwww.usst.edu.cn “提出一个问题” 即:“将主机www.usst.edu.cn的IP地址告诉我”。屏幕上出现了两条信息:(1)“回答这一问题”DNS服务器的名字和IP地址;(2)www.usst.edu.cn主机名字和IP地址。
第二条命令:nslookup –type=NS usst.edu.cn
在这个例子中,我们提供了选项“-type=NS”,域为usst.edu.cn。执行这条命令后,屏幕上显示了DNS服务器的名字和地址。接着下面是三个USST DNS服务器,
每一个服务器是USST校园里缺省的DNS服务器。 第三条命令:nslookup www.google.comdns2.edu.cn
在这个例子中,我们请求返回dns2.usst.edu.cn DNS server 而不是默认的DNS服务器(dns1.edu.cn)。此例中,DNS 服务器dns2.usst.edu.cn提供主机
www.google.com的IP地址。
2、ipconfig
ipconfig用来显示TCP/IP 信息, 你的主机地址、DNS服务器地址,适配器等信息。如果你想看到所有关于你所在主机的信息,可在命令行键入:
ipconfig /all
ipconfig在管理主机所储存的DNS信息非常有用。
如果查看DNS缓存中的记录用命令:ipconfig /displaydns 要清空DNS缓存,用命令:ipconfig /flushdns 3、利用Wireshark捕获DNS信息
(1)利用ipconfig命令清空你的主机上的DNS缓存。 (2)启动浏览器,将浏览器的缓存清空。
(3)启动Wireshark分组俘获器,在显示过滤筛说明处输入
“ip.addr==your_IP_address”(如:ip.addr==192.168.0.101),过滤器(filter)将会删除所有目的地址和源地址都与指定IP地址不同的分组。
(4)开始Wireshark俘获。
(5)在浏览器的地址栏中输入:http://www.google.com (6)停止分组俘获。
(7)重复上面的实验,只是将命令替换为:nslookup –type=NS usst.edu.cn (8)重复上面的实验,只是将命令替换为: nslookupwww.google.com dns1.usst.edu.cn 四、实验报告
在实验的基础上,回答以下问题:
(1) 查找DNS 查询和响应消息,发送的是UDP 还是TCP? Udp
(2) DNS 查询消息的目的地端口号是多少?DNS 响应消息的源端口号
是多少?客户端的端口是多少?
53,53,59381
(3) DNS 查询消息向哪个IP 地址发送请求?利用ipconfig来确定你的本
地DNS 服务器的IP 地址,这两个IP 地址相同吗?
相同的
(4) 检查DNS 查询消息,这个DNS 查询是什么类型?这个查询消息期望
什么回答?
递归查询,得到www.google.com 的地址
(5) 检查DNS 响应消息,这个消息提供了多少回答?每一个回答包括了
什么?
6个回答,
包括: 域名, 域名对应的ip地址, 存在时间, 数据长度, RR的类别代码,地址
(6) 观察从你的主机发送的并发TCP SYN 包,SYN 包的终端IP 地址和
DNS 响应消息所提供的IP 地址相符合吗?
符合