TCP/IP协议分析
实验报告
院系:计算机与通信工程学院
姓名:
班级:
学号:1111111111111
实验一利用分组嗅探器(ethereal)分析HTTP 和DNS
一、目的及任务
1、熟悉并掌握 Ethereal 的基本操作,了解网络协议实体间进行交互以及报文交换的情况。
2、分析 HTTP 协议
3、分析 DNS 协议
二、实验环境
与因特网连接的计算机网络系统;主机操作系统为 Windows2000 或 Windows XP;Ethereal 等软件。
实验步骤:
1、
2、时间是http-ok的时间减去http-get的时间:10:33:45.778077-10:33:45.443323=0.334754s
3、我的ip是172.20.44.74,服务器的ip地址104.20.0.85
4、http-get报头行信息
http-ok包头行信息
http和dns分析:
1、浏览器和服务器所运行的http协议都是http1.1
2、Zh-Cn,即中文
3、我的ip是172.20.44.74,服务器https://www.doczj.com/doc/8f1153406.html,的ip地址是128.119.254.12
4、状态码为200
5、2015-5-13 10:33:26 周三
6、74字节
7、没有
8、根据http-ok报文头部行的content-type字段可知返回的内容
9、有,紧跟着if-none-match,如图
10、状态码为200,是content-type:application/javascript,是一段javascript代码
实验四TCP 协议分析
一、实验目的
1、分析HTTP 协议
2、分析DNS 协议
二、实验环境
与因特网连接的计算机网络系统;操作系统为windows;Ethereal、IE 等软件
实验步骤:
1、由syn/syn、ack\ack这些标志位可以得出,下图的三个tcp报文既是客户端和服务器用来进行三次握手的
2、下图是后续的一系列http报文
3、tcp用来进行拥塞控制的图如下
实验问题:
1、客户端的ip是172.20.44.90,端口号是51695
2、服务器的ip地址是128.119.254.12,端口号是80
3、初始化的序列号是0,syn位置1
7、前六个tcp报文段的长度各是631、1448、1448、1448、1448、1448个字节
8、接收端公示的缓存为8192字节,限制以后仍然不够用,所以下一个报文中接
收端将缓存改为了66608
总结实验中出现的问题和解决方法
爱实验过程中第一个比较好做,根据实验指导能很顺利的做好,第四个实验就稍微有点麻烦,尤其是第四个实验的tcp用来进行拥塞控制的截图,找了好久也没有
找到和指导上相似的图,最后我找学习成绩比较好的同学咨询了一下,发现原因就是我上传文件的速度比较快,所以图片中的点不是横向排列而是纵向的。
实验心得体会
接触一个陌生的实验首先要做的就是仔细阅读实验指导,不能着急,盲目的去做实验,要一步一步的做,发现问题时也不要着急,耐心的在指导上寻找出错的,看看是不是那个步骤疏忽了。如果解决不了,找做完的同学探讨下经验。就能流畅的做出来了。在实验的过程中一定要细心、耐心。
实验一数据报文分析 物联10 查天翼41050051 一、实验目的 1.掌握网络分析原理 2.学习Wireshark协议分析软件的使用 3.加深对基本协议的理解 二、实验环境 机器代号:K053 IP地址:222.28.78.53 MAC地址:00-88-98-80-95-C2 三、实验结果 数据链路层(以太网)数据帧分析 3c e5 a6 b3 af c1 00 88 98 80 95 c2 08 00 3c e5 a6 b3 af c1:表示目的MAC(Hangzhou_b3:af:c1)地址 00 88 98 80 95 c2:表示本机MAC地址
08 00:表示数据类型,里面封装的是IP数据包 IP数据包分析 45 00 00 28 63 cd 40 00 80 06 19 1f de 1c 4e 35 77 4b da 46 45:高四位是4,表示此数据报是IPv4版本;低四位是5,表示首部长度,由于首部长度以4字节为单位,所以IP数据包的首部长度为20字节。 00:表示服务类型 00 28:表示数据包的总长度是40 63 cd:表示表示字段0x63cd(25549) 40 00:“40”高4位表示标志字段,低4位和第8个字节“00”组成片偏移字段。 80:表示生存时间 06:表示数据包的数据部分属于哪个协议,此值代表的协议是TCP协议。 19 1f:表示首部校验和 de 1c 4e 35:表示源IP地址222.28.78.53 77 4b da 46:表示目的IP地址119.75.218.70
07 a1 00 50 d7 c3 fb a4 5d 84 9a 2e 50 10 ff ff 5e e4 00 00 07 a1:表示源端口号1953 00 50:表示目的端口号80 d7 c3 fb a4:表示序号字段值430 5d 84 9a 2e:表示确认序号值3196 50:“50”的高4为位表示数据偏移字段值,该TCP报文数据偏移字段值是5,该字段表示报文首部的长度,以4字节为单位,所以该TCP报文的首部长度是20字节。 10:表示ACK=1,SYN=0 ff ff:表示窗口字段值是65535,即告诉发送端在没有收到确认之前所能发送最多的报文段的个数。 5e e4:表示校验和字段0x5ee4 00 00:表示紧急指针字段值
ethereal 可以用来从网络上抓包,并能对包进行分析。下面介绍windows 下面ethereal 的使用方法 安装 1)安装winpcap,下载地址http://netgroup-serv.polito.it/winpcap/install/Default.htm 2)安装ethereal ,下载地址https://www.doczj.com/doc/8f1153406.html,/ 使用 windows 程序,使用很简单。 启动ethereal 以后,选择菜单Capature->Start ,就OK 了。当你不想抓的时候,按一下stop,抓的包就会显示在面板中,并且已经分析好了。 下面是一个截图: ethereal使用-capture选项
nterface: 指定在哪个接口(网卡)上抓包。一般情况下都是单网卡,所以使用缺省的就可以了Limit each packet: 限制每个包的大小,缺省情况不限制 Capture packets in promiscuous mode: 是否打开混杂模式。如果打开,抓取所有的数据包。一般情况下只需要监听本机收到或者发出的包,因此应该关闭这个选项。Filter:过滤器。只抓取满足过滤规则的包(可暂时略过)File:如果需要将抓到的包写到文件中,在这里输入文件名称。use ring buffer:是否使用循环缓冲。缺省情况下不使用,即一直抓包。注意,循环缓冲只有在写文件的时候才有效。如果使用了循环缓冲,还需要设置文件的数目,文件多大时回卷 其他的项选择缺省的就可以了 ethereal的抓包过滤器 抓包过滤器用来抓取感兴趣的包,用在抓包过程中。抓包过滤器使用的是libcap 过滤器语言,在tcpdump 的手册中有详细的解释,基本结构是:[not] primitive [and|or [not] primitive ...] 个人观点,如果你想抓取某些特定的数据包时,可以有以下两种方法,你可以任选一种,个人比较偏好第二种方式: 1、在抓包的时候,就先定义好抓包过滤器,这样结果就是只抓到你设定好的那些类型的数据包; 2、先不管三七二十一,把本机收到或者发出的包一股脑的抓下来,然后使用下节介绍的显示过滤器,只让Ethereal 显示那些你想要的那些类型的数据包; etheral的显示过滤器(重点内容) 在抓包完成以后,显示过滤器可以用来找到你感兴趣的包,可以根据1)协议2)是否存在某个域3)域值4)域值之间的比较来查找你感兴趣的包。 举个例子,如果你只想查看使用tcp 协议的包,在ethereal 窗口的左下角的Filter 中输入tcp,然后
200810314021_陈道争 一、实验名称:以太网报文分析 二、实验内容: 1.Ethereal的基本操作。 2.截获以太网报文,并将报文保存到硬盘上。 3.打开截获的报文,并分析其中的某一条报文。 三、实验过程与步骤: 1.在Windows操作系统下安装软件Ethereal。 2选择“Capture”中的“Options”进行设置。 3.打开“IE浏览器”,输入任意一个网址,打开其中的一个网页。 4.Ethereal软件的界面中会出现很多条的报文。 5.选择“Stop the running live capture”。 四、报文分析: 1.选取No.180的一条HTTP报文,具体报文见“200810314021_陈道争.cap”,以下分析都是根据此报文,就不再附图了。 2.从应用的角度网络可以划分为物理层、链路层、网络层、传输层、应用层几个部分。以太网上的数据以报文的形式进行传递,每个报文由数据内容部分和各个层次的报文头部组成。 3.链路层: (1)以太网的链路层由14个字节的内容组成。 (2)前六个字节的内容表示报文的目标硬件地址(Destination MAC),本报文描述的是网关的MAC 地址,值是:00-0f-e2-77-8f-5e。 (3)接下来六个字节的内容表示报文的源硬件地址(Source MAC),本报文描述的是本机的MAC 地址,值是:00-23-7d-4d-16-55。 (4)接下来两个字节的内容表示网络层所使用协议的类型,本报文使用的是IP协议,IP协议的类型值是:0X0800。 4.网络层: (1)目前使用最广泛的网络层协议是IPv4协议。IPv4协议的头部由20个字节的内容组成。 (2)其中第一个字节的前四个位的内容表示IP协议使用的版本号,值是:4,表示本报文使用的是IPv4协议。 (3)后四位的内容表示报文头部的长度,值是:20bytes。 (4)接下来两个字节的内容表示总长度,是首部和数据之和的长度,值是:657,表示总长度是657字节。 (5)接下来两个字节的内容表示标识。本报文为0x261f。 (6)接下来两个字节的前三位的内容表示标志。本报文位010. (7)接下来一个字节的内容表示生存时间。本报文Time to live:128. (8)接下来一个字节的内容表示所使用的传输层的协议类型,值是:0x06,表示使用的是TCP协议,因为HTTP协议是基于TCP协议实现的。
Ethereal工具的使用方法 1、抓包设置页面 选择以太网卡 设置为实时刷新报文 设置为是否滚动 设置一次抓包长度或抓包时间 设置抓包存储方式 显示过滤 显示过滤语法: mms 只显示MMS报文 iecgoose 只显示goose报文 tcp 只显示tcp报文 udp 只显示udp报文 ip.addr == 172.20.50.164 显示与地址为172.20.50.164的服务器交互的报文 ip.src == 172.20.50.164 显示源地址IP为172.20.50.164的服务器发出的报文 ip.dst == 172.20.50.164 显示与目的地址IP为172.20.50.164的服务器交互的报文 eth.addr == 5a:48:36:30:35:44 显示与MAC地址为5a:48:36:30:35:44的服务器交互的报文 eth.src == 5a:48:36:30:35:44 显示源MAC地址为5a:48:36:30:35:44的服务器发出的报文
eth.dst == 5a:48:36:30:35:44 显示与目的MAC 地址为5a:48:36:30:35:44的服务器交互的报文 抓捕过滤 抓捕过滤语法 Tcp 只抓捕Tcp 报文 Udp 只抓捕Tcp 报文 Host 172.20.50.164 只抓捕IP 地址为172.20.50.164的报文 Ether host 只抓捕MAC 地址为5a:48:36:30:35:44的报文 限制每个包的大小 2、 协议显示 MMS 报文 SNTP 建立以太网通讯时会发ARP 报文ping 报文 SV 、GOOSE 抓包时间 3、 显示信息
计算机网络原理实验报告 实验名称实验七分析TCP及UDP报文格式 队别姓名学号实验日期 2012.11.8 实验报告要求: 1.实验目的 2.实验要求 3.实验环境 4.实验作业 5.问题及解决 6.思考问题 7.实验体会 【实验目的】 一、掌握TCP协议的作用和格式; 分析数据报各字段的含义及作用; 理解三次握手的过程; 学会计算TCP校验和的方法; 了解TCP的标志字段的作用。 二、观察UDP报文 观察DNS,QQ应用时UDP的格式 【实验要求】 在进行实验的主机上运行Win7操作系统,并将它接入到校园网。 按要求用Wireshark进行以太网数据包的截获,并分析其帧格式。 【实验环境】 在装有Win7的笔记本,接入校园网,使用WireShark 1.8.2版本进行抓包。 【实验作业】 一、练习一分析TCP报文 1.打开“命令提示符”窗口,输入:netstat –n 回车。 2.观察TCP状态,记录Local Address 、Foreign Address 和State。 可以通过上图观察到,现在的TCP状态为空。 3.在浏览器输入:https://www.doczj.com/doc/8f1153406.html,,在“命令提示符”窗口输入:netstat –n 回车。
4.观察TCP状态,记录Local Address 、Foreign Address 和State。 通过上图可以观察到,在TCP协议下,本地地址套接字、外部地址套接字、状态,依次列于图中。 5.比较两次记录的不同之处。 第一次由于未建立任何连接,因此没有任何TCP信息,而第二次则成功建立了TCP连接,因此有相应的TCP连接信息得到。 6.打开Wireshark,选择菜单命令“Capture” “Interfaces…”子菜单项。弹出“Wireshark: Capture Interfaces” 对话框。单击“Options”按钮,弹出“Wireshark: Capture Options”对话框。单击“Start”按钮开始网络数据包捕获。
IEC104规约调试小结 一、四遥信息体基地址范围 “可设置104调度规约”有1997年和2002年两个版本,在流程上没有什么变化,02 此配置要根据主站来定,有的主站可能设为1,1,2,我们要改与主站一致。 三、以公共地址字节数=2,传输原因字节数=2,信息体地址字节数=3为例对一些基本的报 文分析 第一步:首次握手(U帧) 发送→激活传输启动:68(启动符)04(长度)07(控制域)00 00 00 接收→确认激活传输启动:68(启动符)04(长度)0B(控制域)00 00 00 第二步:总召唤(I帧) 召唤YC、YX(可变长I帧)初始化后定时发送总召唤,每次总召唤的间隔时间一般设为15分钟召唤一次,不同的主站系统设置不同。 发送→总召唤: 68(启动符)0E(长度)00 00(发送序号)00 00(接收序号)64(类型标示)01(可变结构限定词)06 00(传输原因)01 00(公共地址即RTU地址)00 00 00(信息体地址)14(区分是总召唤还是分组召唤,02年修改后的规约中没有分组召唤) 接收→S帧: 注意:记录接收到的长帧,双方可以按频率发送,比如接收8帧I帧回答一帧S帧,也可以要求接收1帧I帧就应答1帧S帧。 6804 01 00 02 00 接收→总召唤确认(发送帧的镜像,除传送原因不同): 68(启动符)0E(长度)00 00(发送序号)00 00(接收序号)64(类型标示)01(可变结构限定词)07 00(传输原因)01 00(公共地址即RTU地址)00 00 00(信息体地址)14(同上) 发送→S帧: 注意:记录接收到的长帧,双方可以按频率发送,比如接收8帧I帧回答一帧S帧,也可以要求接收1帧I帧就应答1帧S帧。 68 04 01 00 02 00
1.主界面介绍 随着3G的普及,手机数据业务量(如浏览器,彩信等)的日益增长,对手机侧网络包的分析显得越来越重要。 一般来说,手机数据业务的抓包工具为QXDM,在抓LOG指导里面已经有了详细参数的配置介绍(详情见《IP数据包抓取方法.doc》)。但需要注意的是,在将LOG转化为.pcap文件时,必须保证当前电脑里安装有Ethereal软件,否者PCAPGenerator这个工具不会出现。(针对使用Tools->PCAPGenerator转化.isf文件出错的情况,可以做如下尝试:先使用Tools->ISF File Converter将刚刚保存的.isf文件其转化为.dlf文件,然后使用Tools->PCAPGenerator将.dlf 文件转换成.pcap文件)。 这里主要针对抓到IP包后,怎么样使用Ethereal软件对IP包进行分析,以及一些简单的TCP/IP协议介绍。 直接点击打开.pcap文件,可以看到如下图1所示界面。 图1 中间彩色的区域就是IP数据包。从左到右,字段分别是No.,Time,Source,Destination,Protocol以及Info。IP包是按照流经手机网卡的时间顺序排列的,NO.是标示抓到的IP包是该抓包文件中的第几个,Time则是计算的所有包与第一个包之间的间隔时间,单位毫秒ms。Source和Destination字段分别表示IP包的源地址和目的地址。Protocol显示当前IP包的上层协议,如TCP,UDP,如果应用层协议头也在该IP包中,优先显示应用层协议,如RTSP,HTTP等。 注意中间的彩色显示,不同的颜色代表该IP包中包含了不同内容,这是方便我们对IP 包查看。如上面的大红色,表示的是该数据包损坏,可能是只有一半的内容,也可能是指在该包与其他包的序号不连续(指在协议层不连续),中间可能出现丢包的现象。很多时候,Ethereal是用不同颜色来区分上层协议的不同(注意IP包中必须包含上层协议的包头,才能以该应用的颜色进行标示。因为很多数据包比较大,是通过几个IP包进行传输的,那么就只有第一个包是以上层应用的颜色进行标示,后面的显示为协议层颜色)。如下图2中,可以看到DNS是以淡蓝色标示,ICMP是以黑色标示,TCP的同步(SYN&FIN建立TCP连接的三次握手)以深灰色进行标示,而其它的TCP包则以浅灰色标示,HTTP协议使用绿色进
中南林业科技大学 实验报告 课程名称:网络协议与分析 姓名:项学静学号:20104422 专业班级:2010级计算机科学与技术 系(院):计算机与信息工程学院 实验时间:2013年下学期 实验地点:电子信息楼602机房
实验一点到点协议PPP 一、实验目的 1.理解PPP协议的工作原理及作用。 2.练习PPP,CHAP的配置。 3.验证PPP,CHAP的工作原理。 二、实验环境 1.安装windows操作系统的PC计算机。 2.Boson NetSim模拟仿真软件。 三、实验步骤 1、绘制实验拓扑图 利用Boson Network Designer绘制实验网络拓扑图如图1-1。 本实验选择两台4500型号的路由器。同时,采用Serial串行方式连接两台路由器,并选择点到点类型。其中DCE端可以任意选择,对于DCE端路由器的接口(Serial 0/0)需要配置时钟信号(这里用R1的Serial 0/0作为DCE端)。 2、配置路由器基本参数
绘制完实验拓扑图后,可将其保存并装入Boson NetSim中开始试验配置。配置时点击Boson NetSim程序工具栏按钮eRouters,选择R1 并按下面的过程进行路由器1的基本参数配置: Router>enable Router#conf t Router(config)#host R1 R1(config)#enable secret c1 R1(config)#line vty 0 4 R1(config-line)#password c2 R1(config-line)#interface serial 0/0 R1(config-if)#ip address 192.168.0.1 255.255.255.0 R1(config-if)#clock rate 64000 R1(config-if)#no shutdown R1(config-if)#end R1#copy running-config startup-config 点击工具栏按钮eRouters,选择R2并按下面过程进行路由器的基本参数配置:Router>enable Router#conf t Router(config)#host R2
Arp报文分析: Arp 报文格式:三层:Frame、Ethernet、Address Resolution Protocol 协议类型:IP 先在DOC命令窗口下:ping 10.16.134.66 网关的ARP: Arp请求: Arp应答: 目的主机: Arp请求: Arp响应:
分析: 当主机10.16.134.62向主机10.16.134.66发送时,主机A会在自己的ARP缓存表中寻找是否有目标IP地址。如果找到了,也就知道了目标MAC地址,直接把目标MAC地址写入帧里面发送就可以了;如果在ARP缓存表中没有找到目标IP地址,主机A就会在网络上发送一个广播,此时,主机A发送的帧包含:sender MAC address( 本机的MAC地址),sender IP address(本机IP地址),目标主机B的target MAC address(全部为空)target IP address(目标主机的IP地址)。这表示向同一网段内的所有主机发出这样的询问:“我是10.16.134.62,我的MAC是"c8:3a:35:d3:cf:41".请问IP地址为10.16.134.66的MAC地址是什么?”网络上其他主机并不响应ARP询问,只有主机B接收到这个帧时,才向主机A做出这样的回应:“10.16.134.66的MAC地址是c8:3a:35:d3:77:1d”。这样,主机A就知道了主机B的MAC 地址,它就可以向主机B发送信息了。同时A和B还同时都更新了自己的ARP缓存表(因为A在询问的时候把自己的IP和MAC地址一起告诉了B),下次A再向主机B或者B向A发送信息时,直接从各自的ARP缓存表里查找就可以了。 ARP缓存表采用了老化机制(即设置了生存时间TTL),在一段时间内(一般15到20分钟)如果表中的某一行没有使用,就会被删除,这样可以大大减少ARP缓存表的长度,加快查询速度。 (注:此时arp缓存表中已经删除了10.16.134.66 的MAC 地址) TCP报文分析:
《高级网络技术》 实验一 ethereal抓包工具的使用 课程实验报告 课程名称:高级网络技术 专业班级: 姓名: 学号: 指导教师: 完成时间:2012 年10 月24 日
实验一 ethereal抓包工具的使用 一、实验目的 1.熟悉Ethereal网络抓包工具软件的作用和使用方法; 2.通过Ethereal工具软件的帮助,对抓到包进行分析。 二、实验内容 学习Ethereal网络抓包工具以及对ARP packet format进行分析。 三、实验设备及工具 硬件:安装了网卡的PC机。 软件:PC 机操作系统WinXP,安装了网卡驱动程序,以及ethereal抓包软件 四、实验步骤 1)安装winpcap和ethereal; 2)ARP协议分析 由ethereal抓取的包格式和下图一样,首先,对下图所示帧格式进行了解。如图所示,前14字节是数据链路层所附加的帧头,后28字节是来自网络层的ARP数据包内容。 然后,我们根据所抓取的实际例子来分析协议各个部分,如下图所示。 在这个例子中,编号256的包:物理地址是00:21:86:a2:c6:d3,IP地址是
192.168.60.42的主机或路由器,向网络中发送广播,内容是一个ARP协议的request, 希望获得IP地址为192.168.60.140的主机的物理地址。编号为257的包:IP地址为192.168.60.42的主机,收到广播的request后,向广播发送端发送单播reply,告诉 对方自己的物理地址为00:1d:ba:18:cb:dc。 256和257号包的详细内容如下所示。 256号包 257号包 由图可见,前14字节为帧头。其中,前6字节为目的物理地址,当向网络中发送广播时,目的物理地址为全f;7-12字节为源物理地址;最后两个字节表示帧类型,ox0806表示这是一个ARP数据帧;由于是在以太网中传输,当帧长度不足46字节是,可能在
MQTT协议14种报文分析 实习报告 课程名称: _____ 实习题目: ___________________ 专业班级: _____________学生姓名: __________ 学号: ___________实习成绩: 指导教师签名:年月日
[-c config file] 指定的配置文件中的端口 -v 代码调试模式(verbose)可以输出更多的信息 2.MQTT客户端Eclipse Paho MQTT (1)下载解压缩后,双击paho.exe,打开后的对界面如下 (2)点击上图中的十字图标,就能新建一个MQTT的客户端的连接,输入正确的MQTT服务端的连接地址, (3)这个时候我们就能订阅消息了。选择“Subscription”下方的绿色十字图标,就可以输入订阅的主题(topic)的名字,比如我们设置主题名称为“test”,并点击“Subscribe”按钮 (4)往MQTT服务发送一条某一主题的MQTT消息。然后点击“Publish”按钮,这个时候,我们就能看到消息已经发送成功,且在步骤(3)订阅的同一主题也收到了消息。 3.安装和使用协议分析软件wireshark (1)安装WiresharkPortable_2.2.1.paf.exe (2)捕获MQTT协议报文 (3)在Wireshark中,分为capture filter和Display Filer,我们只需要在WireShark 软件中的capture filter 输入下面的过滤条件,则与MQTT服务交互的相关TCP 的数据包就能抓取到。如下图所示意.
这个时候,我们先启动WireShark,然后点击Eclipse Paho MQTT工具的“Connect”,这个时候WireShark就能抓取下面的TCP数据包。 2.2 主要实验步骤 操作:按照“MQTT-3.1.1-CN”文档各种报文的实现方法依次实现,抓包结果截图,结合参考文档分析实验结果。 结果:如下各图所示 14种报文分析说明具体如下: 1.CONNECT –连接服务端
6 1 8 5 0 模型及M M S 报文分析基础 2012-02 参考文档: 1 .《数字化变电站调试总结 -马玉龙》 2.《 IEC61850 标准》《 IEC61850 实施规范》
1文件类型............................... 1.1ICD/CID文件结构 .......................................................... 2模型验证............................... 3、IED配置.............................. 3.1IED和LD(Logical Device相关信息 .......................................... 3.2逻辑节点LN (Logical Node) ............................................... 3.3数据DO( Data Object)及数据属性DA( Data attribute) ........................ 3.4数据集:DOI /DAI的集合.................................................... 3.5 报告控制块ReportControl: .................................................. 4如何抓包............................... 4.1抓包工具............................................................... 4.2抓包方法............................................................... 4.3分析举例............................................................... 5、MMS艮文简析............................. 5.1初始化相关............................................................... 5.2报告相关................................................................. 5.3录波相关................................................................. 5.4控制相关................................................................. 5.5定值相关.................................................................
Ethereal的安装与基本使用 【背景知识】 1. 网络协议分析实验环境要求 (1)本指导书按照 TCP/IP的层次结构对网络互连中的主要协议进行分析。本章实验的基本思路是使用协议分析工具从网络中截获数据报,对截获的数据报进行分析。通过试验,使学生了解计算机网络中数据传输的基本原理,进一步理解计算机网络协议的层次结构、协议的结构、主要功能和工作原理,以及协议之间是如何相互配合来完成数据通信功能的。 Windows 环境下常用的协议分析工具有:Snifer Pro、Natxray、Iris、Ethereal 以及Windows 2000 自带的网络监视器。本书选用Ethereal 作为协议分析工具。 (2)网络协议图
1、下载并安装网络协议分析器Ethereal 网络协议分析器网络协议分析器 Ethereal 是目前最好的、开放源码的、获得广泛应用的网络协议分析器,支持Linux 和windows 平台。在该系统中加入新的协议解析器十分简单,自从1998年发布最早的Ethereal 0.2版本发布以来,志愿者为Ethereal 添加了大量新的协议解析器,如今Ethereal 已经支持五百多种协议解析。其原因是Ehereal 具有一个良好的可扩展性的设计结构,这样才能适应网络发展的需要不断加入新的协议解析器。本节以Ethereal 0.10.14 版本为依据。 Ethereal 的安装比较简单,按下述网址下载,下载完Ethereal 即可完成安装。 ftp://s@172.23.2.10/软件及工具 (登陆时,无密码。新版本Ethereal已经整合了winpcap,应用比较方便。) 2、了解Ethereal 主窗口 图1 是抓包完成后的Ethereal 的主窗口。过滤栏以上是Ethereal 本身的菜单,过滤 栏以下是抓获的包经过分析后的显示信息。
Ethereal抓包工具使用大全 新太科技股份有限公司 2009年6月
目录 1.ETHEREAL 简介 (3) 2.ETHEREAL基本操作 (3) 3. ETHEREAL几个使用场景 (5) 3.1根据协议过滤 (5) 3.2指定IP和端口进行过滤 (6) 3.3指定某个呼叫的过滤 (10) 3.4把抓到的RTP流存成语音文件 (11) 附录一:常用的DISPLAY FILTER (14) 附录二:ETHEREAL安装说明及重要链接 (15) 附录三:TCPDUMP使用方法 (16) 1.T CPDUMP简介 (16) 2.T CPDUMP安装 (16) 3.T CPDUMP使用示例 (16) 4.T CPDUMP使用方法链接 (16)
1.E thereal简介 E thereal是一个开放源码的网络分析系统,也是是目前最好的开放源码的网络协议分析器,支持Linux和windows平台。事实上,Ethereal本身并不能抓包,它只能用来解析数据包,要抓取数据包,它需要借助于PCap。Pcap在windows下面的实现称作winpcap,这也就是为什么我们在安装前要先安装好winpcap工具。 2.Ethereal基本操作 首先运行Ethereal,出现Ethereal的主界面,如下图所示: 图1 Ethereal主界面 要捕获网络上的数据包,首先进行相关设置,点击Capture->Options出现以下窗口,如图所示:
指定网卡 图2 指定网卡 设置完毕后,点击Start,Etheteal便会开始动态的统计目前所截获的数据包,点击Capture->Stop,即可停止。下图为Ethereal截获数据包后的界面:
OSPF的报文格式 OSPF报文直接封装为IP报文协议报文,协议号为89。一个比较完整的OSPF报文(以LSU报文为例)结构如图8所示。 1. OSPF报文头 OSPF有五种报文类型,它们有相同的报文头。如图9所示。 主要字段的解释如下: ●????????????? Version:OSPF的版本号。对于OSPFv2来说,其值为2。 ●????????????? Type:OSPF报文的类型。数值从1到5,分别对应Hello报文、DD报文、LSR报文、L SU报文和LSAck报文。 ●????????????? Packet length:OSPF报文的总长度,包括报文头在内,单位为字节。 ●????????????? Router ID:始发该LSA的路由器的ID。 ●????????????? Area ID:始发LSA的路由器所在的区域ID。 ●????????????? Checksum:对整个报文的校验和。 ●????????????? AuType:验证类型。可分为不验证、简单(明文)口令验证和MD5验证,其值分别为0、 1、2。 ●????????????? Authentication:其数值根据验证类型而定。当验证类型为0时未作定义,为1时此字段为密码信息,类型为2时此字段包括Key ID、MD5验证数据长度和序列号的信息。 说明: MD5验证数据添加在OSPF报文后面,不包含在Authenticaiton字段中。 2. Hello报文(Hello Packet) 最常用的一种报文,周期性的发送给邻居路由器用来维持邻居关系以及DR/BDR的选举,内容包括一些定时器的数值、DR、BDR以及自己已知的邻居。Hello报文格式如图10所示。
附件:报文格式 1.1Ethernet数据包格式(RFC894) 1、DstMac的最高字节的最低BIT位如果为1,表明此包是以太网组播/广播包, 送给CPU处理。 2、将DstMac和本端口的MAC进行比较,如果不一致就丢弃。 3、获取以太网类型字段Type/Length。 0x0800→IP 继续进行3层的IP包处理。 0x0806→ARP 送给CPU处理。 0x8035→RARP 送给CPU处理。 0x8863→PPPoE discovery stage 送给CPU处理。 0x8864→PPPoE session stage 继续进行PPP的2层包处理。 0x8100→VLAN 其它值当作未识别包类型而丢弃。 1.2PPP数据包格式 1、获取PPP包类型字段。 0x0021→IP 继续进行3层的IP包处理。 0x8021→IPCP 送给CPU处理。 0xC021→LCP 送给CPU处理。 0xc023→PAP 送给CPU处理。 0xc025→LQR 送给CPU处理。 0xc223→CHAP 送给CPU处理。 0x8023→OSICP 送给CPU处理。 0x0023→OSI 送给CPU处理。 其它值当作未识别包类型而丢弃。
1.3 ARP 报文格式(RFC826) |←----以太网首部---->|←---------28字节ARP 请求/应答 ------ 1.4 IP 报文格式(RFC791)(20bytes) TOS 1.5 PING 报文格式(需IP 封装)(8bytes) 1.6 TCP 报文格式(需IP 封装)(20bytes)
紧急指针有效 ACK 确认序号有效 PSH 接收方应该尽快将这个报文交给应用层 RST 重建连接 SYN 同步序号用来发起一个连接 FIN 发端完成发送认务 1.7 UDP 报文格式(需IP 封装)(8bytes) 1.8 MPLS 报文格式 MPLS 报文类型: 以太网中 0x8847(单播) 0x8848(组播) PPP 类型上 0x8281(MPLSCP)
包工具以及报文解析抓常用的包工具有抓Windows下的mms-etherealWireShark和Solaris下的snoop命令。 mms-ethereal可以自动解释mms报文适合进行应用层报文的分析WireShark是ethereal的替代版本介面更加友好但标准版本中没有对mms报文分析的支持snoop主要是用来包没有图形化的分析介面抓snoop取的档可以用抓WireShark打开辅助分析对於广播和组播报文如装置的UDP心跳报文、GOOSE报文61850-9-2的smv采样报文可以用笔记本连接到交换机上任意埠取。对於后台与装置之间的抓TCP通讯有两种方法。一是直接在后台机上安装软体来包二是利用抓HUB 连接后台与装置将笔记本接到HUB上包。抓注意是HUB不能交换机。调试61850的站最好要家里带上一个HUB库房一般是8口10M的TP-LINK---不是交换机。主要用於资料包便於档问题抓。没有HUB根本没有办法档看远动与装置的mms报文只能取到抓goose资料包。如果现场有管理型交换机也可以通过设置埠镜像功能来监视mms报文。WireShark和mms-ethereal均是图形化的介面使用起来比较简单注意选择正确的网可。卡即snoop的使用方法可以用man snoop取得最基本的命令为snoop -d bge0 -o xx.snoop 下面均以WireShark例为mms-ethereal与之类似。1 设置包过滤条件抓在后台上包时资料量比较大档一大之后解析起来速度慢如果单纯了分析抓很为应用层报文可在包的时候
设置过滤条件。如果了分析网路通断问题一般不设置过抓为滤条件便於全面了解网路状况。包过滤条件在抓 Capture-Options-Capture Filter里设置点Capture Filter会有多现很成的例子下面列几个最常用的。举tcp 只取抓tcp报文udp 只取抓udp报文host 198.120.0.100 只取抓198.120.0.100的报文ether host 00:08:15:00:08:15 只取指定抓MAC地址的报文2 设置显示过滤条件打开一个包档后可以在工具列上的抓filter栏设置显示过滤条件这里的语法与Capture Filter 有点差别例如下。举tcp 只取抓tcp报文udp 只取抓udp报文ip.addr198.120.0.100 只取抓198.120.0.100的报文 eth.addr00:08:15:00:08:15 只取指定抓MAC地址的报文还可以在报文上点击右键选择apply as filter等创建一个过滤条件比较方便。3 判别网路状况输入显示过滤条件 tcp.analysis.flags可以显示失、重发等异常情况相关的丢TCP 报文此类报文的出现频率可以作评网路状况的一个尺规。常见的异常类型有以下几个为估TCP Retransmission由於没有及时收到ACK报文而档生的重传报文TCP Dup ACK xxx 重复的ACK报文TCP Previous segment lost前一帧报文失丢TCP Out-Of-OrderTCP的帧顺序错误偶尔出现属於正常现象完全不出现说明网路状态上佳。监视TCP连接建立与中断输入显示过滤条件tcp.flags.syn1tcp.flags.fin1 tcp.flags.reset1SYN是TCP建立的第一步FIN是TCP连接正
实验一网络报文格式分析 一、实验目的: 1、学习sniffer程序(IRIS)的使用方法,掌握如何分析特定类型的报文格式。 2、熟悉各种网络报文格式的组成和结构。 3、熟悉各种协议的通信交互过程。 二、实验属性: 验证性 三、实验仪器设备及器材 仅需计算机 四、实验要求 实验前认真预习TCP/IP协议内容,尤其应认真理解TCP、IP协议报文格式;在进行实验时,应注意爱护机器,按照试验指导书的要求的内容和步骤完成实验,尤其应注意认真观察试验结果,做好记录;实验完成后应认真撰写实验报告。五、实验原理
六、实验步骤 1、利用IRIS打开附录文件htm1.cap和htm2.cap,利用Capture分析各种网络报文(MAC、IPv4、TCP)的首部格式和上下报文之间的关系。 (1)分析MAC帧的首部格式,注意上下报文之间MAC地址字段的变化。 (2)分析IP数据报首部格式,注意上下报文之间IP地址字段和标识字段的变化。 (3)分析TCP报文段的首部格式(图1),注意上下报文之间端口字段、序号字段、 确认号字段和窗口字段的变化;
通过TCP首部中的控制比特,了解相应比特的应用环境,分析TCP连接的建立(图2),释放和拒绝过程。
2、利用IRIS打开附录文件htm3.cap,利用Decode分析报文的明文内容。
实验二网络报文捕获 一、实验目的: 1.学习sniffer程序(IRIS)的使用方法,掌握如何从正在运行的网络中捕获特定类型的所需报文。 2.熟悉各种网络报文格式的组成和结构。 3.熟悉各种协议的通信交互过程。 二、实验属性: 设计性 三、实验仪器设备及器材 仅需计算机 四、实验要求 实验前认真预习TCP/IP协议内容,尤其应认真理解TCP、IP协议报文格式;在进行实验时,应注意爱护机器,按照试验指导书的要求的内容和步骤完成实验,尤其应注意认真观察试验结果,做好记录;实验完成后应认真撰写实验报告。五、实验原理
用Ethereal分析协议数据包 Ethereal是一个图形用户接口(GUI)的网络嗅探器,能够完成与Tcpdump相同的功能,但操作界面要友好很多。Ehtereal和Tcpdump都依赖于pcap库(libpcap),因此两者在许多方面非常相似(如都使用相同的过滤规则和关键字)。Ethereal和其它图形化的网络嗅探器都使用相同的界面模式,如果能熟练地使用Ethereal,那么其它图形用户界面的嗅探器基本都可以操作。 1. Ethereal的安装 由于Ethereal需要WinPcap库, 所以先安装WinPcap_2_3.exe, 再安装Ethereal.exe。 2. 设置Ethereal的过滤规则 当编译并安装好Ethereal后,就可以执行“ethereal”命令来启动Ethereal。在用Ethereal截获数据包之前,应该为其设置相应的过滤规则,可以只捕获感兴趣的数据包。Ethereal使用与Tcpdump相似的过滤规则(详见下面的“5.过滤规则实例”),并且可以很方便地存储已经设置好的过滤规则。要为Ethereal 配置过滤规则,首先单击“Edit”选单,然后选择“Capture Filters...”菜单项,打开“Edit Capture Filter List”对话框(如图1所示)。因为此时还没有添加任何过滤规则,因而该对话框右侧的列表框是空的。 图1 Ethereal过滤器配置对话框 在Ethereal中添加过滤器时,需要为该过滤器指定名字及规则。例如,要在主
机10.1.197.162和https://www.doczj.com/doc/8f1153406.html,间创建过滤器,可以在“Filter name”编辑框内输入过滤器名字“sohu”,在“Filter string”编辑框内输入过滤规则“host 10.1.197.162 and https://www.doczj.com/doc/8f1153406.html,”,然后单击“New”按钮即可,如图2所示。 图2 为Ethereal添加一个过滤器 在Ethereal中使用的过滤规则和Tcpdump几乎完全一致,这是因为两者都基于pcap库的缘故。Ethereal能够同时维护很多个过滤器。网络管理员可以根据实际需要选用不同的过滤器,这在很多情况下是非常有用的。例如,一个过滤器可能用于截获两个主机间的数据包,而另一个则可能用于截获ICMP包来诊断网络故障。 当所有需要的过滤器都创建好后,单击“Save”按钮保存创建的过滤器,然后单击“Close”按钮来关闭“Edit Capture Filter List”对话框。要将过滤器应用于嗅探过程,需要在截获数据包之前或之后指定过滤器。要为嗅探过程指定过滤器,并开始截获数据包,可以单击“Capture”选单,选择“Start...”选单项,打开“Capture Options”对话框,单击该对话框中的“Filter:”按钮,然后选择要使用的过滤器,如图3所示。