计算机网络-Wireshark实验
实验设备和环境:
实验过程及步骤:(给出相应的实验环境拓扑图和实验说明,可另附页)
1) 根据实验拓扑图完成实验环境的搭建;
2) 根据相关信息进行网络配置,此处可以自己发挥,并可以故意设置错误,通过抓包来分析错误的原因,并解决此问题;
一开始尝试使用pc对www.jd.com测试ping命令未果,发现是由于混淆HTTP和DNS服务器,将DNS地址设置为了HTTP服务器的ip。
3) 完成web服务器的设置:
4) 完成DNS的设置:
5) 抓取浏览器的数据,观察DNS服务器及web服务器开启和没开启时的数据有何不同,并进行简单的解释说明;
①未开启DNS和web服务器时,使用浏览器发送请求:
广播查找DNS服务器未果。
②仅开启DNS服务器
可从DNS服务器获取目标域名的IP地址,但广播无法找到HTTP服务器。
③开启DNS和web服务器后,使用浏览器发送请求:
浏览器通过DNS获得jd.com的ip地址后,向目标ip进行TCP三次握手,随后发送HTTP报文并获取响应报文获取资源,最后进行TCP四次挥手。
6) 分析HTTP协议,了解应用层协议实现的一些细节问题。使用浏览器请求网页:
成功接收到jd.html
查看HTTP报文数据并分析:
①请求报文由请求行、首部行组成。请求行有三个字段,分别是方法字段GET、URL字段/jd.html、HTTP协议版本字段1.1。首部行分别说明了Accept-language、User-Agent、Accept-Encoding、Host、Connection方法等,由于请求报文使用了GET方法,因此报文实体体为空,因此该报文仅含报文头,为163bytes。加上TCP、IP、链路层首部共54bytes,一共217bytes。
②经过一系列的TCP对数据资源进行传输后,服务端发送HTTP响应报文,响应报文由初始状态行、首部行、实体体组成。初始状态行包含HTTP协议版本1.1、状态码200表示请求成功,消息在返回的响应报文中、相应状态信息OK。首部行分别说明了Server、Auth、Cache-Control、Content-Type、Content-Length等,实体体为传输的数据,长度为546103bytes。该响应报文头长度为131bytes,由于资源由TCP分片传输,选中查看TCP传输的所有数据,整个HTTP报文一共546103+131=546234bytes。