任务三计算机网络实验IP数据报捕获与分析
实验三网络数据包的捕获与分析
![实验三网络数据包的捕获与分析](https://img.taocdn.com/s3/m/4c3242f40875f46527d3240c844769eae009a391.png)
实验三 网络数据包的捕获与分析一、实验目的和要求通过本次实验,了解sniffer 的基本作用,并能通过sniffer 对指定的网络行为所产生的数据包进行抓取,并分析所抓取的数据包。
二、实验内容A :1、首先打开sniffer 软件,对所要监听的网卡进行选择2、选择网卡按确定后,进入sniffer 工作主界面,对主界面上的操作按钮加以熟悉。
B :设置捕获条件进行抓包基本的捕获条件有两种:1、链路层捕获,按源MAC 和目的MAC 地址进行捕获,输入方式为十六进制连续输入,如:00E0FC123456。
2、IP 层捕获,按源IP 和目的IP 进行捕获。
输入方式为点间隔方式,如:10.107.1.1。
如果选择IP 层捕获条件则ARP 等报文将被过滤掉。
链任意捕获条件编辑协议捕获编辑缓冲区编辑基本捕获条件路层捕获IP 层捕获数据流方向链路层捕获地址条件高级捕获条件在“Advance ”页面下,你可以编辑你的协议捕获条件,如图:选择要捕获的协议捕获帧长度条件错误帧是否捕获保存过滤规则条件高级捕获条件编辑图在协议选择树中你可以选择你需要捕获的协议条件,如果什么都不选,则表示忽略该条件,捕获所有协议。
在捕获帧长度条件下,你可以捕获,等于、小于、大于某个值的报文。
在错误帧是否捕获栏,你可以选择当网络上有如下错误时是否捕获。
在保存过滤规则条件按钮“Profiles”,你可以将你当前设置的过滤规则,进行保存,在捕获主面板中,你可以选择你保存的捕获条件。
C:捕获报文的察看:Sniffer软件提供了强大的分析能力和解码功能。
如下图所示,对于捕获的报文提供了一个Expert专家分析系统进行分析,还有解码选项及图形和表格的统计信息。
专家分析系统专家分析系统捕获报文的图形分析捕获报文的其他统计信息专家分析专家分分析系统提供了一个只能的分析平台,对网络上的流量进行了一些分析对于分析出的诊断结果可以查看在线帮助获得。
在下图中显示出在网络中WINS查询失败的次数及TCP重传的次数统计等内容,可以方便了解网络中高层协议出现故障的可能点。
IP 数据报捕获与分析实验报告
![IP 数据报捕获与分析实验报告](https://img.taocdn.com/s3/m/1c187cc36137ee06eff91819.png)
实验报告专业班级成绩评定______ 学号姓名教师签名______ 实验题目IP 数据报捕获与分析实验时间一、实验目的:1.掌握IP数据报格式。
2.理解IP协议的工作原理及工作过程。
3.掌握使用wireshark捕获IP等数据报并分析。
二、实验环境:以太网。
三、实验内容:1.熟悉WinPcap的体系构架和提供的函数。
2.学习IP数据报校验和计算方法。
3.掌握使用wireshark捕获IP等数据报。
4.对捕获的IP数据报进行分析。
四、实验步骤:1.在PING之前先运行wireshark熟悉页面并进行一些设置a.单击Capture Filter过滤器:可以设置捕捉一些特殊规则的数据报。
b.在选中Capture packets in promiscuous mode:可以设置为混合全处理模式。
c.可以点击Start开始捕捉。
过一段时间后,点击Stop停止,观察捕捉到的数据报,并进行分析。
2.使用wireshark捕获和分析IP数据包。
a.打开wireshar并开始捕获数据包。
b.然后在系统的“开始”—“运行”—输入“CMD”命令,进入DOS命令窗口,并输入“ping”命令测试网络的情况.c.如“ping 192.168.0.1”。
Ping 命令的使用d.再回到wireshar点击停止后查看捕获到的数据,双击打开“ping”后的数据包,分析数据包的内容。
分片的数据包(以下图片全部通过wireshark捕获数据包,然后用QQ中的截图功能截取)IP协议节点IP协议节点上面节点说明如下:树节点名称说明Version IP版本,IPv4Header Length 20个字节的IP头,没有其他选项Total Length 该IP包携带的64字节Flags 不分片标志被设置没有被设置,该IP在通过各种类型的网络时可以分片传输;如果该网络的最大数据包小于该IP包的长度,该数据包将被分片传输;Time to live TTL值为64,最多数据传输64个节点就被抛弃。
任务三计算机网络实验IP数据报捕获与分析
![任务三计算机网络实验IP数据报捕获与分析](https://img.taocdn.com/s3/m/81d007ce8662caaedd3383c4bb4cf7ec4afeb6f0.png)
任务三计算机网络实验IP数据报捕获与分析一、实验目的本实验的目的是通过使用网络抓包工具捕获IP数据报,了解IP协议的工作过程,分析数据报的结构和内容。
二、实验设备和工具1.计算机2.网络抓包工具:Wireshark三、实验原理IP(Internet Protocol)是网络层的核心协议,在互联网中承担着数据包的传输任务。
IP协议负责将数据包从源主机传输到目标主机,保证数据在不同主机之间的正确传输。
IP数据报是IP协议传输的基本单位,由IP头和数据部分组成。
IP头部包含以下重要字段:1.版本(4位):表示IP协议的版本号,IPv4为4,IPv6为62.首部长度(4位):表示IP头部的长度,以32位的字节为单位。
3.区分服务(8位):用于标识优先级和服务质量等信息。
4.总长度(16位):指明整个IP数据报的长度。
5.标识(16位):用于标识同一个数据报的分片。
6.标志位(3位):标记是否进行数据报的分片。
7.片偏移(13位):表示数据报组装时的偏移量。
8.生存时间(8位):表示数据报在网络中的存活时间。
9.协议(8位):指明IP数据报中携带的数据部分所使用的协议,如TCP、UDP等。
10.头部校验和(16位):用于对IP头部的校验。
11.源IP地址(32位):指明数据报的发送者的IP地址。
12.目的IP地址(32位):指明数据报的目标IP地址。
四、实验步骤1.安装Wireshark软件。
2.打开Wireshark软件,选择需要进行抓包的网络接口。
3.点击“开始”按钮,开始抓包。
4.进行相关网络操作,产生数据包。
5.停止抓包。
6.选中其中一个数据包,进行分析。
五、数据包分析Wireshark软件可以对捕获到的数据包进行详细的分析,提供了丰富的信息和统计数据。
以下是对数据包的一些常规分析内容:1.源IP地址和目的IP地址:根据协议规定,每个IP数据报必须携带源IP地址和目的IP地址,通过分析这两个字段可以确定数据包的发送方和接收方。
计算机网络课程设计IP数据包的捕获与分析.docx
![计算机网络课程设计IP数据包的捕获与分析.docx](https://img.taocdn.com/s3/m/4fe4ef0f192e45361066f5f4.png)
计算机科学与技术学院课程设计成绩单C+:72~74分C:68~71分C-:64~67分D:60~63分F:<60分武汉科技大学计算机科学与技术学院制表IP数据包捕获与解析程序设计一、需求分析在本次课程设计要求捕获本机网卡的IP包,对捕获的IP包进行解析。
要求输出版本号、总长度、标志位、片偏移、协议、源地址和目的地址七个字段。
要求遵循RFC791的相关IP协议规定,捕获通过本地网卡的IP数据包。
实现对指定数量的IP数据包的捕获过程。
,需要定义好IP数据报等相关的数据结构以对IP数据包的各个字段进行保存,以及该IP数据包的上一层使用的协议名称。
在对IP数据包进行解析时要将捕获的数据流存储在一个缓冲区中。
二、概要设计1.总体流程算法:创建原始套接字并绑定本地网卡,将套接字设置为混杂模式监听网卡并根据输入的数量捕获流经本地的IP包。
IP数据包的格式:NoYes开始创建并初始化原始套接字填充sockaddr_in并绑定socket 设置网卡混杂模式监听网卡捕获和解析IP数据报输出解析字段结束是否达到需要次数IP数据包由首部和数据两部分组成。
首部的前一部分是固定长度,共 20 字节,是所有IP数据报必须具有的。
在首部的固定部分的后面是一些可选字段,其长度是可变的,可选字段之后是数据部分。
其中,首部固定部分中本次课程设计需要解析的各字段的长度及意义如下:(1)版本占4位,指IP协议的版本。
通信双方使用的IP协议版本必须一致。
目前广泛使用的IP协议版本号为4(即IPv4)。
关于IPv6,目前还处于草案阶段。
(2)总长度总长度指首部和数据之和的长度,单位为字节。
总长度字段为16位,因此数据报的最大长度为2^16-1=65535字节。
在IP层下面的每一种数据链路层都有自己的帧格式,其中包括帧格式中的数据字段的最大长度,这称为最大传送单元MTU(Maximum Transfer Unit)。
当一个数据报封装成链路层的帧时,此数据报的总长度(即首部加上数据部分)一定不能超过下面的数据链路层的MTU值。
arp,ip,icmp协议数据包捕获分析实验报告数据
![arp,ip,icmp协议数据包捕获分析实验报告数据](https://img.taocdn.com/s3/m/7ae61e58f705cc17552709db.png)
arp,ip,icmp协议数据包捕获分析实验报告数据篇一:网络协议分析实验报告实验报告课程名称计算机网络实验名称网络协议分析系别专业班级指导教师学号姓名实验成绩一、实验目的掌握常用的抓包软件,了解ARP、ICMP、IP、TCP、UDP 协议的结构。
二、实验环境1.虚拟机(VMWare或Microsoft Virtual PC)、Windows XX Server。
客户机A客户机B2.实验室局域网,WindowsXP三、实验学时2学时,必做实验。
四、实验内容注意:若是实验环境1,则配置客户机A的IP地址:/24,X为学生座号;另一台客户机B的IP地址:(X+100)。
在客户机A上安装EtherPeek(或者sniffer pro)协议分析软件。
若是实验环境2则根据当前主机A的地址,找一台当前在线主机B完成。
1、从客户机A ping客户机B ,利用EtherPeek(或者sniffer pro)协议分析软件抓包,分析ARP 协议;2、从客户机A ping客户机B,利用EtherPeek(或者sniffer pro)协议分析软件抓包,分析icmp协议和ip协议;3、客户机A上访问,利用E(转载于: 小龙文档网:arp,ip,icmp协议数据包捕获分析实验报告数据)therPeek(或者sniffer pro)协议分析软件抓包,分析TCP和UDP 协议;五、实验步骤和截图(并填表)1、分析arp协议,填写下表12、分析icmp协议和ip协议,分别填写下表表一:ICMP报文分析233、分析TCP和UDP 协议,分别填写下表4表二: UDP 协议 5篇二:网络层协议数据的捕获实验报告篇三:实验报告4-网络层协议数据的捕获实验报告。
任务三计算机网络实验IP数据报捕获与分析
![任务三计算机网络实验IP数据报捕获与分析](https://img.taocdn.com/s3/m/e7ce23e5fc4ffe473268aba5.png)
任务三网络编程一、实验目的捕获本机网卡的IP包,对捕获的IP包进行解析.要求必须输出以下字段:版本号、总长度、标志位、片偏移、协议、源地址和目的地址。
二、实验环境平台:Windows编程环境:VC 6。
0语言:C++三、实验原理3.1 数据报格式以太帧由一个包含三个字段的帧头开始,前两个字段包含了物理地址,各六个字节,头部的第三个字段包含了 16 位的以太帧类型,帧头后面是数据区。
根据帧类型可以判断是哪种数据包,一般常用的有 0X0080(IP 数据包)、 0X0806(ARP 请求/应答)和 0X8035(RARP 请求/应答)三种类型.TCP/IP 协议簇中位于网络层的协议,也是最为核心的协议。
所有的 TCP, UDP, ICMP及 IGMP 数据都以 IP 数据报格式传输。
IP 协议提供了无连接的、不可靠的数据传输服务。
同时IP 协议的一个重要功能是为网络上的包传递提供路由支持。
TCP/IP 协议使用 IP 数据报这个名字来指代一个互联网数据包。
IP 数据报由两部分组成,前面的头部和后面的数据区,头部含有描述该数据报的信息,包括源 IP 地址和目的 IP 地址等。
在 IP 数据报的报头中的众多信息可根据协议类型字段区分出该数据包的类型,常用的有TCP 包、 UDP 包、 ICMP 包等,各格式分别如下所示:IP数据报格式TCP数据报格式ICMP数据报格式UDP数据报格式3。
2 捕获数据包方法目前常用的捕获数据包的方法有原始套接字、LibPcap、WinPcap和JPcap等方法.本次实验选用套接字方法。
套接字是网络应用编程接口。
应用程序可以使用它进行网络通信而不需要知道底层发生的细节。
有时需要自己生成一些定制的数据包或者功能并希望绕开Socket提供的功能,原始套接字(RawSocket)满足了这样的要求。
原始套接字能够生成自己的数据报文,包括报头和数据报本身的内容。
通过原始套接字,可以更加自如地控制Windows下的多种协议,而且能够对网络底层的传输机制进行控制.网络数据包截获机制一般指通过截获整个网络的所有信息流,根据信息源主机,目标主机,服务协议端口等信息,简单过滤掉不关心的数据,再将用户感兴趣的数据发送给更高层的应用程序进行分析。
计算机网络实验报告实验3
![计算机网络实验报告实验3](https://img.taocdn.com/s3/m/567261287ed5360cba1aa8114431b90d6d85897c.png)
计算机网络实验报告实验3一、实验目的本次计算机网络实验 3 的主要目的是深入理解和掌握计算机网络中的相关技术和概念,通过实际操作和观察,增强对网络通信原理、协议分析以及网络配置的实际应用能力。
二、实验环境本次实验在计算机网络实验室进行,使用的设备包括计算机、网络交换机、路由器等。
操作系统为 Windows 10,实验中使用的软件工具包括 Wireshark 网络协议分析工具、Cisco Packet Tracer 网络模拟软件等。
三、实验内容与步骤(一)网络拓扑结构的搭建使用 Cisco Packet Tracer 软件,构建一个包含多个子网的复杂网络拓扑结构。
在这个拓扑结构中,包括了不同类型的网络设备,如交换机、路由器等,并配置了相应的 IP 地址和子网掩码。
(二)网络协议分析启动 Wireshark 工具,捕获网络中的数据包。
通过对捕获到的数据包进行分析,了解常见的网络协议,如 TCP、IP、UDP 等的格式和工作原理。
观察数据包中的源地址、目的地址、协议类型、端口号等关键信息,并分析它们在网络通信中的作用。
(三)网络配置与管理在实际的网络环境中,对计算机的网络参数进行配置,包括 IP 地址、子网掩码、网关、DNS 服务器等。
通过命令行工具(如 Windows 中的 ipconfig 命令)查看和验证配置的正确性。
(四)网络故障排查与解决设置一些网络故障,如 IP 地址冲突、网络连接中断等,然后通过相关的工具和技术手段进行故障排查和解决。
学习使用 ping 命令、tracert 命令等网络诊断工具,分析故障产生的原因,并采取相应的解决措施。
四、实验结果与分析(一)网络拓扑结构搭建结果成功构建了包含多个子网的网络拓扑结构,各个设备之间能够正常通信。
通过查看设备的状态指示灯和配置信息,验证了网络连接的正确性。
(二)网络协议分析结果通过 Wireshark 捕获到的数据包,清晰地看到了 TCP 三次握手的过程,以及 IP 数据包的分片和重组。
网络数据捕获及分析实验报告
![网络数据捕获及分析实验报告](https://img.taocdn.com/s3/m/84b729375727a5e9846a6106.png)
广西民族大学网络数据捕获及分析实验报告学院:信息科学与工程学院班级 10网络姓名郭璇学号 110263100129 实验日期 2012年10月19日指导老师周卫实验名称网络数据捕获及分析实验报告一、实验目的1、通过捕获网络通信数据,使学生能够真实地观察到传输层(TCP)和应用层(HTTP)协议的数据,对计算机网络数据传输有感性的认识。
2、通过对捕获的数据的分析,巩固学生对这些协议制定的规则以及工作的机制理解,从而对计算机网络数据传输有初步的认识,以便为之后通信协议设计以及通信软件设计打下良好的基础。
二、协议理论TCP:1、Transmission Control Protocol 传输控制协议TCP是一种面向连接(连接导向)的、可靠的、基于字节流的运输层(Transport layer)通信协议,由IETF的RFC 793说明(specified)。
在简化的计算机网络OSI模型中,它完成第四层传输层所指定的功能,UDP是同一层内另一个重要的传输协议。
2、TCP所提供服务的主要特点:(1)面向连接的传输;(2)端到端的通信;(3)高可靠性,确保传输数据的正确性,不出现丢失或乱序;(4)全双工方式传输;(5)采用字节流方式,即以字节为单位传输字节序列;(6)紧急数据传送功能。
3、TCP连接的建立与终止TCP连接的建立:TCP协议通过三个报文段完成连接的建立,这个过程称为三次握手(three-way handshake),过程如下图所示。
TCP连接的终止:建立一个连接需要三次握手,而终止一个连接要经过四次握手,这是由TCP的半关闭(half-close)造成的。
具体过程如下图所示。
4、服务流程TCP协议提供的是可靠的、面向连接的传输控制协议,即在传输数据前要先建立逻辑连接,然后再传输数据,最后释放连接3个过程。
TCP提供端到端、全双工通信;采用字节流方式,如果字节流太长,将其分段;提供紧急数据传送功能。
IP数据包的捕获与解析
![IP数据包的捕获与解析](https://img.taocdn.com/s3/m/8e7d0c1dfc4ffe473368ab1c.png)
IP数据包的结构 IP数据包的结构
0度
服务类型 标志 协议 源IP地址 目的IP地址 选项 数据部分
总长度 片偏移 头部校验和
标识符 生存周期
填充域
协议字段值
• • • • • TCP 6 UDP 17 ICMP 1 IGMP 2 OSPF 89
UDP头部
TCP头部
IP数据包的捕获与解析 IP数据包的捕获与解析
IP数据包 IP数据包
• IP协议在TCP/IP协议栈中处于核心地位。 IP协议在TCP/IP协议栈中处于核心地位 协议在TCP/IP协议栈中处于核心地位。 • IP协议制定了统一的IP数据包格式,以 IP协议制定了统一的IP数据包格式, 协议制定了统一的IP数据包格式 消除互联网络中各种通信子网之间的差 异,从而为数据的收发双方提供透明的 传输通道。 传输通道。 • IP数据包的长度是可变的,它分为头部 IP数据包的长度是可变的 数据包的长度是可变的, 与数据两个部分。 与数据两个部分。 • IP数据包的头部的长度为20~60字节。 IP数据包的头部的长度为20~60字节 数据包的头部的长度为20~60字节。
IP地址的数据包捕获与分析
![IP地址的数据包捕获与分析](https://img.taocdn.com/s3/m/51633e5a793e0912a21614791711cc7931b778d9.png)
IP地址的数据包捕获与分析随着互联网的快速发展,我们生活中离不开网络。
而网络通信中的IP地址则是连接和识别设备的重要标识。
本文将介绍IP地址数据包捕获与分析的相关内容。
一、IP地址的基本概念与分类IP地址全称为Internet Protocol Address,它由32位或128位二进制数组成,用于唯一标识一个网络设备。
IP地址按照版本分为IPv4和IPv6,其中IPv4采用32位地址,IPv6采用128位地址。
IPv4地址由四组十进制数表示,每组数值范围为0-255,如192.168.0.1。
二、数据包捕获工具介绍1. WiresharkWireshark是一款功能强大的网络数据包分析工具,它可以捕获和分析网络中的IP数据包。
使用Wireshark可以了解网络流量、排查网络故障、进行安全分析等。
2. TCPDumpTCPDump是一个命令行下的数据包捕获工具,它可以实时监测网络流量,并将捕获到的数据包输出到终端或存储为文件。
TCPDump功能简单实用,常用于服务器环境下的网络故障排查。
三、IP地址数据包捕获与分析的步骤1. 设置捕获过滤器在使用Wireshark或TCPDump进行数据包捕获前,我们可以设置过滤器以仅捕获感兴趣的数据包。
常用的过滤器包括基于源或目的IP地址、协议类型、端口号等进行筛选。
2. 启动数据包捕获使用Wireshark或TCPDump启动网络数据包捕获功能后,程序会开始在指定的网络接口上监听数据包。
捕获过程中,所有通过该接口传输的数据都会被记录下来。
3. 分析捕获的数据包捕获到数据包后,我们可以使用Wireshark提供的分析功能进行深入研究。
通过对数据包的源地址、目的地址、协议类型等进行分析,可以了解网络中的通信情况、设备间的交互等信息。
四、IP地址数据包分析的应用1. 网络故障排查通过分析捕获的数据包,我们可以检查网络中是否存在丢包、延迟、冲突等问题,进而定位和解决故障,提高网络性能。
计算机网络报文捕获解析实验报告
![计算机网络报文捕获解析实验报告](https://img.taocdn.com/s3/m/c9d1b2ea172ded630b1cb612.png)
求是学院实验报告实验名称报文捕获解析课程名称计算机网络姓名李勇成绩学号 082013010014 教师游子毅日期 2010-12-17 地点信息楼1031 实验目的掌握Sniffer 的用法,了解报文的发送过程2 实验环境 (软件、硬件及条件)系统:Microsoft windows xp professional 版本2002 service pack 3 软件:Sniffer3 实验方法1、认识Sniffer安装好Sniffer 软件后运行,出现捕捕获开始捕获暂停捕获停止获停止并查看捕获查看捕获条件编辑选择捕获条件。
当我们在运行处输入我们要访问的地址比如:那么我们就要对它进行捕获并分析那么我们要先运行Sniffer 软件,点击开始按钮,那么该软件就对我们的输入命令进行捕获分析,当然我们用的是中文版的,它就会出现这样的窗口在图的下方有很多的按钮,我们找到有一个为解码的按钮点击它就可以出现,当出现这样的的窗口时,我们要如何才知道这是我们发出去的东西呢?我们可以将窗口放大一点然后看看时间就行,只要我们保证我们在同一时间没有出现两个命令,那么就会出现上面的窗口,我们研究的是IP协议,所以我们就点击第一个那么就会出现下面的窗口:就是一个IP协议头,还有tcp协议头如:我们很清楚的就看到了,一个详细的分析,还有dic头如:但是我们只研究IP和TCP两个,所以其他的就不管,我们点击到IP 头里面的每一段代码都会有相应的二进制数对应,当然里面还有一个重要的协议ICMP协议,4 实验分析从上述的实验中我们知道我们如果要发送一个信息,首先我们的电脑会有一个请求发送到我们的区域服务器上,然后服务器在返回我们一个地址,我们的电脑就根据该地址再发送一个请求,知道返回我们要访问的地址,在做该试验前我们一定要设置好我们的软件,里面有一个定义过滤器设置,我们一定要设置好,“1”的地方填的是机器码,后面的是“任意的”那么我们在做实验时就更好的操作。
实验三 网络数据的捕获与分析
![实验三 网络数据的捕获与分析](https://img.taocdn.com/s3/m/6f6efd647e21af45b307a833.png)
淮海工学院计算机工程学院实验报告书课程名:《计算机网络》题目:实验三网络数据包的捕获与分析班级:学号:姓名:实验三网络数据包的捕获与分析一、实验目的和要求通过本次实验,了解协议编辑器及协议分析器的作用,并能通过对网络层协议数据包的编辑、发送、捕获、分析,掌握数据封装的格式和方法,能对捕获的数据包分析其数据链路层和网络层的首部。
二、实验内容1、利用协议编辑器编辑ARP协议数据包,并使用协议分析器捕获并分析之;2、利用协议编辑器编辑ICMP协议数据包,并使用协议分析器捕获并分析之;三、主要实验仪器及材料装有Windows 2003系统的计算机,局域网,协议编辑器软件和协议分析器软件。
四、实验步骤(需要抓图说明实验过程)(一)ARP协议数据包的编辑与捕获1、打开协议编辑器,编辑ARP协议数据包(先扫描主机,然后按需要设置协议类型(数据链路层首部)、源MAC地址、源IP地址、目的IP地址,并校验数据是否正确)2、打开协议分析器。
设置过滤条件,开启捕获报文。
3、返回协议编辑器发送一定数量的数据包;4、在协议分析其中停止捕获报文,并查看所捕获的报文。
(二)ICMP协议数据包的编辑与捕获1、打开协议编辑器,编辑ICMP协议数据包(先扫描主机,然后按需要设置协议类型(数据链路层首部和网络层首部分别设置)、源MAC地址、源IP地址、目的IP 地址、目的MAC地址,ICMP首部校验和、总长度,IP首部校验和,并校验数据是否正确)2、打开协议分析器。
设置过滤条件,开启捕获报文。
3、返回协议编辑器发送一定数量的数据包;4、在协议分析其中停止捕获报文,并查看所捕获的报文。
五、实验结果分析分别对ARP协议和ICMP协议所编辑的数据包和所捕获的数据包进行分析。
要求:对捕获的报文分析其数据链路层首部和网络层首部内容,并与所编辑的报文做比较。
六、实验小结。
计算机网络实验报告 答案.
![计算机网络实验报告 答案.](https://img.taocdn.com/s3/m/5b9e29f7856a561252d36fd2.png)
计算机网络实验报告专业计算机科学与技术班级计102学号109074057姓名王徽军组号一组D指导教师毛绪纹安徽工业大学计算机学院二○一二年十二月目录实验总体说明 (3)实验一以太网帧的构成 (3)实验三路由信息协议RIP (8)实验四传输控制协议TCP (10)实验五邮件协议SMTP、POP3、IMAP (12)实验六超文本传输协议HTTP (14)实验总体说明1.实验总体目标配合计算机网络课程的教学,加强学生对计算机网络知识(TCP/IP协议)的深刻理解,培养学生的实际操作能力。
2.实验环境计算机网络协议仿真实验室:实验环境:网络协议仿真教学系统(通用版)一套硬件设备:服务器,中心控制设备,组控设备,PC机若干台操作系统:Windows 2003服务器版3.实验总体要求●按照各项实验内容做实验,记录各种数据包信息,包括操作、观察、记录、分析,通过操作和观察获得直观印象,从获得的数据中分析网络协议的工作原理;●每项实验均提交实验报告,实验报告的内容可参照实验的具体要求,但总体上应包括以下内容:实验准备情况,实验记录,实验结果分析,算法描述,程序段,实验过程中遇到的问题以及对思考问题的解答等,实验目的、实验原理、实验步骤不需要写入实验报告中。
实验一以太网帧的构成实验时间:_____________ 成绩:________________实验角色:_____________ 同组者姓名:______________________________练习一:领略真实的MAC帧q....U 00000010: 85 48 D2 78 62 13 47 24 58 25 00 00 00 00 00 00 .H襵b.G$X%...... 00000020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................00000030: 00 00 00 00 00 00 00 00 00 00 00 00 ............练习二:理解MAC地址的作用●记录实验结果表1-3实验结果本机MAC地址源MAC地址目的MAC地址是否收到,为什么主机B 8C89A5-7570BB 8C89A5-757113 8C89A5-7570C1 是,主机A与主机B接在同一共享模块主机D 8C89A5-771A47 8C89A5-757113 8C89A5-7570C1 是,主机C与主机D接在同一共享模块主机E 8C89A5-757110 无无否,与主机A、C都不在同一共享模块主机F8C89A5-7715F8 无无否,与主机A、C都不在同一共享模块练习三:编辑并发送MAC广播帧●结合练习三的实验结果,简述FFFFFF-FFFFFF作为目的MAC地址的作用。
计算机网络课程设计IP数据包的捕获与分析
![计算机网络课程设计IP数据包的捕获与分析](https://img.taocdn.com/s3/m/6ec9f97052d380eb63946d03.png)
CENTRAL SOUTH UNIVERSITY计算机网络课程设计报告目录第一章课程设计的目的与要求 (1)1.1 课程设计的目的 (1)1.2 课程设计的要求 (1)第二章课程设计的内容 (3)2.1 课程设计的内容 (3)2.2 内容的要求 (3)第三章程序分析与设计 (4)3.1 IP数据包 (4)3.1.1 IP数据包的格式说明 (4)3.1.2 IP数据包的格式 (4)3.1.3 IP数据包的C++定义 (5)3.1.4 IP数据包的解析 (6)3.2 套接字 (7)3.1.4 套接字的使用 (7)3.1.4 使用原始套接字 (7)3.3 接受数据包 (7)第四章实验结果 (10)4.1 程序截图 (10)第五章总结 (11)5.1 实验心得 (11)第六章附录 (12)6.1 源代码 (12)第一章课程设计的目的与要求1.1 课程设计的目的计算机网络课程设计的目的,是为了让学生更深入地掌握计算机网络的核心内容,实现理论与实践相结合。
让学生用具体的实践成果,体现对理论知识的掌握程度。
有利于学生提高计算机网络的实践能力,加深对计算机网络理论知识的理解。
1.2 课程设计的要求(1)编写程序,实现系统的基本功能,鼓励自行增加新功能;(2)要有用户界面:要求至少采用文本菜单界面;鼓励采用图形菜单界面;(3)写课程设计报告,内容包括:●封面(参见附录I)●需求分析:以无歧义的陈述说明程序设计的任务,强调的是程序要做什么?给出功能模块图和流程图。
同时明确规定:输入的形式和输出值的范围;输出的形式;程序所能够达到的功能;测试数据,包括正确的输入与其输出结果和含有错误的输入与其输出结果。
●概要设计:包括程序设计组成框图,程序中使用的存储结构设计说明(如果指定存储结构请写出该存储结构的定义)。
●详细设计:包括模块功能说明(如函数功能、入口与出口参数说明,函数调用关系描述等),每个模块的算法设计说明(可以是描述算法的流程图)。
计算机网络课程设计IP数据包捕获及分析
![计算机网络课程设计IP数据包捕获及分析](https://img.taocdn.com/s3/m/b66eb82efe4733687e21aad7.png)
计算机网络课程设计报告目录第一章课程设计的目的与要求 .......................... 错误!未定义书签。
1.1 课程设计的目的 ................................... 错误!未定义书签。
1.2 课程设计的要求 (1)第二章课程设计的内容 (3)2.1 课程设计的内容 (3)2.2 内容的要求 (3)第三章程序分析与设计 (4)3.1 IP数据包 (4)3.1.1 IP数据包的格式说明 (4)3.1.2 IP数据包的格式 (4)3.1.3 IP数据包的C++定义 (5)3.1.4 IP数据包的解析 (6)3.2 套接字 (7)3.1.4 套接字的使用 (7)3.1.4 使用原始套接字 (7)3.3 接受数据包 (7)第四章实验结果 (10)4.1 程序截图 (10)第五章总结 (11)5.1 实验心得 (11)第六章附录 (12)6.1 源代码 (12)第一章课程设计的目的与要求1.1 课程设计的目的计算机网络课程设计的目的,是为了让学生更深入地掌握计算机网络的核心内容,实现理论与实践相结合。
让学生用具体的实践成果,体现对理论知识的掌握程度。
有利于学生提高计算机网络的实践能力,加深对计算机网络理论知识的理解。
1.2 课程设计的要求(1)编写程序,实现系统的基本功能,鼓励自行增加新功能;(2)要有用户界面:要求至少采用文本菜单界面;鼓励采用图形菜单界面;(3)写课程设计报告,内容包括:●封面(参见附录I)●需求分析:以无歧义的陈述说明程序设计的任务,强调的是程序要做什么?给出功能模块图和流程图。
同时明确规定:输入的形式和输出值的范围;输出的形式;程序所能够达到的功能;测试数据,包括正确的输入及其输出结果和含有错误的输入及其输出结果。
●概要设计:包括程序设计组成框图,程序中使用的存储结构设计说明(如果指定存储结构请写出该存储结构的定义)。
●详细设计:包括模块功能说明(如函数功能、入口及出口参数说明,函数调用关系描述等),每个模块的算法设计说明(可以是描述算法的流程图)。
计算机网络实验数据包捕获与分析
![计算机网络实验数据包捕获与分析](https://img.taocdn.com/s3/m/dd8c0e645a8102d277a22f47.png)
计算机网络实验实验名称:实验二数据包捕获与分析辅导员意见:辅导员成绩签名信息与通信学院电子信息工程作者:学号:05实验日期:2010年12月 14 日一、实验目的二、实验设备连接在局域网的并且安装有Ethereal/Wireshark软件的微机计算机三、实验要求实验前认真预习TCP/IP协议内容,尤其应认真理解WINDOWS网络相关原理;在进行实验时应该注意爱护仪器,按照实验指导的要求的内容和步骤完成实验,尤其应注意认真观察实验结果,作好记录;试验完成后应认真写实验报告。
四、实验原理五、实验过程及结果1、捕获一个数据包,并对其中的一个IP数据包进行分析。
捕获了这个数据报:分析其数据如下:由以上的信息可以分析IP数据报的各项内容:数据报的版本号是:4报头标长是:20 bytes服务类型:0x00 (DSCP 0x00: Default; ECN: 0x00)0000 00.. = Differentiated Services Codepoint: Default (0x00) .... ..0. = ECN-Capable Transport (ECT): 0.... ...0 = ECN-CE: 0总长度:48标识:0x8f09 (36617)标志:0x02 (Don't Fragment)0... .... = Reserved bit: Not set.1.. .... = Don't fragment: Set..0. .... = More fragments: Not set片偏移:0生存时间:128协议:TCP (6)源IP地址: ()目的IP地址: ()选项:(8 bytes)Maximum segment size: 1460 bytesNOPNOPTCP SACK Permitted Option: True2、捕获一个数据包,并对其中的一个TCP报文进行分析。
计算机网络技术实验3
![计算机网络技术实验3](https://img.taocdn.com/s3/m/418e292468eae009581b6bd97f1922791688beb7.png)
计算机网络技术实验3实验目的:1. 理解计算机网络中数据包的传输过程。
2. 掌握使用网络分析工具(如Wireshark)捕获和分析网络数据包。
3. 学习网络协议的基本概念和工作机制。
实验环境:1. 计算机若干台,每台计算机均安装有操作系统(如Windows或Linux)。
2. 网络分析工具Wireshark。
3. 网络连接设备,如路由器、交换机等。
4. 网络线缆,确保计算机之间可以进行网络连接。
实验步骤:1. 网络环境搭建:- 连接计算机至路由器,确保所有计算机处于同一局域网内。
- 配置计算机的IP地址,确保它们在同一子网中。
2. 安装并配置Wireshark:- 在每台计算机上安装Wireshark软件。
- 打开Wireshark,选择适当的网络接口进行捕获设置。
3. 数据包捕获:- 启动Wireshark,开始捕获网络流量。
- 在另一台计算机上进行网络活动,如浏览网页、发送邮件等。
4. 数据包分析:- 观察Wireshark捕获的数据包,注意数据包的类型、大小、源地址和目的地址等信息。
- 使用Wireshark的过滤功能,筛选特定的数据包,如HTTP请求、TCP三次握手等。
5. 协议分析:- 选择一个TCP/IP数据包,分析其头部信息,包括序列号、确认号、窗口大小等。
- 观察TCP三次握手过程,理解其在建立连接中的作用。
6. 网络故障模拟与诊断:- 人为制造一些网络故障,如断开网络连接、修改IP地址等。
- 使用Wireshark观察故障发生时的数据包变化,分析故障原因。
7. 实验报告撰写:- 记录实验过程中的关键步骤和观察结果。
- 分析数据包捕获和分析的结果,总结网络协议的工作原理。
- 讨论网络故障模拟与诊断的过程和结果。
实验注意事项:- 在进行网络故障模拟时,确保不会对实验环境造成不可逆的损害。
- 在使用Wireshark时,注意遵守相关法律法规,不得用于非法监听或侵犯他人隐私。
- 实验过程中,注意记录详细的数据包信息,以便于后续分析。
计网实验报告(抓取本地网卡的IP数据包)
![计网实验报告(抓取本地网卡的IP数据包)](https://img.taocdn.com/s3/m/9a503532bcd126fff7050bea.png)
计网大型实验报告课程计算机网络原理大型实验姓名汪敏倩班级计科1201 学号201226100117一、实验目的1.1任务一:了解常用网络命令Ping、Tracert/traceroute、Arp、Route的工作原理及使用。
1.2任务二:了解交换机的工作原理,掌握常用交换机的配置和应用以及静态路由的配置。
1.3任务三:抓取本地网卡的IP数据包,并且分析IP数据包的各个部分字段。
二、实验软件2.1任务一:cmd.exe命令解释程序2.2任务二:Packet.Tracer模拟器2.3任务三:Wincap网络抓包器,jnetpcap开源包,eclipes编程器,java语言三、实验步骤或实验原理3.1任务一:3.1.1◆实验原理:1、Ping是Windows下的一个命令在Unix和Linux下也有这个命令。
ping也属于一个通信协议,是TCP/IP协议的一部分。
利用“ping”命令可以检查网络是否连通,可以很好地帮助我们分析和判定网络故障。
它所利用的原理是这样的:利用网络上机器IP地址的唯一性,给目标IP地址发送一个数据包,再要求对方返回一个同样大小的数据包来确定两台网络机器是否连接相通,时延是多少。
使用格式:Ping空格IP地址。
该命令还可以加许多参数使用,具体是键入Ping按回车即可看到详细说明。
2、Tracert/traceroute 的用处和PING是差不多的。
但是也有本质的区别。
用ping的时候是不会显示经过的路径的。
但是用tracerert的时候就可以显示经过的路由,并且显示它经过那个路由,花了多少时间,并且每个路由都会测试3次。
它可以让你知道,你的计算机离目的计算机在网络上的距离有多远,经过多久才能到达。
使用格式:Tracert/traceroute空格IP地址。
3、ARP即地址解析协议,是根据IP地址获取物理地址的一个TCP/IP协议。
主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存一节约资源。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
任务三计算机网络实验I P数据报捕获与分析任务三网络编程一、实验目的捕获本机网卡的IP包,对捕获的IP包进行解析。
要求必须输出以下字段:版本号、总长度、标志位、片偏移、协议、源地址和目的地址。
二、实验环境平台:Windows编程环境:VC 6.0语言:C++三、实验原理3.1 数据报格式以太帧由一个包含三个字段的帧头开始,前两个字段包含了物理地址,各六个字节,头部的第三个字段包含了 16 位的以太帧类型,帧头后面是数据区。
根据帧类型可以判断是哪种数据包,一般常用的有 0X0080(IP 数据包)、0X0806(ARP 请求/应答)和 0X8035(RARP 请求/应答)三种类型。
TCP/IP 协议簇中位于网络层的协议,也是最为核心的协议。
所有的 TCP, UDP, ICMP及 IGMP 数据都以 IP 数据报格式传输。
IP 协议提供了无连接的、不可靠的数据传输服务。
同时IP 协议的一个重要功能是为网络上的包传递提供路由支持。
TCP/IP 协议使用 IP 数据报这个名字来指代一个互联网数据包。
IP 数据报由两部分组成,前面的头部和后面的数据区,头部含有描述该数据报的信息,包括源 IP 地址和目的 IP 地址等。
在 IP 数据报的报头中的众多信息可根据协议类型字段区分出该数据包的类型,常用的有TCP 包、 UDP 包、 ICMP 包等,各格式分别如下所示:IP数据报格式TCP数据报格式ICMP数据报格式UDP数据报格式3.2 捕获数据包方法目前常用的捕获数据包的方法有原始套接字、LibPcap、WinPcap和JPcap 等方法。
本次实验选用套接字方法。
套接字是网络应用编程接口。
应用程序可以使用它进行网络通信而不需要知道底层发生的细节。
有时需要自己生成一些定制的数据包或者功能并希望绕开Socket提供的功能,原始套接字(RawSocket)满足了这样的要求。
原始套接字能够生成自己的数据报文,包括报头和数据报本身的内容。
通过原始套接字,可以更加自如地控制Windows下的多种协议,而且能够对网络底层的传输机制进行控制。
网络数据包截获机制一般指通过截获整个网络的所有信息流,根据信息源主机,目标主机,服务协议端口等信息,简单过滤掉不关心的数据,再将用户感兴趣的数据发送给更高层的应用程序进行分析。
一般数据包的传输路径依次为网卡、设备驱动层、数据链路层、 IP 层、传输层、最后到达应用程序。
IP 数据包的捕获就是将经过数据链路层的以太网帧拷贝出一个备份,传送给 IP 数据包捕获程序进行相关的处理。
IP 数据包的捕获程序一般由数据包捕获函数库和数据包分析器组成。
数据包捕获函数库是一个独立于操作系统的标准捕获函数库。
主要提供一组可用于查找网络接口名称、打开选定的网络接口、初始化、设置包过滤条件、编译过滤代码、捕获数据包等功能函数。
对捕获程序而言,只需要调用数据包捕获函数库的这些函数就能获得所期望的 IP 数据包。
这种捕获程序与数据包捕获函数库分离的机制,使得编写的程序具有很好的可移植性。
IP 数据包捕获程序的核心部分就是数据包分析器。
数据包分析器应具有识别和理解各种协议格式(IP、 TCP、 UCP、 ICMP 协议)和帧格式的能力,并对捕获的数据进行分析和统计处理。
编写数据包捕获程序的主要工作就是如何实现数据包分析器的功能。
3.3 数据包捕获与解析的程序设计首先对以太网帧头进行结构体定义,总共有以下 13 项内容:Version、HeadLen、ServiceType、 TotalLen、Identifier、Flags、FragOffset、TimeToLive、Protocol、HeadChecksum、SourceAddr、DestinAddr、Options。
根据数据包的捕获机制,分别对以上 13 个内容编写捕获的 C 语言程序,进行一一捕获,通过开始的运行程序中运行编译程序后所得到的.exe 文件,就可以看到捕获到的信息。
捕获成功之后,最后将其各个信息进行解析,并写到一个文件之中。
以上各个程序的编写都是在 Visual Stdio C++ 6.0 编译器中完成。
3.4 网卡设置为了获取网络中的IP数据包,必须对网卡进行编程,在这里使用套接字进行编程。
但是,在通常情况下,网络通信的套接字程序只能响应与自己硬件地址相匹配的数据包或是以广播形式发出的数据包。
对于其他形式的数据包,如已到达网络接口,但却不是发送到此地址的数据包,网络接口在骓投递地址并非自身地址之后将不引起响应,也就是说应用程序无法收取与自己无关的数据包。
要想获取网络设备的所有数据包,就需要将网卡设置为混杂模式。
四、实验结果及分析程序运行结果截图:附件:网络数据包捕获与解析的完整程序#include <iostream>#include <winsock2.h>#include <ws2tcpip.h>#include <cstdlib>#include <fstream>#include <string>#pragma comment(lib, "ws2_32")#define IO_RCVALL _WSAIOW(IOC_VENDOR, 1)using namespace std;typedef struct IP_HEAD{union{unsigned char Version; //Version(4)unsigned char HeadLen; //Header Length(4) };unsigned char ServiceType; //Type of Servics(8)unsigned short TotalLen; //Total Length(16)unsigned short Identification; //Identification(16)union{unsigned short Flags; //IP Flags(3)unsigned short FragOffset; //Fragment Offset(13) };unsigned char TimeToLive; //TTL(8)unsigned char Protocol; //Protocol(8)unsigned short HeadChecksum; //Header Checksum(16)unsigned int SourceAddr; //Source Address(32)unsigned int DestinAddr; //Destination Address(32)unsigned char Options; //IP Options} ip_head;void main(){WSADATA WSAData;if(WSAStartup(MAKEWORD(2,2), &WSAData) != 0){//初始化cout<<"Init fails!"<<endl;return;}/****************************数据包的捕获*********************************/SOCKET sock = socket(AF_INET, SOCK_RAW, IPPROTO_IP); //抓捕IP数据报bool flag = true;setsockopt(sock, IPPROTO_IP, IP_HDRINCL, (char*)&flag, sizeof(flag)); //设置IP头操作选项char hostName[128];gethostname(hostName, 100);hostent* pHostIp = gethostbyname(hostName);sockaddr_in host_addr;host_addr.sin_family = AF_INET;host_addr.sin_port = htons(6000);host_addr.sin_addr = *(in_addr*)pHostIp->h_addr_list[0];bind(sock, (PSOCKADDR)&host_addr, sizeof(host_addr)); //把sockRaw绑定到本地网卡上DWORD dwBufferLen[10];DWORD dwBufferInLen = 1;DWORD dwBytesReturned = 0;WSAIoctl(sock, IO_RCVALL, &dwBufferInLen, sizeof(dwBufferInLen),&dwBufferLen, sizeof(dwBufferLen), &dwBytesReturned, NULL, NULL);//接受所有的数据char buffer[65535];ip_head ip;int packsum = 2;for(int i=0; i<packsum; i++){if(recv(sock, buffer, 65535, 0)>0){ip = *(ip_head*)buffer;cout<<"Version:"<<inet_ntoa(*(in_addr*)&ip.Version)<<endl;cout<<"HeadLen:"<<inet_ntoa(*(in_addr*)&ip.HeadLen)<<endl;cout<<"ServiceType: "<<inet_ntoa(*(in_addr*)&ip.ServiceType)<<endl;cout<<"TotalLen:"<<inet_ntoa(*(in_addr*)&ip.TotalLen)<<endl;cout<<"Identification:"<<inet_ntoa(*(in_addr*)&ip.Identification)<<endl;cout<<"Flags:"<<inet_ntoa(*(in_addr*)&ip.Flags)<<endl;cout<<"FragOffset: "<<inet_ntoa(*(in_addr*)&ip.FragOffset)<<endl;cout<<"TimeToLive: "<<inet_ntoa(*(in_addr*)&ip.TimeToLive)<<endl;cout<<"Protocol:"<<inet_ntoa(*(in_addr*)&ip.Protocol)<<endl;cout<<"HeadChecksum:"<<inet_ntoa(*(in_addr*)&ip.HeadChecksum)<<endl;cout<<"SourceAddr:"<<inet_ntoa(*(in_addr*)&ip.SourceAddr)<<endl;cout<<"DestinAddr:"<<inet_ntoa(*(in_addr*)&ip.DestinAddr)<<endl;cout<<"Options:"<<inet_ntoa(*(in_addr*)&ip.Options)<<endl<<endl;}}/*****************************数据包的解析********************************///string str = inet_ntoa(*(in_addr*)&ip.SourceAddr);string ver = inet_ntoa(*(in_addr*)&ip.Version);string str1= inet_ntoa(*(in_addr*)&ip.HeadLen);string str2= inet_ntoa(*(in_addr*)&ip.ServiceType);string str3 = inet_ntoa(*(in_addr*)&ip.TotalLen);string str4 = inet_ntoa(*(in_addr*)&ip.Identification);string str5 = inet_ntoa(*(in_addr*)&ip.Flags);string str6 = inet_ntoa(*(in_addr*)&ip.FragOffset);string str7 = inet_ntoa(*(in_addr*)&ip.TimeToLive);string str8 = inet_ntoa(*(in_addr*)&ip.Protocol);string str9 = inet_ntoa(*(in_addr*)&ip.HeadChecksum);string str10= inet_ntoa(*(in_addr*)&ip.SourceAddr);string str11 = inet_ntoa(*(in_addr*)&ip.DestinAddr);string str12 = inet_ntoa(*(in_addr*)&ip.Options);fstream outfile;outfile.open("d:\\aa.dat", ios::out|ios::binary|ios::trunc);//ios::in|outfile.write(ver.c_str(), ver.length()+3);outfile.write(str1.c_str(), str1.length()+3);outfile.write(str2.c_str(), str2.length()+3);outfile.write(str3.c_str(), str3.length()+3);outfile.write(str4.c_str(), str4.length()+3);outfile.write(str6.c_str(), str6.length()+3);outfile.write(str7.c_str(), str7.length()+3);outfile.write(str8.c_str(), str8.length()+3);outfile.write(str9.c_str(), str9.length()+3);outfile.write(str10.c_str(), str10.length()+3);outfile.write(str11.c_str(), str11.length()+3);outfile.write(str12.c_str(), str12.length()+3);outfile.close();system("pause");}。