DNS&&HTTP报文分析

DNS&&HTTP报文分析
DNS&&HTTP报文分析

目录

一.DNS报文分析 (1)

基本介绍 (1)

背景介绍 (1)

报文分析 (1)

结论 (7)

二.HTTP报文分析 (8)

基本介绍 (8)

背景介绍 (8)

报文分析 (8)

结论 (14)

DNS 是域名系统(Domain Name System) 的缩写,是一项因特网的以项核心服务,它作为可以将域名和IP地址相互映像的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。DNS协议运行在UDP上,使用53号端口,除地址解析以外,还提供主机别名,邮件服务器别名,负载分配的服务,常用的解析方法有递归查询和迭代查询,客户机到本地DNS服务器的过程常采用递归解析,而本地DNS服务器一般采取迭代解析。

在分析报文之前,先介绍一下相关的网络连接属性,这样有助于包文分析。在抓包之前,已经清空了浏览器缓存及本地DNS缓存,以便更加真实地模拟出域名解析过程。其中本机ip地址:192.168.1.101(因为使用了寝室无线路由器,故是一个局域网地址,至于路由器如何通过NAT进行地址转换,这一点我们暂时不关心),需要解析的域名:https://www.360docs.net/doc/b117849751.html,(即hao123的主页),本地的DNS 配置情况为:202.112.14.161 (首选DNS)61.139.2.69(备用DNS)

DNS的报文形式只有查询报文和回答报文,而且二者的报文格式都是一样的,故先从查询报文入手。

No. Time Source Destination Protocol Length Info

1 0.000000 192.168.1.101 202.112.14.161 DNS 74 Standard query 0x1964 A

https://www.360docs.net/doc/b117849751.html,

分析:此段信息是本段报文的梗概,阐明了数据报捕获的相对时间,源IP,目的IP,协议类型,报文长度,和一些包内信息概括。

Frame 1: 74 bytes on wire (592 bits), 74 bytes captured (592 bits) on interface 0 分析:这里表示物理层的一些基本情况,包含了线路的字节数,捕获的字节数,捕获的时间,帧序号,帧长度,帧标记,wireshark的染色标记等基本信息,这里我们不做展开。Ethernet II, Src: HonHaiPr_27:4f:ec (5c:ac:4c:27:4f:ec),

Dst: Shenzhen_19:8e:56 (00:14:78:19:8e:56)

分析:这一层包含了数据链路层的一些基本情况,包含以太网的类型、进程通信的两端主机的MAC地址,以及运行在此层之上的网络协议IP(0x0800)。

Internet Protocol Version 4, Src: 192.168.1.101 (192.168.1.101),

Dst: 202.112.14.161 (202.112.14.161) 分析:这一层包含了网络层的一些基本信息,使用的IP协议版本号,源目IP地址,IP 包的长度,标志字段,TTL,IP包是否分段(由于采用了UDP,故不分),上层协议类型等。User Datagram Protocol, Src Port: 62910 (62910), Dst Port: domain (53) Source port: 62910 (62910)

Destination port: domain (53)

Length: 40

Checksum: 0x3cb9 [validation disabled]

[Good Checksum: False]

[Bad Checksum: False]

分析:这一层包含了传输层的信息,源主机端口号为62910,目的主机端口号53,UDP 报文的长度,校验和信息(因为wireshark软件原因而禁止)。

下面一段是本次的主题—DNS报文分析部分,这一层包含了应用层的信息,本应用程序负责执行DNS的查询。其中,具体抓包数据如上所示,从橙色的的部分起,进入DNS的报文结构模块。为了更进一步分析报文情况,我们将其整个报文结构展示出来如下图所示:

(数据报文内容)

|0|00|14|78|19|8e|56|5c|ac|4c|27|4f|ec|08|00|45|00|00|3c|65|94|00|00|40| 11|79|fe|c0|a8|01|65|ca|70|0e|a1|f5|be|00|35|00|28|3c|b9|19|64|01|00|00| 01|00|00|00|00|00|00|03|77|77|77|06|68|61|6f|31|32|33|03|63|6f|6d|00|00| 01|00|01|

Domain Name System (query)

[Response In: 2]

Transaction ID: 0x1964 //对应标识符|19|64|(2 bytes),亦即业务序列号为

0x1964,表示此次查询https://www.360docs.net/doc/b117849751.html,的任务被标记为

0x1964.

Flags: 0x0100 Standard query //对应标识01|00,(2 bytes)标准查询

0... .... .... .... = Response: Message is a query //表示该报文是查询报文(0)

.000 0... .... .... = Opcode: Standard query (0)//表示四位操作码,本次操作是

一个标准的查询任务.... ..0. .... .... = Truncated: Message is not truncated//数据未被截断

.... ...1 .... .... = Recursion desired: Do query recursively//默认客户机服务器

按照递归查询方式进行查询.... .... .0.. .... = Z: reserved (0) //表示保留位

.... .... ...0 .... = Non-authenticated data: Unacceptable //后四位响应结果略Questions: 1 //问题数00|01(2 bytes)

