[原]结合wireshark分析TCP和三次握手原理

标签: | 发表时间:2014-09-30 21:36 | 作者:u010670679
出处:http://blog.csdn.net/u010670679

一、wireshark介绍

         wireshark数据包分析实战(第二版)电子书: http://pan.baidu.com/s/1LCZV   提取密码:   fqcv

        Wireshark(前称Ethereal)是一个 网络封包分析 软件网络封包分析 软件的功能是撷取 网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换


    1.Wireshark作用

       1) 网络管理员使用Wireshark来检测网络问题

       2) 网络安全工程师使用Wireshark来检查资讯安全相关问题

       3)开发者使用Wireshark来为新的通讯协定除错

       4)普通使用者使用Wireshark来学习网络协定的相关知识

       5)黑客会用它来寻找一些敏感信息


    2.wireshark工作流程

(1)确定Wireshark的位置。如果没有一个正确的位置,启动Wireshark后会花费很长的时间捕获一些与自己无关的数据。
(2)选择捕获接口。一般都是选择连接到Internet网络的接口,这样才可以捕获到与网络相关的数据。否则,捕获到的其它数据对自己也没有任何帮助。
(3)使用捕获过滤器。通过设置捕获过滤器,可以避免产生过大的捕获文件。这样用户在分析数据时,也不会受其它数据干扰。而且,还可以为用户节约大量的时间。
(4)使用显示过滤器。通常使用捕获过滤器过滤后的数据,往往还是很复杂。为了使过滤的数据包再更细致,此时使用显示过滤器进行过滤。
(5)使用着色规则。通常使用显示过滤器过滤后的数据,都是有用的数据包。如果想更加突出的显示某个会话,可以使用着色规则高亮显示。
(6)构建图表。如果用户想要更明显的看出一个网络中数据的变化情况,使用图表的形式可以很方便的展现数据分布情况。
(7)重组数据。Wireshark的重组功能,可以重组一个会话中不同数据包的信息,或者是一个重组一个完整的图片或文件。由于传输的文件往往较大,所以信息分布在多个数据包中。为了能够查看到整个图片或文件,这时候就需要使用重组数据的方法来实现。
3、wireshark界面介绍

       wireshark是捕获机器上的某一块网卡的网络包,当你的机器上有多块网卡的时候,你需要选择一个网卡。点击Caputre->Interfaces.. 出现下面对话框,选择正确的网卡。然后点击"Start"按钮, 开始抓包


WireShark 主要分为这几个界面,如下图

1)Display Filter(显示过滤器),  用于过滤

2)Packet List Pane(封包列表), 显示捕获到的封包, 有源地址和目标地址,端口号。 颜色不同,代表

3)Packet Details Pane(封包详细信息), 显示封包中的字段

4)Dissector Pane(16进制数据)

5)Miscellanous(地址栏,杂项)


二、基于wireshark的TCP协议分析

1. 7层iso模型

Packet Details Pane(封包详细信息), 这个面板是我们最重要的,用来查看协议中的每一个字段。

各行信息分别为

Frame:   物理层的数据帧概况

Ethernet II: 数据链路层以太网帧头部信息

Internet Protocol Version 4: 互联网层IP包头部信息

Transmission Control Protocol:  传输层T的数据段头部信息,此处是TCP

Hypertext Transfer Protocol:  应用层的信息,此处是HTTP协议


2.TCP包的的具体内容和wireshark获取的字段对应



三.wireshark实例分析3次握手

三次握手图示



wireshark抓包实例

1.首先是3次握手,第4次的才是http


2.第一次握手数据包

客户端发送一个TCP,标志位为SYN,序列号为0, 代表客户端请求建立连接。 如下图


3.第二次握手的数据包

服务器发回确认包, 标志位为 SYN,ACK. 将确认序号(Acknowledgement Number)设置为客户的I S N加1以.即0+1=1, 如下图


4.第三次握手的数据包

客户端再次发送确认包(ACK) SYN标志位为0,ACK标志位为1.并且把服务器发来ACK的序号字段+1,放在确定字段中发送给对方.并且在数据段放写ISN的+1, 如下图:


作者:u010670679 发表于2014/9/30 13:36:27 原文链接
阅读:1228 评论:0 查看评论

相关 [结合 wireshark 分析] 推荐:

[原]结合wireshark分析TCP和三次握手原理

- - HelloWorld
一、wireshark介绍.          wireshark数据包分析实战(第二版)电子书: http://pan.baidu.com/s/1LCZV   提取密码:   fqcv.         Wireshark(前称Ethereal)是一个 网络封包分析 软件. 网络封包分析 软件的功能是撷取 网络封包,并尽可能显示出最为详细的网络封包资料.

