实验二 应用层协议分析实验报告
1.实验目的:
分析HTTP协议报文的首部格式,理解HTTP协议的工作过程;分析DNS的工作过程。
2.实验环境:
(1)连入Internet的主机一台
(2)主机安装Ethereal软件
3.实验步骤:
a.下载一个非常简单的HTML文件(该文件不嵌入任何对象),利用Ethereal软件分析HTTP协议。
(1) 启动Web browser。清空浏览器的缓存。
(2) 启动Ethereal,开始Ethereal分组俘获。
(3) 在打开的Web browser窗口中可输入下列地址之一
ü http://gaia.cs.umass.edu/ethereal-labs/HTTP-ethereal-file1.html
ü http://gaia.cs.umass.edu/ethereal-labs/HTTP-ethereal-file2.html
ü http://gaia.cs.umass.edu/ethereal-labs/HTTP-ethereal-file3.html
ü http://www.ietf.org/IETF-Standards-Process.html
ü http://www1.cs.columbia.edu/~danr/courses/6761/Fall00/
ü http://www.rfc-editor.org/rfc-index.html
ü http://www.ietf.org/rfc/rfc959.txt
ü http://www.rfc-editor.org/CurrQstats.txt
ü http://www.ietf.org/ietf/1bof-procedures.txt
浏览器中将显示一个只有一行或多行文字的非常简单的HTML文件。
(4) 停止分组俘获。在显示过滤筛选说明处输入“http”,分组列表子窗口中将只显示所俘获到的HTTP报文。将捕获结果保存为test1。
(5) 根据结果回答下列问题回答实验a的问题。
实验b. 下载一个含多个嵌入对象的网页,利用Ethereal软件分析HTTP协议。
(1) 启动浏览器,将浏览器的缓存清空。
(2) 启动Ethereal分组俘获器。开始Ethereal分组俘获。
(3) 在浏览器的地址栏中输入某个地址,(需要满足该地址下的网页是包含多个内嵌对象即可)。
(4) 停止Ethereal分组俘获,在显示过滤筛选说明处输入“http”,分组列表子窗口中将只显示所俘获到的HTTP报文。将捕获结果保存为test2
(5) 重新启动Web browser。启动Ethereal分组俘获器,进行分组捕获。在Web browser当中重新输入相同的URL或单击浏览器中的“刷新”按钮。
(6) 步骤同(5)。将捕获结果保存为test3
(7) 根据结果回答下列问题回答实验b的问题。
实验c. DNS 实验
(1) 在ms-dos 下,键入ipconfig/flushdns,清理并重设定DNS客户解析器缓存的内容。
(2) 打开浏览器,并清空浏览器的缓存.
(3) 打开Ethereal协议分析软件,在filter一栏输入 ip.address==”本机IP地址”,则该协议分析软件仅捕获从本机发送或发送到本机的数据包.
(4) 开始捕获数据
(5) 在浏览器的地址一栏输入任意一个Internet网址
(6) 停止捕获数据,并显示分析结果。将filter一栏输入DNS,即只查看DNS协议的内容。
(7) 根据结果回答下列问题回答实验d的问题。
4.实验分析,回答下列问题。
实验a
(1) 填写浏览器的输入的URL地址。
URL地址:http://gaia.cs.umass.edu/ethereal-labs/HTTP-ethereal-file2.html。
(2) 打开test1的捕获文件,分析请求报文
请求行字段:
首部字段:
(3) 打开test1的捕获文件,分析响应报文
状态行字段:
首部行字段:
(4) 根据捕获的报文,填写相应的内容
实验b.
根据操作回答下面的问题。
(1) 填写浏览器的输入的URL地址。
URL地址: http://www.baidu.com/ 。
(2) 分析test2的捕获文件,你的浏览器一共发出了多少个HTTP GET请求,每个GET 请求的对象是什么?这些请求被发送到的目的地的IP地址是多少?
(3) 分析你的浏览器向服务器发出的第一个HTTP GET请求的内容,在该请求报文中,是否有一行是:IF-MODIFIED-SINCE?分析服务器响应报文的内容,服务器是否明确返回了文件的内容?如何获知?
在该请求报文中,没有IF-MODIFIED-SINCE行。服务器并没有明确返回文件的内容,而是提供了网站识别码,并进行其他的请求。
(4) 分析捕获文件test3分析你的浏览器向服务器发出的第二个“HTTP GET”请求,在该请求报文中是否有一行是:IF-MODIFIED-SINCE?如果有,在该首部行后面跟着的信息是什么?
没有。如果有,首部行的值若等于之前服务器发送的响应报文中的Last-modified:首部行的值,则该报文显示对象并没有被修改。若不等,则对象被修改过。
(5) 服务器对第二个HTTP GET请求的响应中的HTTP状态代码是多少?服务器是否明确返回了文件的内容?请解释。
状态代码:200.服务器并没有明确返回文件的内容,而是提供了网站识别码,并进行其他的请求。
实验c.
(1) 填写浏览器的输入的URL地址。
URL地址: http://www.ynu.edu.cn/ 。
(2) 定位到DNS查询报文和查询响应报文,这两种报文的发送是基于UDP还是基于TCP的?DNS查询报文的目的端口号是多少?DNS查询响应报文的源端口号是多少?
这两种报文的发送基于UDP。
DNS查询报文的目的端口号是(53)。
DNS查询响应报文的源端口号是(53)。
(3) DNS查询报文发送的目的地的IP地址是多少?利用ipconfig命令(ipconfig/all)决定你主机的本地DNS服务器的IP地址。这两个地址相同吗?
DNS查询报文的发送的目的地的IP地址是:202.203.208.33
由实验可知,这两个地址是相同的。
(4) 填写相应的DNS报文各字段的值(选择两个相对应的DNS查询和响应报文即可,没有的字段可填无)
DNS 查询报文:
检查DNS查询报文,它是哪一类型的DNS查询?该查询报文中包含“answers”吗?
该DNS查询报文是递归查询。该查询报文中不包含“answers”。
DNS响应报文
检查DNS查询响应报文,其中提供了多少个“answers”?每个answers包含哪些内容?
由实验可得:DNS查询响应报文中提供了一个“answers”。
该 answers 中包含的内容:
Name:www.ynu.edu.cn
Type: A(Host address)
Class:IN(0x0001)
Time to live: 1 day
Data length: 4
Addr: 202.203.208.165
第二篇:实验二 应用层协议分析实验报告
实验二 应用层协议分析实验报告
序号: 姓名: 谢文清 学号: 20111120231 成绩
1.实验目的:
分析HTTP协议报文的首部格式,理解HTTP协议的工作过程;分析DNS的工作过程。
2.实验环境:
(1)连入Internet的主机一台
(2)主机安装Ethereal软件
3.实验步骤:
a.下载一个非常简单的HTML文件(该文件不嵌入任何对象),利用Ethereal软件分析HTTP协议。
(1) 启动Web browser。清空浏览器的缓存。
(2) 启动Ethereal,开始Ethereal分组俘获。
(3) 在打开的Web browser窗口中可输入下列地址之一
ü http://gaia.cs.umass.edu/ethereal-labs/HTTP-ethereal-file1.html
ü http://gaia.cs.umass.edu/ethereal-labs/HTTP-ethereal-file2.html
ü http://gaia.cs.umass.edu/ethereal-labs/HTTP-ethereal-file3.html
ü http://www.ietf.org/IETF-Standards-Process.html
ü http://www1.cs.columbia.edu/~danr/courses/6761/Fall00/
ü http://www.rfc-editor.org/rfc-index.html
ü http://www.ietf.org/rfc/rfc959.txt
ü http://www.rfc-editor.org/CurrQstats.txt
ü http://www.ietf.org/ietf/1bof-procedures.txt
浏览器中将显示一个只有一行或多行文字的非常简单的HTML文件。
(4) 停止分组俘获。在显示过滤筛选说明处输入“http”,分组列表子窗口中将只显示所俘获到的HTTP报文。将捕获结果保存为test1。
(5) 根据结果回答下列问题回答实验a的问题。
实验b. 下载一个含多个嵌入对象的网页,利用Ethereal软件分析HTTP协议。
(1) 启动浏览器,将浏览器的缓存清空。
(2) 启动Ethereal分组俘获器。开始Ethereal分组俘获。
(3) 在浏览器的地址栏中输入某个地址,(需要满足该地址下的网页是包含多个内嵌对象即可)。
(4) 停止Ethereal分组俘获,在显示过滤筛选说明处输入“http”,分组列表子窗口中将只显示所俘获到的HTTP报文。将捕获结果保存为test2
(5) 重新启动Web browser。启动Ethereal分组俘获器,进行分组捕获。在Web browser当中重新输入相同的URL或单击浏览器中的“刷新”按钮。
(6) 步骤同(5)。将捕获结果保存为test3
(7) 根据结果回答下列问题回答实验b的问题。
实验c. DNS 实验
(1) 在ms-dos 下,键入ipconfig/flushdns,清理并重设定DNS客户解析器缓存的内容。
(2) 打开浏览器,并清空浏览器的缓存.
(3) 打开Ethereal协议分析软件,在filter一栏输入 ip.address==”本机IP地址”,则该协议分析软件仅捕获从本机发送或发送到本机的数据包.
(4) 开始捕获数据
(5) 在浏览器的地址一栏输入任意一个Internet网址
(6) 停止捕获数据,并显示分析结果。将filter一栏输入DNS,即只查看DNS协议的内容。
(7) 根据结果回答下列问题回答实验c的问题。
4.实验分析,回答下列问题。
实验a
(1) 填写浏览器的输入的URL地址。
a) URL地址:
http://gaia.cs.umass.edu/ethereal-labs/HTTP-ethereal-file2.html。
(2) 打开test1的捕获文件,分析请求报文
请求行字段:
首部字段:
(3) 打开test1的捕获文件,分析响应报文
状态行字段:
首部行字段:
(4) 根据捕获的报文,填写相应的内容
实验b.
根据操作回答下面的问题。
(1) 填写浏览器的输入的URL地址。
URL地址: http://www.baidu.com/ 。
(2) 分析test2的捕获文件,你的浏览器一共发出了多少个HTTP GET请求,每个GET 请求的对象是什么?这些请求被发送到的目的地的IP地址是多少?
(3) 分析你的浏览器向服务器发出的第一个HTTP GET请求的内容,在该请求报文中,是否有一行是:IF-MODIFIED-SINCE?分析服务器响应报文的内容,服务器是否明确返回了文件的内容?如何获知?
(4) 分析捕获文件test3分析你的浏览器向服务器发出的第二个“HTTP GET”请求,在该请求报文中是否有一行是:IF-MODIFIED-SINCE?如果有,在该首部行后面跟着的信息是什么?
(5) 服务器对第二个HTTP GET请求的响应中的HTTP状态代码是多少?服务器是否明确返回了文件的内容?请解释。
实验c.
(1) 填写浏览器的输入的URL地址。
URL地址: http://www.baidu.com/ 。
(2) 定位到DNS查询报文和查询响应报文,这两种报文的发送是基于UDP还是基于TCP的?DNS查询报文的目的端口号是多少?DNS查询响应报文的源端口号是多少?
答:DNS查询报文和查询响应报文的发送是基于UDP的;
DNS查询报文的目的端口号是:domain(53)
DNS查询响应报文的源端口号是:64929
(3) DNS查询报文发送的目的地的IP地址是多少?利用ipconfig命令(ipconfig/all)决定你主机的本地DNS服务器的IP地址。这两个地址相同吗?
答:DNS查询报文发送的目的地的IP地址是:202.203.208.33;
用ipconfig/all查看后,这两个地址是一样的。
(4) 填写相应的DNS报文各字段的值(选择两个相对应的DNS查询和响应报文即可,没有的字段可填无)
DNS 查询报文:
检查DNS查询报文,它是哪一类型的DNS查询?该查询报文中包含“answers”吗?
DNS响应报文
检查DNS查询响应报文,其中提供了多少个“answers”?每个answers包含哪些内容?