Answer RRs: 0 //回答RR数00|00(2 bytes)

Authority RRs: 0//权威RR数00|00(2 bytes)

Additional RRs: 0 //附加RR数00|00(2 bytes)

以上为报头部分,共计12字节

Queries //查询部分,以资源记录的方式返回结果

https://www.360docs.net/doc/b117849751.html,: type A, class IN

Name: https://www.360docs.net/doc/b117849751.html,//要查询的域名信息,黑色部分

Type: A (Host address)//类型00|01,值为域名

Class: IN (0x0001) //类型00|01

下面我们看看服务器的返回报文。由于底层的只是相应的源目IP地址和MAC 地址发生调换,故底层我们不再分析,直接看DNS报文部分。

Domain Name System (response)

[Request In: 1]

[Time: 0.002000000 seconds]

Transaction ID: 0x1964 //与请求报文序列号相同

Flags: 0x8105 Standard query response, Refused //响应结果:服务器拒绝

1... .... .... .... = Response: Message is a response//表示该报文是响应报文(1)

.000 0... .... .... = Opcode: Standard query (0)//表示四位操作码,本次操

作是一个标准的查询任务

.... .0.. .... .... = Authoritative: Server is not an authority for domain //非权威

域名服务器

.... ..0. .... .... = Truncated: Message is not truncated//数据未被截断

.... ...1 .... .... = Recursion desired: Do query recursively//默认递归查询

.... .... 0... .... = Recursion available: Server can't do recursive queries//服器

无法递归解析

.... .... .0.. .... = Z: reserved (0)//表示保留位

.... .... ..0. .... = Answer authenticated: Answer/authority portion was not authenticated by the server

.... .... ...0 .... = Non-authenticated data: Unacceptable

.... .... .... 0101 = Reply code: Refused (5) //响应结果,服务器拒绝

Questions: 1

Answer RRs: 0

Authority RRs: 0 //已拒绝服务,和请求报文一样

Additional RRs: 0

Queries

https://www.360docs.net/doc/b117849751.html,: type A, class IN

Name: https://www.360docs.net/doc/b117849751.html,

Type: A (Host address)

Class: IN (0x0001)

从上述报文来看,首选服务器拒绝了我们的DNS请求服务,由于网络设置中还有备选服务器,因此,本主机又向备选服务器发出请求,因为解析的是同一个域名,因此请求部分的DNS报文与第一个完全一样,我们看看服务器发回的响应报文会是怎样。

Domain Name System (response)

[Request In: 3]

[Time: 0.009000000 seconds]

Transaction ID: 0x1964 //与请求报文序列号相同

Flags: 0x8180 Standard query response, No error//已成功解析

1... .... .... .... = Response: Message is a response//表示该报文是响应报文(1)

.000 0... .... .... = Opcode: Standard query (0) //表示四位操作码,本次操

作是一个标准的查询任务

.... .0.. .... .... = Authoritative: Server is not an authority for domain//非权威

域名服务器.... ..0. .... .... = Truncated: Message is not truncated//表示数据是否被截断

.... ...1 .... .... = Recursion desired: Do query recursively //默认递归查询

.... .... 1... .... = Recursion available: Server can do recursive queries//服务器

能够做递归解析.... .... .0.. .... = Z: reserved (0)//表示保留位

.... .... ..0. .... = Answer authenticated: Answer/authority portion was not authenticated by the server

.... .... ...0 .... = Non-authenticated data: Unacceptable

.... .... .... 0000 = Reply code: No error (0) //响应结果,查询成功,无差错Questions: 1 //问题数

Answer RRs: 3 //回答数

Authority RRs: 0//权威回答数

Additional RRs: 0//附加信息数

Queries //查询部分

https://www.360docs.net/doc/b117849751.html,: type A, class IN

Name: https://www.360docs.net/doc/b117849751.html,//要查询的域名信息

Type: A (Host address)//类型

Class: IN (0x0001)//类型

Answers

https://www.360docs.net/doc/b117849751.html,: type CNAME, class IN, cname https://www.360docs.net/doc/b117849751.html,

//解析结果第一部分,https://www.360docs.net/doc/b117849751.html,的规范主机名为https://www.360docs.net/doc/b117849751.html,

https://www.360docs.net/doc/b117849751.html,: type A, class IN, addr 220.181.163.22 //解析结果第二部分,其中以这个域名注册的某个主机IP地址为220.181.163.22

https://www.360docs.net/doc/b117849751.html,: type A, class IN, addr 180.149.132.15 //解析结果第二部分,其中以这个域名注册的另一个主机IP地址为180.149.132.15

至此,浏览器就利用该解析出来的IP地址与Web服务器建立TCP连接,并开始数据的传输。

事实上,由于hao123主页的特殊性(有很多广告和图片),DNS服务不仅解析了其本身的域名,还解析了所显示的一些图片网站的域名,以便使logo、广告等图片信息显示在首页,而且这些DNS解析任务都是以流水线的方式同时发往服务器进行解析的解析,参考截图如下图所示(已略去DNS发送请求):

