TCP协议首部:

分析第一个包:

源地址:我自己电脑的IP,就不放上来了

Destination: 222.199.191.33 目的地址

TCP:表明是个TCP协议

Length:66 表明包的长度是66个字节 ??

56739->443 :表明是从源地址的56739端口发送给目的地址的443端口

[SYN]表明这是一个TCP的同步请求,是TCP握手的第一步

Seq=0: TCP协议中的序号,这里为0.

在TCP中第一个SYN 包所包含的 sequence 是随机的,而第一个 SYN+ACK包里的sequence 也是随机的,wireshark 为了你便于观察都使用相对值,初始化这两个随机值为0,后面的sequence 和 acknowledge 都在上面累加

Win=8192: 发送报文段一方的接收窗口。TCP协议中的字段

Len=0: 发送文件TCP报文段Datas段的长度

MSS=1460: 最大报文段长度,指每个TCP报文段中数据字段的最大长度。它不包含首部长度。是TCP首部中,选项中的字段。

WS=256:窗口扩大因子;只能在连接建立阶段确定;在连接期间他的值不能够改变;新的窗口值=首部中定义的窗口值乘以2的(窗口扩大因子)的次方;由于窗口值不够用。选项中的字段。 ??书上说,窗口扩大选项占3个字节,其中一个字节表示移位值S,S最大为14,新的窗口值等于TCP首部中的窗口位数从16增大到(16+S)。可这里WS怎么会等于256呢??

答:这里的256是指窗口扩大了256倍,其S=8, 2的8次方 = 256. 符合S<=14. 打开软件下面TCP部分的详细说明,有介绍。

SACK_PERM=1: 允许选择确认。 TCP选项中的字段。

恩,总算了解一点点了,这些信息是TCP协议上的内容。

下面,分析一下详细的内容,点击上面的包,下面会出现详细的信息,比如下面这样:

分别是什么意思呢?

经我思索了半天,才恍然大悟,这是根据网络分层模型显示的不同层的内容。

Frame 551: 对应的是这个包的概略信息,里面有我们是否对其做过标记,怎么用彩色显示之类的内容。

Ethernet II: 对应网络接口层,表明采用Ethernet II的太网标准帧格式。

Internet Protocal Version 4: 对应网络层,表明采用IPv4

Transmission Control Protocol:对应传输层,表明采用TCP协议。

下面,一个一个点开,看看里面的详细内容。

Ethernet II:

可以看到源和目标的硬件地址。

unicast表示单播。

??那一堆的...是什么? LG IG又是什么??

答:那些点是指要标明的字段中非重要的信息未,重要的位的数字被显示出来了。

IPv4:

先把IP首部的格式放上来,有助于分析:

开始说明了使用的协议版本是IPv4, 首部长度是20字节。

Differentiated Services Field:区分服务字段

(DSCP 0x00: Default; ECN:0x00) 表示一个特定的上层协议所分配的重要级别,默认的DSCP值是0,相当于尽力传送,ECN字段被分为ECN-Capable Transport(ECT)bit和CEbit, ECT bit设置为0,表明该传输协议将忽略CE bit. CE bit 将由路由器设置,设置为0说明对末端节点不挤塞。

IP包的总长度为52字节,标志字段为1302

标识字段为0x02,表明没有分片,片偏移量为0,生存时间为128,上层协议为TCP

首部检验和下面的Good和Bad都是False, 我理解的是因为这是第一个包,不存在验证问题。

TCP

这里,看看这些包究竟在做什么

是我的电脑跟某个网站交互的前4个包。

其中前三个包可以明显看出是TCP的三次握手。

那么,问题来了:

为什么第三个包的长度比前两个短呢?在建立握手的过程中交换了什么信息呢?

(我自己的理解,不一定对,欢迎指正)

我们分析一下前三个包的信息,可以发现,只有TCP首部长度不同,前两个包用到了12个字节的TCP选项字段,而第三个包没有。

就多在画圈的地方了,在选项字段,双方传递了自己的最大报文长度(MSS),窗口扩大选项(window scale)和可选择确认选项(SACK)。其实就是为双方之后传递数据的大小,确认方式等做了信息交换,保证双方能够正常的通信。

转: http://www.cnblogs.com/dplearning/p/4820098.html

