第一次作业:使用Packet Tracer分析HTTP包
0 个人信息
- 张樱姿
- 201821121038
- 计算1812
1 实验目的
熟练使用Packet Tracer工具。分析抓到的HTTP数据包,深入理解:HTTP协议,包括语法、语义、时序。
2 实验内容
客户端向服务器发送请求报文,服务器向客户端发送响应报文。
- 建立网络拓扑结构
- 配置参数
- 抓包
- 分析数据包
3 实验报告
本实验使用Cisco Packet Tracer这个平台来对网络环境进行模拟。
3.1 建立网络拓扑结构
如图,将一台PC端和一台Server端相连。
分析:客户(PC端)和服务器(Sever端)是通信中所涉及的两个应用进程,要达到抓包的目的,就需要建立通信关系,即需要在同一网段内。
3.2 IP配置
PC端的IP地址:192.168.1.38,子网掩码:255.255.255.0
服务器的IP地址:192.168.1.100,子网掩码:255.255.255.0
分析:对于PC端和服务器的IP配置,其子网掩码相同,在同一网段内,可以相互通信。
3.3 抓HTTP包并分析
3.3.1 使用PC端的Web Browser,在URL栏输入服务器的IP地址进行访问。
3.3.2 点击右下角的Simulation键进行仿真。
3.3.3 只勾选支持HTTP协议:
3.3.4 仿真后的信息传递结果如下:
3.3.5 请求报文分析:
注:此处报文省略了Get /HTTP/1.1,Get表示方法,请求读取URL所标志的信息,其后有一个空格,接着是一个完整的URL(此处使用了相对URL,即省略了主机的域名),后面又是一个空格,最后的HTTP/1.1表示HTTP的版本是1.1的。
- HTTP Data:Accept-Language:en-us表示用户希望优先得到英文版本的文档
- Accept:*/*表示用户希望接受任意数据类型
- Connection:close表示告诉服务器发送完请求的文档后就可释放链接
- Host:192.168.1.100表示用户所访问主机的域名
3.3.6 响应报文分析:
注:此处省略了HTTP/1.1 200 OK表示HTTP版本是1.1,200是状态码,表示OK。
- HTTP Data:Connection:close表示告诉服务器发送完响应的文档后就可释放链接
- Content-Length:369表示HTTP消息实体的传输长度
- Content-Type:text/xml表示设置页面内容是html
- Server:PT-Server/5.2表示后台服务器
3.4 Q&A
Q:关于HTTP协议的工作流程?
A:(图源自Carson_Ho的CSDN博客)
Q:关于响应报文的状态码?
A:状态码可分为5大类:
- 1XX:通知信息
- 2XX:成功
- 3XX:重定向
- 4XX:客户端出错
- 5XX:服务器出错
Q:常用的状态码?
A:
- 200:请求成功,请求内容与该响应一起返回
- 202:请求已被接受,但还没处理
- 301:请求的资源已被永久移动到新的位置
- 302:请求的资源被临时移动到新的位置
- 400:请求参数有误,当前请求无法被服务器理解
- 403:不允许访问该地址
- 404:Not Found
- 408:请求超时
- 500:服务器内部错误
- 502:Bad Gateway(网关出错)