使用网络监视器(IRSI)捕捉和分析协议数据包
转载请注明原地址。
实验名称: 理解子网掩码、网关和ARP协议的作用
一、实验目的和要求
(1) 熟悉IRIS的使用
(2) 验证各种协议数据包格式
(3) 学会捕捉并分析各种数据包。
二、主要仪器设备
环境: Windows XP
软件:IRIS软件
三、实验内容及过程
主机1:192.168.2.110(监听方)
主机2:192.168.2.109(被监听方)
(1) 安装IRIS软件
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaWRpb3R4bF8xMDIw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
(2) 捕捉数据包,验证数据帧、IP数据报、TCP数据段的报文格式。
选择菜单 查看à地址簿中加入主机1和主机2 的IP地址。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaWRpb3R4bF8xMDIw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
设置过滤器
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaWRpb3R4bF8xMDIw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
在開始捕获数据包之前,先用arp –d清除一下arp缓存表。
点击開始捕获,开启抓包功能。
选择菜单 过滤器à编辑过滤器。设置过滤设置。更改完毕后点击确定。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaWRpb3R4bF8xMDIw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
选择菜单 过滤器àftp.flt
从主机1登陆到主机2的ftp(主机2中安装了ftpserver)
停止抓包,抓包结果图。
以上就是捕捉数据包的过程。接下来是验证数据帧、IP数据报和TCP数据段的报文格式。
我们选择序号4的数据包作为验证,分别查看它在MAC层、IP层和TCP层的数据头部信息。
验证数据帧格式
当中00 24 1D 09 28 6B是监听方主机的MAC地址
00 24 1D AE 10 45是被监听方主机的MAC地址
08 00则是类型字段,表示它上层使用的是IP数据报。
验证IP数据报格式
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaWRpb3R4bF8xMDIw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
由以上两图我们能够知道:
版本号4表示IPV4,占4位
首部长度为5是因为这个单位是32位,所以这个IP数据报首部长度为20个字节
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaWRpb3R4bF8xMDIw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
区分服务00占一个字节,4表示版本号,5表示首部长度
总长度00 43占两个字节,标识6C 49占两个字节
标志+片偏移40 00占两个字节
生存时间128跳
向上提供的协议是TCP
首部检验和是840
源地址是192.168.2.109,目的地址是192.168.2.110
验证TCP数据段的报文格式
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaWRpb3R4bF8xMDIw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
源port00 15 转化为十进制刚好是21,是ftp默认的port
目的port是0E 93占两个字节
序号21 7B 54 6C各占4个字节
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaWRpb3R4bF8xMDIw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
确认号5A 1D 33 21占4个字节
首部长度为5,片偏移为18,
当中ACK、PSH各占一位
首部检验和是7CC1,占两个字节
(3) 捕捉并分析ARP报文。
在主机1执行arp –d命令。然后在菜单过滤器à编辑过滤器中设置捕获ARP协议。而且设置捕获A机和B机之间的IP地址数据包。接着点击“開始/停止捕捉”,開始抓包。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaWRpb3R4bF8xMDIw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
先执行arp –d命令。再执行ping 192.168.2.109命令
捕捉到的ARP报文
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaWRpb3R4bF8xMDIw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
分析
首先,我们在主机1上执行了arp -d的命令后,主机1上的arp缓存表被清空。当我们用ping 192.168.2.109命令时,因为主机1和主机2在同一个网段,且主机1没有主机2的MAC地址,所以。它会以广播形式发送ARP请求报文,在ARP请求报文中包括了源IP地址和目的IP地址,在同一网段的主机2收到报文并发现目标IP地址与自己的地址一样,则它向主机1发回ARP响应报文。并把自己物理地址封装在响应报文上。从而使主机1获得主机2的MAC地址。
(4) 捕捉并分析ping过程中的ICMP报文。
在主机2用arp –d命令清除arp缓存表
点击“開始/停止捕捉”。開始抓包
编辑过滤器,设置例如以下
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaWRpb3R4bF8xMDIw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
在主机1上ping主机2的ip地址
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaWRpb3R4bF8xMDIw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
停止抓包
下图就是捕捉ping过程中的ICMP报文
分析
从上图能够看出。我们用命令ping 192.168.2.109,回车后ping命令便会向目的主机2发一个ICMP请求ECHO报文。由于主机2正常工作并且响应这个ICMP回送请求报文,所以它就发回ICMP回送回答报文(序号1、2能够看出)。由于主机1一连发出4个ICMP回送请求报文,作为正常工作且可达的主机2也对应做出4个应答,发回4个ICMP回送回答报文。所以在抓包界面中有8个ECHO报文。在抓包界面的第一行(序号1)中的数据报包括3个信息,各自是以太网、IP和ICMP。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaWRpb3R4bF8xMDIw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
以太网头信息,它的内容是00 24 1D AE 10 45 00 24 1D 09 28 6B 08 00
前6个字节00 24 1D AE 10 45是目的主机2的MAC地址
后6个字节00 24 1D 09 28 6B是源主机1的MAC地址
最后两个字节08 00代表包的类型是DOD IP
IP头信息,它的内容是
45 00 00 3C 1D BE 00 00 80 01 96 D7 C0 A8 02 6E C0 A8 02 6D
它表示IP的版本号是4,首部长度是5。总长度60字节。标识7614
生存时间128跳。向上提供的协议是ICMP,首部检验和是9607
源地址是192.168.2.110,目的地址是192.168.2.109
ICMP头信息
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaWRpb3R4bF8xMDIw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
当中开头的08表示类型,00表示代码。15 5C表示检验和。34 00表示序号,剩下的为数据。
(5) 捕捉并分析tracert过程中的ICMP报文。
更改过滤器设置
開始捕捉数据包,下面就是捕捉到的结果。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaWRpb3R4bF8xMDIw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
分析:
由上图可知。tracert命令依靠ICMP协议来实现的,数据报从路由器发出之后。每经过一个路由器,便会在该数据报的选项字段中增加该路由器的地址信息。当这条信息到达目的主机的时候,便会生成一条新的ICMP数据报,这个数据报记录了刚才所经过的路由信息,返回给源主机,这样源主机就知道了刚才所经过的路由信息。
由上图表明。因为主机1和主机2在同一个网段,所以不用经过路由器,因此当我们用tracert命令去追踪时,仅仅显示主机2的IP地址。
(6) 捕捉并分析TCP三次握手建立连接的过程。
測试样例:将主机2的一个文件通过ftp下载到主机1中
设置过滤器,而且选择过滤器àftp.flt
主机1先执行arp –d命令。然后点击“開始/停止捕捉”
将ftpserver上的任意一个目录下载到主机1中
捕捉结果
分析
当中序号1、2、3为建立连接时的3次握手
第一次握手
ACK 00 00 00 00
SEQ 4D 7E C1 A8
第二次握手
ACK 4D 7E C1 A9
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaWRpb3R4bF8xMDIw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
SEQ F1 59 F5 88
第三次握手
ACK F1 59 F5 89
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaWRpb3R4bF8xMDIw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
SEQ 4D 7E C1 A9
首先。主机1向主机2发送一个连接请求报文,这时候A初始化一个初始序号SEQ为4D 7E C1 A8,确认信号为0。当主机2收到主机1的请求报文后,由于2允许连接,就向1发送一个确认报文,此时2也初始化一个初始序号SEQ为F1 59 F5 88。而且确认ACK为1发送过来数据报的SEQ+1即4D 7E C1 A9。当1收到2数据包的时候再次向2发送确认信号。此时1又会产生一个初始序号SEQ4D 7E C1 A9,确认ACK为B发送过来的数据包的SEQ+1即F1 59 F5 89,这时,TCP协议就建立起连接。
(7)选作
TCP採用了拥塞控制机制。其实,TCP開始发送数据时,使用了慢启动。利用网络监视器观察TCP的传输和确认。在每一确认到达之后,慢启动过程中发生了什么?(选做)
在TCP知道往返时间之前,TCP必须准备重发初始段(用于打开一个连接的一个段)。
TCP应等多久才重发这一段?TCP应重发多少次才干宣布它不能打开一个连接?为找到结果尝试向一个不存在的地址打开一个连接,并使用网络监视器观察TCP的通信量。(选做)
尝试使用Winpcap自行设计实现一个简单的网络数据包监听与捕捉程序。同一时候将捕获的数据包进行分析并将结果显示在屏幕上。參考Winpcapde 的有关资料http://winpcap.polito.it(课后选做)。
(8)附件
下载地址http://down.51cto.com/data/991237
使用网络监视器(IRSI)捕捉和分析协议数据包的更多相关文章
- 从零开始学安全(四十二)●利用Wireshark分析ARP协议数据包
wireshark:是一个网络封包分析软件.网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料.Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换,是目前 ...
- 史上最全最强Charles截取手机https协议数据包教程(附上利用此技术制作最近微信比较火的头脑王者辅助外挂)!
纯原创,思路也是本人花了半个小时整理出来的,整个完成花费了本人半天时间,由于不才刚大学毕业,所以有的编码方面可能不入大牛们的眼,敬请原谅!如有转载请附上本地址,谢谢! 最近微信朋友圈刚刚被跳一跳血洗, ...
- TCP/IP协议数据包文件PCAP分析器
一.设计原理 1.PCAP文件构成 参考http://blog.csdn.net/gulu_gulu_jp/article/details/50494909 PCAP文件由一个PCAP文件头和多个PC ...
- 第一次实验报告:使用Packet Tracer分析HTTP数据包
目录 1 实验目的 2 实验内容 3. 实验报告 第一次实验报告:使用Packet Tracer分析HTTP数据包 1 实验目的 熟练使用Packet Tracer工具.分析抓到的HTTP数据包,深入 ...
- wireshark分析https数据包解密前后的特点
wireshark分析https数据包解密前后的特点 (一)https解密前 1.协议种类:2种(1)TCP(第四层,传输层)(2)SSL/TLS(第五层,应用层,加解密)2.应用层数据所在数据包特点 ...
- TCP协议数据包及攻击分析
TCP/IP协议栈中一些报文的含义和作用 URG: Urget pointer is valid (紧急指针字段值有效) SYN: 表示建立连接 FIN: 表示关闭连接 ACK: 表示响应 PSH: ...
- 第1次作业:使用Packet Tracer分析HTTP数据包
个人信息: • 姓名:李微微 • 班级:计算1811 • 学号:201821121001 一.摘要 本文将会描述使用Packet Tracer工具用到的网络结构 ...
- 使用Wireshark mac下抓取分析iphone数据包 --IOS端
mac系统版本:mac 10.10 Yosemite xcode版本:6.3.1 在追踪bug或者分析借鉴其他公司的app通讯思路时,抓包这件事是非常有必要的.下面说说Wireshark怎么截获iph ...
- HTTP协议数据包
HTTP数据包 简介:由w3c制定的一种网络应用层协议,定义了浏览器与web服务器之间通信时所使用的数据格式. 0x00 数据包格式 1.请求行:请求类型/请求资源路径.协议的版本和类型 2.请求头: ...
随机推荐
- Verilog学习笔记基本语法篇(四)·········块语句
块语句是指将两条或者两条以上的语句组合在一起,使其在格式上更像一条语句.块语句分为两种: 1)用begin_end语句,通常用来标识顺序执行的语句,用它标识的块称作顺序块: 2)用fork_join语 ...
- go 和make的用法 区别
Doand Make are two verbs which frequently confuse students of English. Learn the Difference between ...
- python算法-插入排序
插入排序 一.核心思想:在一个有序的数组中,通过逐一和前面的数进行比较,找到新数的位置. 例子:数组有有一个数21 插入一个3,3<21,因此结果为 3,21 再插入一个34,34>21, ...
- Windows 安装 composer
在 composer.phar 同级目录下新建文件 composer.bat : C:\bin>echo @php "%~dp0composer.phar" %*>co ...
- 第一阶段Sprint 对其他团队评价
咱们的team 针对对“小学生网页四则运算”这个产品的评审,本人提出建议:1.第一阶段的产品Sprint不够好,无任务看板.无燃尽图.希望完善该产品的的Sprint,第二阶段的Sprint要认真写好. ...
- IIS中如何应用程序启用https协议
首先已经安装完了SSL证书 1.找到需要添加的站点,右击 ---> 编辑绑定-->添加--->选择 ""https"-->选择"SSL ...
- 雅图CAD
今天培训了雅图CAD. 由辅助线确定下一步的位置,是个好思想.
- MySQL5.7多源复制实践
MySQL5.7开始新增多源复制功能,即允许一个salve同时复制多个主库的事务,slave会创建通往每个主库的管道.多源复制在应用来自多个源的事务的时候不会对有冲突的事务进行检测. 配置实现 主库支 ...
- LogMiner配置使用手册
LogMiner配置使用手册 1 Logminer简介 1.1 LogMiner介绍 Oracle LogMiner 是Oracle公司从产品8i以后提供的一个实际非常有用的分析工具,使用该工具可以轻 ...
- VMware VMnet8 模式共享主机网络配置静态 IP 和 DNS
一.简介 NAT网络模式: 1. 宿主机可以看做一个路由器,虚拟机通过宿主机的网络来访问 Internet: 2. 可以安装多台虚拟机,组成一个小型局域网,例如:搭建 hadoop 集群.分布式服务 ...