通过tcpdump和wireshark分析慢请求处理问题

- - 互联网 - ITeye博客
最近通过报警发现应用频繁有超过1s的慢请求,通过查看日志、tcpudmp和wireshark最后定位是网络问题,在排查过程中也参考了网上的很多文章,但是写的都不是全,现在有空分享一下问题排查的一些经验,希望对遇到类似问题的码农们有所帮助,具体排查步骤如下:. 查看程序日志,程序中对超过100ms的请求都有日志输出,通过查看日志发现有大量的数据库和redis超时.

利用WireShark对听音乐的过程中传送的数据包进行分析

- - FreeBuf.COM | 关注黑客与极客
相信现在的每一个人都在网络上听过音乐,那么,在我们听音乐的过程中,究竟发生了什么呢. 下面我就利用 WireShark 给大家分析一下. 打开wireshark,选择本地连接进行监听. 之后,打开一个音乐软件,随便点击一首歌曲,然后播放这首歌曲. 等待音乐播放了十几秒之后,停止wireshark的监听,现在wireshark已经监听到许多的数据包了,如下图.

wireshark过滤规则

- - CSDN博客推荐文章
WireShark 过滤 语法  . 过 滤 IP,如来源IP或者目标IP等于某个IP. ip.addr eq 192.168.1.107 // 都能显示来源IP和目标IP. tcp.port eq 80 // 不管端口是来源的还是目标的都显示. tcp.dstport == 80 // 只显tcp协议的目标端口80.

Wireshark 入门详解

- - 运维生存时间
一、 background 二、 how it works 三、包抓取方式 四、 filter in Wireshark.   Capture filter例子. 抓取所有本主机发送的报文,本机为2.2.2.2. 抓取与主机1.1.1.1.的1033端口的所有通信. 五、 Wireshark的安装 六、 Wireshark的实用功能.

wireshark使用教程

- - 互联网 - ITeye博客
 wireshark是一款抓包软件,比较易用,在平常可以利用它抓包,分析协议或者监控网络,是一个比较好的工具,因为最近在研究这个,所以就写一下教程,方便大家学习.        这里先说Wireshark的启动界面和抓包界面.        启动界面:. 这个是网卡的显示,因为我有虚拟机所以会显示虚拟网卡,我们现在抓的是真实网卡上的包所以在以太网卡右边点击start 开始抓包.

Wireshark 抓远程主机的包

- - 依云's Blog
本文来自 依云's Blog,转载请注明. 通常,我在本地用图形界面的 Wireshark 来抓包及解析,而对于远程服务器,因为没有图形界面,只好使用 tcpdump 抓包到文件然后复制到本地拿 Wireshark 看了,这样就不能实时查看抓到的包了. 当然 tcpdump 也可以实时输出,但是信息太少、难以阅读,功能也过于简单,比如我要跟踪流啊、不同的流用不同的颜色高亮啊、添加注释啊、时序分析啊,tcpdump 完全没办法做到.

Wireshark 过滤器语法 - 粪球

- - 博客园_首页
 wireshark有两种过滤器:.  捕捉过滤器(CaptureFilters):用于决定将什么样的信息记录在捕捉结果中. 显示过滤器(DisplayFilters):用于在捕捉结果中进行详细查找. 捕捉过滤器 (此过滤器不需要比较运算符,查询关键字请全部小写). 捕捉过滤器是数据经过的第一层过滤器,它用于控制捕捉数据的数量,以避免产生过大的日志文件.

使用 Wireshark 调试 HTTP/2 流量

- - JerryQu 的小站
我们知道,HTTP/2 引入了二进制分帧层(Binary Framing),将每个请求和响应分割成为更小的帧,并对它们进行了二进制编码. 与此同时,HTTP/2 沿用了之前 HTTP 版本中的绝大部分语义,上层应用基本上感知不到 HTTP/2 的存在,这一点可以通过浏览器的网络调试工具得到验证. 以下是使用 Chrome 访问 HTTP/2 网站的截图,网络面板中显示的内容与 HTTP/1 网站相比,只有一些细微的区别(头部字段都是小写,多了一些冒号开头的头部等).

Linux下网络抓包命令tcpdump详解(在wireshark中看包)

- - 开心平淡对待每一天。热爱生活
tcpdump采用命令行方式,它的命令格式为:.       tcpdump[ -adeflnNOpqStvx ] [ -c 数量 ] [ -F 文件名 ].           [ -i 网络接口 ] [ -r 文件名] [ -s snaplen ].           [ -T 类型 ] [ -w 文件名 ] [表达式 ]   .