其他DNS解析报文

从以上的DNS抓包实验向我们展示了DNS服务的过程,即:客户机向DNS 服务器发送递归方式查询的解析请求,服务器收到请求后进行相应,如能够解析域名则直接返回结果,若不能解析则返回失败信息,客户机继续向下一台服务器发起查询。经过多次实验发现,本机配置的首选DNS几乎没有解析域名的能力,经过排查,发现首选DNS服务器正是本机的默认路由,而不是真正意义上的服务器,因此将首选DNS服务器更改,不再出现相同的状况。另外,DNS协议是工作在UDP协议之上的。

超文本传送协议 (HTTP-Hypertext transfer protocol) 是分布式,协作式,超媒体系统应用之间的通信协议。是万维网(world wide web)交换信息的基础。它允许将超文本标记语言 (HTML) 文档从 Web 服务器传送到 Web 浏览器。HTML 是一种用于创建文档的标记语言,这些文档包含到相关信息的链接单元(URL)。用户可以单击一个链接来访问其它文档、图像或多媒体对象,并获得关于链接项的附加信息。HTTP工作在TCP协议上,采用80端口通信。

其主要架构有:

在分析报文之前,先介绍一下相关的网络连接属性,这样有助于包文分析。在抓包之前,已经清空了浏览器缓存及本地DNS缓存,以便更加真实地模拟出域名解析过程。其中本机ip地址:192.168.1.104(因为使用了寝室无线路由器,故是一个局域网地址,至于路由器如何通过NAT进行地址转换,这一点我们暂时不关心),需要解析的域名:https://www.360docs.net/doc/b117849751.html,(即网易的主页),为了看到http报文中更多请求模式,我登陆了网易的一个邮箱。

http报文一般都是在访问互联网时形成的,因此在访问网站时,一般需要经过dns解析,TCP三次握手建立连接的步骤,dns解析的内容前文已经分析过,这里我们先介绍TCP三次握手。

TCP三次握手

这段报文清楚地为我们展现了客户机与服务器建立TCP连接的全过程,由于本段主要是阐述http报文,故这里不对TCP报文作详尽分析。

接着,主机对服务器发送了一个http的请求报文,其内容如下所示:

HTTP请求报文

详细分析如下(该请求报文是登录163邮箱后的一些新闻显示):

Hypertext Transfer Protocol //http协议

GET /mail/user?type=news HTTP/1.1\r\n //方法字段,含请求方法,目的资源[Expert Info (Chat/Sequence): GET /mail/user?type=news HTTP/1.1\r\n] //资源[Message: GET /mail/user?type=news HTTP/1.1\r\n]//访问邮箱新闻

[Severity level: Chat]

[Group: Sequence]

Request Method: GET //请求方式

Request URI: /mail/user?type=news //指向资源

Request Version: HTTP/1.1 //版本号