wireshark抓包分析的更多相关文章

  1. Wireshark抓包分析/TCP/Http/Https及代理IP的识别

    前言 坦白讲,没想好怎样的开头.辗转三年过去了.一切已经变化了许多,一切似乎从没有改变. 前段时间调研了一次代理相关的知识,简单整理一下分享之.如有错误,欢迎指正. 涉及 Proxy IP应用 原理/ ...

  2. 用Wireshark抓包分析超过70秒的请求

    超过70秒的请求是通过分析IIS日志发现的: 10.159.63.104是SLB的内网IP. 通过Wireshark抓包分析请求是9:22:21收到的(tcp.stream eq 23080): 09 ...

  3. Wireshark抓包分析HTTPS与HTTP报文的差异

    一.什么是HTTPS: HTTPS(Secure Hypertext Transfer Protocol)安全超文本传输协议 它是一个安全通信通道,它基于HTTP开发,用于在客户计算机和服务器之间交换 ...

  4. wireshark 抓包分析 TCPIP协议的握手

    wireshark 抓包分析 TCPIP协议的握手 原网址:http://www.cnblogs.com/TankXiao/archive/2012/10/10/2711777.html 之前写过一篇 ...

  5. wireshark抓包分析工具的使用

    # wireshark抓包分析工具的使用 ## 常用抓包指令 - `ip.src==192.168.60.26 and ip.dst==111.7.187.220 and tcp.port == 80 ...

  6. Wireshark抓包分析TCP建立/释放链接的过程以及状态变迁分析

    Wireshark抓包分析TCP建立/释放链接的过程以及状态变迁分析 一.介绍计算机网络体系结构 1.计算机的网络体系结构 在抓包分析TCP建立链接之前首先了解下计算机的网络通信的模型,我相信学习过计 ...

  7. wireshark抓包分析——TCP/IP协议

    本文来自网易云社区 当我们需要跟踪网络有关的信息时,经常会说"抓包".这里抓包究竟是什么?抓到的包又能分析出什么?在本文中以TCP/IP协议为例,简单介绍TCP/IP协议以及如何通 ...

  8. 【计算机网络】wireshark抓包分析1

    学习计算机网络很久了,但总是局限于书本知识,感觉get不到重点.经师兄建议用wireshark抓包分析看看. 我自己以前并没有做过抓包分析,所以这篇博文可能会有很多错误,只是我自己的一个记录,路过的亲 ...

  9. TCP/IP详解卷1 - wireshark抓包分析

    TCP/IP详解卷1 - 系列文 TCP/IP详解卷1 - 思维导图(1) TCP/IP详解卷1 - wireshark抓包分析 引言 在初学TCP/IP协议时,会觉得协议是一种很抽象的东西,通过wi ...

  10. 使用wireshark抓包分析-抓包实用技巧

    目录 使用wireshark抓包分析-抓包实用技巧 前言 自定义捕获条件 输入配置 输出配置 命令行抓包 抓取多个接口 抓包分析 批量分析 合并包 结论 参考文献 使用wireshark抓包分析-抓包 ...

随机推荐

  1. Zookeeper简介及使用

    一.Zookeeper简介 1.zookeeper简介 动物管理员 Apache ZooKeeper致力于开发和维护开源服务器,实现高度可靠的分布式协调. 2.什么是ZooKeeper? ZooKee ...

  2. 【react map函数】

    {...runInfos.map((rowinfo) => { console.log(rowinfo); })}

  3. Visual Studio 2017 新特性

    1. out-variables(Out变量) 以前,我们使用out变量的时候,需要在外部先申明,然后才能传入方法,类似如下: string ddd = ""; //先申明变量 c ...

  4. 利用idea的code inspect功能进行代码静态分析

    利用idea.phpstorm系列的ide的code inspect功能可以开发出适用于各种编程语言的代码静态分析工具.这个功能大家可以自己实现扩展规则,规则也使用了visitor模式,规则里对关心的 ...

  5. etcd: request cluster ID mismatch错误解决【只适用于新建etcd集群或无数据集群】

    1.报错信息 Mar 29 05:45:31 xxx etcd: request cluster ID mismatch (got 414f8613693e2e2 want cdf818194e3a8 ...

  6. 服务器初识、linux安装、linux初识

    电脑硬件 电源 既然是人体的心脏,保障电源供应,就需要质量好的电源,生产环境中单个核心服务器最好是双电源AB线路. 一个接220V电路,一个可能接蓄电池UPS(不间断电源) cpu 常见品牌:Inte ...

  7. CentOS7.3 jdk、tomcat 安装步骤

    jdk.tomcat 安装步骤 一.jdk 安装步骤 1.登录root用户 su - root 2.创建install目录 mkdir -p /usr/install 3.复制 对应的jdk 和tom ...

  8. 008-Hadoop Hive sql语法详解3-DML 操作:元数据存储

    一.概述 hive不支持用insert语句一条一条的进行插入操作,也不支持update操作.数据是以load的方式加载到建立好的表中.数据一旦导入就不可以修改. DML包括:INSERT插入.UPDA ...

  9. TypeScript教程

    汇智课堂 地址  http://www.hubwiz.com/course/55b724ab3ad79a1b05dcc26c/ TypeScript是一种由微软开发的自由和开源的编程语言.它是Java ...

  10. 【转载】ARM MMU详解

    一.MMU的产生       许多年以前,当人们还在使用DOS或是更古老的操作系统的时候,计算机的内存还非常小,一般都是以K为单位进行计算,相应的,当时的程序规模也不大,所以内存容量虽然小,但还是可以 ...