课程设计报告 网络抓包
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
通信网综合课程设计
设
计
报
告
课题名称:
专业班级:
姓名:
学号:
起止时间:
重庆交通大学
信息科学与工程学院
目录
一、课题内容: (1)
二、设计目的: (1)
三、设计要求: (1)
四、相关知识: (2)
五、设计条件: (8)
六、详细设计: (8)
七、设计心得: (17)
八、参考文献: (18)
一、课题内容:
网络协议分析:
1.通过对Wireshark抓取TCP、UDP、IP、ARP、ICMP、DNS、HTTP、FTP 等数据包,然后进行深入分析,进一步加深对各类常用网络协议的理解;
2.分析每个数据包的内容,理解各个数据包的格式、内容以及含义。二、设计目的:
1.了解并初步掌握Wireshark的使用方法,熟悉其基本设置,能在所用电脑上进行抓包,并观察其主要使用了哪些网络协议;查找资料,了解相关网络协议的提出背景,帧格式,主要功能等;根据捕获数据包的内容分析相关协议,从而加深对常用网络协议理解和掌握;
2.对应所抓的包描述本机的应用层、传输层、网络层、数据链路层、物理层等所发生的事情,了解并验证网络上数据包的基本结构。
3. 根据所抓的包,对所学的知识进行整合,思考,深刻体会相关协议的作用,巩固对所学知识的理解。具体如下:
4. 查看一个抓到的包的内容,并分析对应的IP数据包格式等;
5. 利用网络协议分析工具wireshark截获网络中传送的数据包,通过观察分析,从而了解和认识(理解)协议的运行机制等;
6. 分析http协议请求的响应过程,HTTP的报文格式等;
7. 简要分析TCP的处理过程,TCP的报文格式等;
8. 了解FTP、ICMP等协议的工作过程等;
9.最后,进一步培养理论联系实际、知行合一的学术精神;能真正学会wireshark抓包软件的基本使用方法、wireshark抓包的基本过程以及对所抓到的数据包进行详细的分析并能很好的理解一些基本的数据的含义;同时,通过以后自己的不断学习,能达到对网络数据的基本的监控和查询的能力。
三、设计要求:
通过Wireshark软件抓包,请图文并茂详细描述当在浏览器地址栏中输入回车后到整个页面全部显示完毕这个过程,注意:对应所抓的包,仅描述本机的应用层、传输层、网络层、数据链路层、物理层所发生的事情,如果叙述中遇到已经描述的方法可省略(写明参见第X步即可),同时注意条理性。
1.学习捕获选项的设置和使用,使用Wireshark抓包并分析其工作过程,对网络协议进行详细分析并实时监控网络抓包的变化情况;
2.DNS协议分析和DNS数据报的数据结构分析;
3.IP协议分析和IP头的结构及IP数据报的数据结构分析;
4.TCP协议的工作原理及TCP/UDP数据结构分析;
5、HTTP协议分析;
6.详细分析所抓包的含义以及其作用。
7.完成网络监视功能测试,实现数据报文解码分析,保存捕获的数据
四、相关知识:
1.Wireshark简介
Wireshark(原Ethereal)是一个网络封包分析软件。其主要功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。其使用目的包括:网络管理员检测网络问题,网络安全工程师检查资讯安全相关问题,开发者为新的通讯协定除错,普通使用者学习网络协议的相关知识……当然,有的人也会用它来寻找一些敏感信息。
但同时,Wireshark并不是入侵检测软件,对于网络上的异常流量行为,Wireshark不会产生警示或是任何提示。然而,仔细分析Wireshark撷取的封包能够帮助使用者对于网络行为有更清楚的了解。Wireshark不会对网络封包产生内容的修改,它只会反映出目前流通的封包资讯。Wireshark本身也不会送出封包至网络上。
WireShark是一种可以运行在Windows, UNIX, Linux等操作系统上的分组分析器。最初,各窗口中并无数据显示。WireShark的界面主要有五个组成部分:
(1)命令菜单(command menus):命令菜单位于窗口的最顶部,是标准的下拉式菜单。最常用菜单命令有两个:File、Capture。File菜单允许你保存捕获的分组数据或打开一个已被保存的捕获分组数据文件或退出WireShark 程序。Capture菜单允许你开始捕获分组。
(2)捕获分组列表(listing of captured packets):按行显示已被捕获的分组内容,其中包括:WireShark赋予的分组序号、捕获时间、分组的源地址和目的地址、协议类型、分组中所包含的协议说明信息。单击某一列的列名,可以使分组按指定列进行排序。在该列表中,所显示的协议类型是发送或接
收分组的最高层协议的类型。
(3)分组头部明细(details of selected packet header):显示捕获分组列表窗口中被选中分组的头部详细信息。包括:与以太网帧有关的信息,与包含在该分组中的IP数据报有关的信息。单击以太网帧或IP数据报所在行左边的向右或向下的箭头可以展开或最小化相关信息。另外,如果利用TCP或UDP 承载分组,WireShark也会显示TCP或UDP协议头部信息。最后,分组最高层协议的头部字段也会显示在此窗口中。
(4)分组内容窗口(packet content):以ASCII码和十六进制两种格式显示被捕获帧的完整内容。
(5)显示筛选规则(display filter specification):在该字段中,可以填写协议的名称或其他信息,根据此内容可以对分组列表窗口中的分组进行过滤。
2.TCP(传输控制协议 Transmission control protocol):TCP是一种面向连接的、可靠的传输层协议。通过设计面向连接的数据流传输服务程序,加深对面向连接的服务程序工作流程和基本框架的理解;在面向连接的数据流传输过程中,设计基于TCP/IP协议的程序时,传输层使用TCP协议,它的最大特点是在通信之前要在客户和服务器之间先建立连接,在数据传输完成后要关闭连接,释放网络资源。
TCP的头部格式:
TCP各字段的含义:
①序号字段——占 4 字节,表示本报文段所发送的数据的第一个字节的序号。 TCP 连接中传送的数据流中的每一个字节都编上一个序号。
②确认号字段——占 4 字节,是期望收到对方的下一个报文段的数据的第一个字节的序号。
③数据偏移——占 4 bit,它指出 TCP 报文段的数据起始处距离 TCP 报文段的起始处有多远。“数据偏移”的单位不是字节而是 32 bit 字(4 字