Accept: application/javascript, */*;q=0.8\r\n //返回的实体类别

Referer: https://www.360docs.net/doc/b117849751.html,/special/163mail_2012/?color=003399\r\n

//告诉服务器链接的来源(来自网易的新闻网站,即从新闻页面登录到邮

箱)Accept-Language: zh-CN\r\n //返回的语言种类

User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)\r\n //客户机浏览器的版本号及操作系统等信息

UA-CPU: AMD64\r\n //客户机的cpu类型

Accept-Encoding: gzip, deflate\r\n //返回的编码格式,默认gzip压缩方式Host: https://www.360docs.net/doc/b117849751.html,\r\n //资源主机

Connection: Keep-Alive\r\n //连接方式,持久连接

[truncated] Cookie: //客户机cookie信息,红色部分为邮箱名,_ntes_nnid=48f2013848f171620a5fe18d02effcdf,1350650841898;

_ntes_nuid=48f2013848f171620a5fe18d02effcdf;

SID=5aadbd8a-76d9-423a-8622-b37aa7df38f9;

P_INFO=arcla@https://www.360docs.net/doc/b117849751.html,|1350650853|0|mail163|11&13|sic&1350637651&other#sic&\r\n

[Full request URI: https://www.360docs.net/doc/b117849751.html,/mail/user?type=news](wireshark注释,资源URI全称)

当服务器收到收到我的请求报文之后,会返回一个http的响应报文,如下图所示:

HTTP响应报文

详细分析:

Hypertext Transfer Protocol//http协议HTTP/1.1 200 OK\r\n //http状态响应信息

[Expert Info (Chat/Sequence): HTTP/1.1 200 OK\r\n]

Request Version: HTTP/1.1 //版本号

Status Code: 200 //状态码

Response Phrase: OK

Server: nginx/1.2.3\r\n //服务器

Date: Fri, 19 Oct 2012 12:47:35 GMT\r\n //时间戳

Content-Type: text/html; charset=utf-8\r\n //内容形式

Transfer-Encoding: chunked\r\n //传输方式,数据块

Connection: keep-alive\r\n //连接方式,持久连接

Set-Cookie: news_cate=3_news_a;Domain=https://www.360docs.net/doc/b117849751.html,;Path=/;Expires=Fri,

19-Oct-12 12:57:35 GMT\r\n //服务器对客户机设置cookie

P3P: CP=CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR\r\n

\r\n

HTTP chunked response //chunked编码方式,与gzip对应Data chunk (25 octets)

End of chunked encoding

Line-based text data: text/html //应用层数据

当然,http的请求响应除了get以外,常见哦还有post,head等,其中post 表示客户端向服务器放送数据的请求,head请求与get一样,但是没有响应实体,其抓到的包如下:

POST方式报文截图

POST方式报文内容

以上的post操作对应本人登录邮箱和对邮箱内部邮件的操作,均以post方式发送数据到服务器。

HEAD方式报文截图

HEAD方式报文内容

当然,http的响应报文也不一定仅仅是200,也有可能出现其他状态码,

204 no content

301 moved permanently

302 found

404 not found

304 not modified

http传输完之后,就要关闭TCP连接,其四次挥手过程如下图所示:

TCP四次挥手过程

之后TCP连接中断,一次完整的http响应结束。

HTTP是一种常见的报文传输协议,它通过浏览器访问服务器的相关信息,其传递过程主要分为建立TCP连接,保持连接并传递数据信息,拆除连接三个部分。常见的HTTP请求报文方式有GET,POST和HEAD,当然也包括后增加的PUSH,DELATE等方式。其响应报文通过状态码的方式反应状态信息,主要有1XX(消息)、2XX(成功)、3XX(重定向)、4XX(请求错误)、5XX(服务器错误)等。HTTP 协议是建立在TCP协议之上的。

附:

实验心得及体会

1.熟悉了wireshark的基本操作,滤波,查找及追踪数据的方法。

2.在实验中有时候为了找到较好的报文,需要持续不断的捕捉,经过细心的

挑选。

3.对于报文的细节部分,要通过互联网主动查询资料的方式,尽可能地给出

合理化的解释。

4.对于有的报文的捕捉,有时候也会依靠一点点运气。

104规约报文详解(解剖麻雀_最快速掌握_强力推荐)

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- IEC-60870-5-104:应用模型是:物理层,链路层,网络层,传输层,应用层 物理层保证数据的正确送达,保证如何避免冲突。(物理层利用如 RS232上利用全双工) 链路层负责具体对那个slave的通讯,对于成功与否,是否重传由链路层控制(RS485 2线利用禁止链路层确认) 应用层负责具体的一些应用,如问全数据还是单点数据还是类数据等(网络利用CSMA/CD等保证避免冲突的发生) --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 基本定义:端口号2404,站端为Server 控端为Client,平衡式传输,2Byte站地址,2Byte传送原因,3Byte信息地址。 --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 注:APDU 应用规约数据单元(整个数据)= APCI 应用规约控制信息(固定6个字节)+ ASDU 应用服务数据单元(长度可变) --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- APDU长度(系统-特定参数,指定每个系统APDU的最大长度)APDU的最大长度域为253(缺省)。视具体系统最大长度可以压缩。 --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 【1个例子】 104报文分析 BUF序0 1 2 3 4 5 6 7 8 9 .10 11 12 13 14 15 16 17 18 19 20 21 22 M->R:68 1510 0002 001E 01 03 0001 0079 00 00 01 10 01 24 13 D2 0A 02分析的结果是I (主动上报SOE,主动上报是因为104是平衡式规约)报文头固定为0x68,即十进制104 长度15字节(不是6帧的,都是I帧) 发送序号=8【控制字节的解析10 00 02 00 ,发送序号:0010H/2=16/2=8】 接收序号=1 【控制字节的解析10 00 02 00 ,接收序号:0002H/2=2/2 =1】 0x1E=30 即M_SP_TB_1 带长时标的单点信息 01 -> SQ:0 信号个数:1 03 00 -> 传送原因:[ T=0 P/N=0 原因=3 | 突发] 01 00 -> 公共地址:1 79 00 00 -> 0x79=121 信息体地址: 121 01 -> 状态: 1 IV:0 NT:0 SB:0 BL:0 10 01 24 13 D2 0A 02 ->低位10 高位01,即0x0110=1*16*16+16=272 时标: 2002/10/18 19:36:00.272 --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 每个字节都为unsigned char类型,如果是2个字节表示1个short型,则都是低位在前,高位在后。 --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 【字节0】0x68即十进制数104,68做为BUF第0个字节,下面的说明依次向后排 --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 【字节1】15即从字节2到最后的所有字节数(长度) --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 【字节2、3、4、5】这4个字节是4个控制域,对应不同类型的格式(I帧、U帧、S帧),意义和格式都不相同

实验一 数据报文分析 实验报告

实验一数据报文分析 物联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:表示紧急指针字段值

104规约报文分析

1. P SX600环境设置/以太网配置/以太网1:17 2.20.10.37子网掩码:255.255.0.0;以太网3:192.168.1.2(对应远传配置中的本站通讯地址)子网掩码:255.255.255.0. 以太网 以太网 以太网 NSC801CPU 保护测 控单元保护测 控单元至调度 数据网 或PC机 网络交换机 2. P SX600环境设置/远传配置/远传区1:IEC104,设备选择TCP Sev ,端口号2404,本站通讯地址: 192.168.1.2,远方通讯地址:192.168.1.1 镇江优利德 3.PMA 规约分析程序 文件/协议配置/IEC870-5-104规约从站IP:192.168.1.2;主站IP :192.168.1.1;公共地址:1 运行模式:模拟主站 选择端口设置,点击连接即可。 主站发送 68 04 07 00 00 00 起始字节=68 数据单元长度(APDU)=4 U 格式帧 STARTDT:ACT=1 CON=0 STOPDT:ACT=0 CON=0 TESTFR: ACT=0 CON=0 从站发送 68 04 43 00 00 00 起始字节=68 数据单元长度(APDU)=4 U 格式帧 STARTDT:ACT=0 CON=0 STOPDT:ACT=0 CON=0 TESTFR: ACT=1 CON=0 主站发送 68 04 83 00 00 00 起始字节=68 数据单元长度(APDU)=4 U 格式帧 STARTDT:ACT=0 CON=0 STOPDT:ACT=0 CON=0 TESTFR: ACT=0 CON=1 主站发送 68 0e 00 00 00 00 64 01 06 00 01 00 00 00 00 14 起始字节=68 数据单元长度(APDU)=14 I 格式帧 发送序号(NS)=0 接收序号(NR)=0 TI= 100 VSQ=01 SQ=0 INFONUM=1 COT= 06 T=0 PN=0 CAUSE =6 COA =1 C_IC_NA_1 总召唤命令 肯定认可 激活 点号=0 CP8=20 从站发送 68 0e 00 00 02 00 64 01 07 00 01 00 00 00 00 14 起始字节=68 数据单元长度(APDU)=14 I 格式帧 发送序号(NS)=0 接收序号(NR)=1 TI= 100 VSQ=01 SQ=0 INFONUM=1 COT= 07 T=0 PN=0 CAUSE =7 COA =1 C_IC_NA_1 总召唤命令 肯定认可 激活确认 点号=0 CP8=20 从站发送 68 96 02 00 02 00 02 94 14 00 01 00 01 00 00 01 d2 53 02 02 00 00 00 0f 29 01 03 00 00 00 47 51 02 04 00 00 00 6b 4e 34 05 00 00 00 6c 4e 34 06 00 00 00 6c 4e 34 07 00 00 00 6c 4e 34 08 00 00 00 6c 4e 34 09 00 00 00 6d 4e 34 0a 00 00 00 6d 4e 34 0b 00 00 00 6d 4e 34 0c 00 00 00 6e 4e 34 0d 00 00 00 6e 4e 34 0e 00 00 00 6e 4e 34 0f 00 00 00 6e 4e 34 10 00 00 00 6f 4e 34 11 00 00 00 70 4e 34 12 00 00 00 70 4e 34 13 00 00 00 70 4e 34 14 00 00 00 70 4e 34 起始字节=68 数据单元长度(APDU)=150 I 格式帧 发送序号(NS)=1 接收序号(NR)=1 TI= 2 VSQ=94 SQ=1 INFONUM=20 COT= 0014 T=0 PN=0 CAUSE =20 COA =1 M_SP_NA_1

以太网报文分析

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协议实现的。

104规约报文说明

主站与子站通过IEC60870-5-104规约通讯协议说明 目录 目录 (1) 前言 (1) 一、IEC60870-5-104应用规约数据单元基本结构 (2) 1.1 应用规约数据单元APDU (2) 1.2 应用规约控制信息APCI (2) 1.3 应用服务数据单元ASDU (3) 二、IEC60870-5-104规约的过程描述 (5) 三、IEC60870-5-104规约源码分析(报文分析) (5) 3.1启动连接(U格式) (5) 3.2启动连接确认(U格式) (6) 3.3总召唤(I格式) (6) 3.4总召唤确认(I格式) (6) 3.5数据确认(S格式) (6) 3.6总召唤结束(I格式) (7) 3.7测试连接(U格式) (7) 3.8测试连接确认(U格式) (7) 3.9.遥信信息(I格式) (7) 3.9遥测信息(I格式) (10) 3.10 SOE信息(I格式) (11) 前言 根据全国电力系统控制及其通信标准委员会三届五次会议和最近出版的国标DL/T634.5.104:2002对104规约的参数选择做了如下说明: 1、采用端正101规约中的链路地址和短报文(指链路确认报文) 2、采用召唤一级数据 3、两个字节表示公共地址(站址) 4、两个字节表示传送原因 5、三个字节表示信息体地址 上述3、4、5点与上一次通讯协议具体说明有冲突,为执行国际国内标准,建议根据上述要求对报文做如下修改。

一、IEC60870-5-104应用规约数据单元基本结构 应用规约数据单元:APDU(Application protocal data unit) 应用规约控制信息:APCI(Application protocal control information) 应用服务数据单元:ASDU(Application protocal control unit) APDU=APCI + ASDU 1.1 应用规约数据单元APDU 定义了启动字符、应用服务数据单元的长度规范、可传输一个完整的应用规约数据单元。 ●启动字符:68H(一个字节) ●长度规范:报文最大长度255字节,应用规约数据单元的最大长度为253字节,控 制域的长度是4字节,应用服务数据单元的最大长度为249字节。 ●控制域:控制域定义抗报文丢失和重复传送的控制信息、报文传输的启动和停止、 传输连接的监视。控制域的这些类型被用于完成计数的信息传输的(I格式)、计 数的监视功能(S格式)和不计数控制功能(U格式)。 ●应用服务数据单元 1.2 应用规约控制信息APCI 控制域定义抗报文丢失和重复传送的控制信息、报文传输的启动和仃止、传输连接的监视。控制域的这些类型被用于完成计数的信息传输的 (I格式)、计数的监视功能(S格式)和不计数的控制功能(U格式)。

分析TCP及UDP报文格式

计算机网络原理实验报告 实验名称实验七分析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.360docs.net/doc/b117849751.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”按钮开始网络数据包捕获。

104规约报文解释说明

链路先握手再通信,不握手不通信,通信中断须再握手(建立链路) 确认报文的来回须对方的认可,认可方式可以是一条专用的报文也可以是下一个询问报文中的FCB来暗示 原因传送的信息都必须带上原因,不允许没有理由的传输 地址每个信息量都有一个唯一的不重复的地址 类型每种信息的传输都有不同的功能类型 68 启动符 5D 长度 6C 控制域1 03 控制域2 78 控制域3 00 控制域4 01 遥信 D0 可变结构限定词(信息体个数) 14 00 传送原因 01 00 站地址 01 00 00 信息体地址(点号=信息体地址-起始地址) 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

结构说明: TYP:类型标识,可查表 在监视方向的过程信息 <0> := 未定义 <1> := 单点信息M_SP_NA_1 <3> := 双点信息M_DP_NA_1 <5> := 步位置信息M_ST_NA_1 <7> := 32比特串M_BO_NA_1 <9> := 测量值,归一化值M_ME_NA_1 <11> := 测量值,标度化值M_ME_NB_1 <13> := 测量值,短浮点数M_ME_NC_1 <15> := 累计量M_IT_NA_1 <20> := 带状态检出的成组单点信息M_PS_NA_1 <21> := 不带品质描述的归一化测量值M_ME_ND_1 <22..29>:= 为将来的兼容定义保留 <30> := 带时标CP56Time2a的单点信息M_SP_TB_1 <31> := 带时标CP56Time2a的双点信息M_DP_TB_1 <32> := 带时标CP56Time2a的步位置信息M_ST_TB_1 <33> := 带时标CP56Time2a的32比特串M_BO_TB_1 <34> := 带时标CP56Time2a的测量值,归一化值M_ME_TD_1 <35> := 带时标CP56Time2a的测量值,标度化值M_ME_TE_1 <36> := 带时标CP56Time2a的测量值,短浮点数M_ME_TF_1 <37> := 带时标CP56Time2a的累计量M_IT_TB_1 <38> := 带时标CP56Time2a的继电保护装置事件M_EP_TD_1 <39> := 带时标CP56Time2a的继电保护装置成组启动事件M_EP_TE_1 <40> := 带时标CP56Time2a的继电保护装置成组输出电路信息M_EP_TF_1 <41..44>:= 为将来的兼容定义保留 在控制方向的过程信息 类型标识:= UI8[1..8]<45..69> CON <45> := 单命令C_SC_NA_1 CON <46> := 双命令C_DC_NA_1 CON <47> := 步调节命令C_RC_NA_1 CON <48> := 设点命令,归一化值C_SE_NA_1 CON <49> := 设点命令,标度化值C_SE_NB_1 CON <50> := 设点命令,短浮点数C_SE_NC_1 CON <51> := 32比特串C_BO_NA_1 <52..57> := 为将来的兼容定义保留 在控制方向的过程信息,带时标的ASDU CON <58> := 带时标CP56Time2a的单命令C_SC_TA_1 CON <59> := 带时标CP56Time2a的双命令C_DC_TA_1 CON <60> := 带时标CP56Time2a的步调节命令C_RC_TA_1 CON <61> := 带时标CP56Time2a的设点命令,归一化值C_SE_TA_1 CON <62> := 带时标CP56Time2a的设点命令,标度化值C_SE_TB_1 CON <63> := 带时标CP56Time2a的设点命令,短浮点数C_SE_TC_1 CON <64> := 带时标CP56Time2a的32比特串C_BO_TA_1 <65..69> := 为将来的兼容定义保留

E5071C网络分析仪测试方法

"E5071C网络分析仪测试方法 一.面板上常使用按键功能大概介绍如下: Meas 打开后显示有:S11 S21 S12 S22 (S11 S22为反射,S21 S12 为传输)注意:驻波比和回波损耗在反射功能测试,也就是说在S11或者S22里面测试。 Format 打开后显示有:Log Mag———SWR———-里面有很多测试功能,如上这两种是我们常用到的,Log Mag为回波损耗测试,SWR 为驻波比测试。Display打开后显示有:Num of Traces (此功能可以打开多条测试线进行同时测试多项指标,每一条测试线可以跟据自己的需求选择相对应的指标,也就是说一个产品我们可以同时测试驻波比和插入损耗或者更多的指标) Allocate Traces (打开此功能里面有窗口显示选择,我们可以跟据自己的需求选择两个窗口以上的显示方式) Cal 此功能为仪器校准功能:我们常用到的是打开后在显示选择:Calibrate(校准端口选择,我们可以选择单端口校准,也可以选择双端口校准) Trace Prev 此功能为测试线的更换设置 Scale 此功能为测试放大的功能,打开后常用到的有:Scale/Div 10DB/Div 为每格测试10DB,我们可以跟据自己的产品更改每格测量的大小,方便我们看测试结果 Reference Value 这项功能可以改变测试线的高低,也是方便我们测试时能清楚的看到产品测试出来的波型。 Save/Recall 此功能为保存功能,我们可以把产品设置好的测试结果保存在这个里面进去以后按下此菜单Save State 我们可以保存到自己想保存的地方,如:保存在仪器里面请按Recall State 里面会有相对应的01到08,我们也可以按

IEC104规约报文分析(104报文解释的比较好的文本)

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

网络协议分析最终版

中南林业科技大学 实验报告 课程名称:网络协议与分析 姓名:项学静学号: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

完整word版104报文分析

1. 104规约框架分析 1.1 原始报文的组成 报文组成(1字节启动字符0x68,1字节报文长度,4字节控制域,不定长用户数据) 第1个字节是启动字符0x68; 第2个字节是报文长度; 第3~6共4个字节是控制域; 第7个字节是报文类型; 第8个字节是可变结构限定词; 第9~10共2个字节是传送原因; 第11~12共2个字节是应用服务数据单元公共地址; 第13~15共3个字节是信息对象地址; 。。。。。。 1.2 三种报文格式的控制域定义 (1)I帧 编号的信息传输格式(InFormation Transmit Format),简称I-格式I格式控制域标志,控制域:第一个八位位组的第一位比特= 0 第三个八位位组第一位比特= 0 (2)S帧 编号的监视功能格式(Numbered supervisory Functions),简称S-格式,控制域,第一个八位位组的第一位比特= 1 并且第二位比特= 0,第三个八位位组第一位比特= 0 (3)U帧 不编号的控制功能格式(Unnumbered control Function),简称U-格式,第一个八位位组的第一位比特= 1 并且第二位比特=1 且第三个八位位组第一位比特= 0 1.3 报文类型(第7个字节) 1.3.1 监视方向的应用功能类型 类型标识∶=UI8[1..8]<0..44> M_SP_NA_1(1) 无时标单点遥信 M_SP_TA_1(2) 带短时标的单点遥信 M_DP_NA_1(3) 无时标双点遥信 M_DP_TA_1(4) 带短时标双点遥信 M_ST_NA_1(5) 步位置信息 M_ST_TA_1(6) 带短时标的步位置信息 M_BO_NA_1(7) 32比特串 M_BO_TA_1(8) 带短时标的比特串

矢量网络分析仪的使用——实验报告

矢量网络分析仪实验报告 一、实验容 单端口:测量Open,Short,Load校准件的三组参数,分别进行单端口的校准。 a.设置测量参数 1)预设:preset OK 2)选择测试参数S11:Meas->S11; 3)设置数据显示格式为对数幅度格式:Format->LogMag; 4)设置频率围:Start->1.5GHz,Stop->2.5GHz(面板键盘上“G”代表 GHz,“M”代表MHz,“k”代表kHz; 5)设置扫描点数:Sweep Setup->Points->101->x1(或”Enter”键或按 下大按钮); 6)设置信号源扫描功率:Sweep Setup->Power->Foc->-10->x1->Entry Off (隐藏设置窗)。 b.单端口校准与测量 1)设置校准件型号:Cal->Cal Kit->85032F(或自定义/user)(F指femal 母头校准件,M指male公头校准件); 2)Modify Cal Kit->Specify CLSs->Open->Set All->Open(m/f),返回到 Specify CLSs->Short->Set ALL->Short(m/f); 3)选择单端口校准并选择校准端口:Cal-Calibrate->1-Port Cal->Select Port->1(端口1 的校准,端口2也可如此操作); 4)把Open校准件连接到端口(或与校准端口相连的同轴电缆另一连 接端),点击Open,校准提示(嘀的响声)后完成Open校准件的 测量;得到的结果如Fig 1:单口Open校准件测量 5)把Short校准件连接到端口(或与校准端口相连的同轴电缆另一连 接端),点击Short,校准提示(嘀的响声)后完成Short校准件的 测量;得到的结果如Fig 2:单口Short校准件测量 6)把Load校准件连接到端口(或与校准端口相连的同轴电缆另一连

报文分析

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报文分析:

实验1使用网络协议分析仪wireshark

实验项目列表

实验报告正文: 一、实验名称使用网络协议分析仪 二、实验目的: 1. 掌握安装和配置网络协议分析仪Wireshark的方法; 2. 熟悉使用Wireshark工具分析网络协议的基本方法,加深对协议格式、协议层次和协议交互过程 的理解。 三、实验内容和要求 1. 安装和配置网络协议分析仪Wireshark(); 2. 使用并熟悉Wireshark分析协议的部分功能。 四、实验环境 1)运行Windows 8.1 操作系统的PC 一台。 2)每台PC 具有以太网卡一块,通过双绞线与局域网相连。 3)Wireshark 程序(可以从下载)和WinPcap 程序(可以从 下载。如果Wireshark 版本为 1.2.10 或更高,则已包含了WinPcap 版 本 4.1.3) 五、操作方法与实验步骤 1) 安装网络协议分析仪 安装Wireshark Version 2.2.6 (v2.2.6-0-g32dac6a)。双击Wireshark 安装程序图标,进入安装过程。根据提示进行选择确认,可以顺利安装系统。当提示“Install WinPcap 4.1.3”时,选择安装;此后进入安装WinPcap 版本4.1.3,并选择让WinPcap 在系统启动时运行。此后,Wireshark 将能安装好并运行 2) 使用Wireshark 分析协议 (1) 启动系统。点击“Wireshark”图标,将会出现下图1所示的系统界面。

图1 Wireshark系统界面 其中“俘获(Capture)”和“分析(Analyze)”是Wireshark 中最重要的功能。 (2) 分组俘获。点击“Capture/Interface”菜单,出现下图所示界面。 图2 俘获/接口界面

MQTT协议14种报文分析.docx

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 –连接服务端

104报文解析

1)程序启动后,首先发送链路连接请求帧, 68 04 07 00 00 00 起始字符:68H 应用规约数据单元长度(APDU):04H(4个字节,即07 00 00 00) 控制域第一个八位组:07H --> 0000 0111 由前两位11可知是U格式帧; 由第三四位01可知是链路连接请求帧(TESTFR:CON=0,TESTFR:ACT=0,STOPDT:CON=0,STOPDT:ACT=0,STARTDT:CON=0,STARTDT:ACT=1) 控制域后三个八位组:00H 00H 00H(无意义) 2)随后,接到模拟从站发送来的连接请求确认帧, 68 04 0B 00 00 00 起始字符:68H 应用规约数据单元长度(APDU):04H(4个字节,即0B 00 00 00) 控制域第一个八位组:0BH --> 0000 1011 由前两位11可知是U格式帧; 由第三四位10可知是链路连接确认帧(TESTFR:CON=0,TESTFR:ACT=0,STOPDT:CON=0,STOPDT:ACT=0,STARTDT:CON=1,STARTDT:ACT=0) 控制域后三个八位组:00H 00H 00H(无意义) 3)主站发送总召唤激活请求命令, 68 0E 00 00 00 00 64 01 06 00 01 00 00 00 00 14 起始字符:68H 应用规约数据单元长度(APDU):0EH(14个字节,即00 00 00 00 64 01 06 00 01 00 00 00 00 14) 控制域第一个八位组:00H --> 0000 0000 由第一位0可知是I格式帧; 控制域第二个八位组:00H --> 与第一个八位组的第2-8位组成 0000 0000(高位)0000 000(低位) 所以,发送序号N(S)=0(注:I格式帧计数) 控制域第三四八位组:00H 00H --> 0000 0000(第四个八位组,高位)0000 000(第三个八位组的第2-8位,低位) 所以,接收序号N(R)=0(注:I格式帧计数) 类型标识:64H(CON<100>:=总召唤命令) 可变结构限定词:01H(SQ=0,number=1) 传送原因:06H 00H(Cause=6,激活)注:用两个八位组表示传送原因,且低位在前、高位在后,即Cause=0006H,本文中的所有报文顺序都是由高至低。 APDU地址:01H 00H(ADDR=1,即0001H,低位在前,高位在后) 信息体地址:00H 00H 00H(低位在前,高位在后) 信息体元素:14H(召唤限定词QOI=20,站召唤全局) 4)从站发送总召唤激活确认命令, 68 0E 00 00 02 00 64 01 07 00 01 00 00 00 00 14 起始字符:68H 应用规约数据单元长度(APDU):0EH(14个字节,即00 00 00 00 64 01 06 00 01 00 00 00 00 14) 控制域第一个八位组:00H --> 0000 0000 由第一位0可知是I格式帧; 控制域第二个八位组:00H --> 与第一个八位组的第2-8位组成 0000 0000(高位)0000 000(低位)

相关文档
最新文档