精华内容
下载资源
问答
  • 1.Wireshark基本介绍 Wireshark(前称Ethereal)是一个网络封包分析软件。网络封包分析软件的功能是...Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。 Wireshark官网的页面最下面有下载链接. Wir...

    原文链接:https://www.jianshu.com/p/826928b45216

    1.Wireshark基本介绍

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

    Wireshark官网的页面最下面有下载链接.

    Wireshark基本的使用可以看MrPeak的这篇Wireshark抓包iOS入门教程

    一句话总结:可以用Wireshark查看TCP的每次报文交互的具体内容.

    2.TCP的握手

    展开全文
  • wiresharktcp包长度的疑惑

    万次阅读 2015-03-21 15:21:55
    本来就是两条很普通的192.168.10.90发给195的fin包,195回应ack,但是这两个包的长度是挺诡异的,为什么一个是54,一个是60呢,而且查看60长度的包,发现在TCP协议的数据区有6个字节的00。 那么这6个字节的00又是...

    问题

    今天用wireshark抓包调试的时候遇到了一点小困扰,如下图

    本来就是两条很普通的192.168.10.90发给195的fin包,195回应ack,但是这两个包的长度是挺诡异的,为什么一个是54,一个是60呢,而且查看60长度的包,发现在TCP协议的数据区有6个字节的00。

    那么这6个字节的00又是哪里来的呢?

    探(sou)寻(suo)答案

    • 首先确定的是这数据区6个字节的00不是应用程序发送的,那么必定是应用层以下的某一层填充的。

    • 为什么要填充呢?先上图

      上图是以太网(IEEE 802.3)帧格式,其中以太网数据帧部分最小46字节,发现什么了吗?最小46字节去掉IP头和tcp头各20字节,还剩6个字节,也就是说你tcp什么数据都不发,为了满足最小46字节,你还需要填充6个字节,也就是之前看到的6个字节的00。最后我们算一下可以抓到包的最小长度6+6+2+46=60。正好跟上面抓到的60个字节的数据包吻合。

    • 问题又来了,54字节长度的包是怎么整出来的呢?
      正好看到wireshark官网也有人遇到跟我类似的疑惑Size of Frames(又一次验证了一句话,你遇到的问题99%别人都遇到过,还有接近1%根本不是问题,最后才是你遇到过而别人没遇到过)。不废话了,大体意思就是最小以太网帧是64字节(去掉前导码和帧其实定位符,为什么是64字节也有讲究,可以看文章结尾的参考),其中包括4个字节的帧校验序列(FCS),而wireshark通常开到的是加入FCS前的发送帧和剥离FCS的接收帧。因此wireshark能抓到包的最小长度为60字节,但是由于接收帧是发送方操作系统填充的所以最小为60字节,但发送帧wireshark抓到的是填充之前的数据包,所以最小为54字节

    • 不同网卡可能会有不同的结果
      回家后因为笔记本用的是无线,对同样的数据包用wireshark发现,无线网卡对于没有数据的tcp抓包长度都是54字节,按上文理解可能就是wireshark抓到的包已经是剔除掉6个字节的填充位的数据了

    参考
    维基百科:TCP/IP协议族
    IEEE8023
    以太网帧长度

    展开全文
  • 一、wireshark界面查看 WireShark 主要分为这几个界面 1. Display Filter(显示过滤器), 用于过滤 2. Packet List Pane(封包列表), 显示捕获到的封包, 有源地址和目标地址,端口号。 颜色不同,代表 3. ...

    一、wireshark界面查看

           WireShark 主要分为这几个界面

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

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

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

               4. Dissector Pane(16进制数据)

               5. Miscellanous(地址栏,杂项)

    二、wireshark过滤规则

    1. 过滤IP,如来源IP或者目标IP等于某个IP
      如前面说的例子: ip.src==192.168.1.102 or ip.dst==192.168.1.102
      比如TCP,只显示TCP协议。
    2. 过滤端口
      tcp.dstport == 80 // 只显tcp协议的目标端口80
      tcp.srcport == 80 // 只显tcp协议的来源端口80
      也可以写成tcp.port eq 80 or udp.port eq 80 这样的模式
    3. 过滤协议
      单独写上tcp、udp、xml、http就可以过滤出具体协议的报文。你也可以用tcp or xml这样格式来过滤。
      我们还可以更加具体过滤协议的内容,如tcp.flags.syn == 0x02 表示显示包含TCP SYN标志的封包。
    4. 过滤mac地址
      eth.src eq A0:00:00:04:C5:84 // 过滤来源mac地址
      eth.dst==A0:00:00:04:C5:84 // 过滤目的mac地址
    5. http模式过滤
      http.request.method == “GET”
      http.request.method == “POST”
      http.request.uri == “/img/logo-edu.gif”
      http contains “GET”
      http contains “HTTP/1.”
      // GET包
      http.request.method == “GET” && http contains “Host: ”
      http.request.method == “GET” && http contains “User-Agent: ”
      // POST包
      http.request.method == “POST” && http contains “Host: ”
      http.request.method == “POST” && http contains “User-Agent: ”
      // 响应包
      http contains “HTTP/1.1 200 OK” && http contains “Content-Type: ”
      http contains “HTTP/1.0 200 OK” && http contains “Content-Type: “
    6. 过滤内容
      contains:包含某字符串
      ip.src==192.168.1.107 and udp contains 02:12:21:00:22
      ip.src==192.168.1.107 and tcp contains “GET”
      前面也有例子,http contains “HTTP/1.0 200 OK” && http contains “Content-Type: “

     更多过滤规则查看官方文档:https://www.wireshark.org/docs/wsug_html_chunked/

    三 、OSI模型 【参考博客:https://blog.csdn.net/u014530704/article/details/78842000】  

    OSI定义了网络互连的七层框架(物理层、数据链路层、网络层、传输层、会话层、表示层、应用层),即ISO开放互连系统参考模型。如下图左边部分。在每个分层中,都会对所发送的数据附加一个首部,在这个首部中包含了该层必要的信息,如源ip地址和目的ip地址等。
    这里写图片描述
    osi模型中,在下一层的角度看,当收到上一层的包时,全部会被认为是本层的数据,然后在本层中加上自己本层的首部,继续往下传递。一个数据包格式如下:
    这里写图片描述
    举一个例子,比如客户端应用程序A向远端服务器应用程序B发送“早上好”的数据,那么大致流程是这样的:

    1. 应用程序A把数据发送给下一层的TCP模块。
    2. TCP模块属于传输层。TCP在应用层数据的前端加上一个TCP首部。TCP首部中包含源端口号和目标端口号等信息。然后将包发送给IP模块。
    3. IP模块属于网络层。IP将TCP传过来的TCP首部和TCP数据合起来当做自己的数据,并且在TCP首部的前面加上自己的IP首部。IP首部包含了源ip地址和目的ip地址。然后,IP包将被发送给数据链路层,也就是以太网驱动程序。
    4. 从IP传过来的包,对于以太网驱动程序来说不过就是数据。给这些数据加上以太网首部,里面包含了源MAC地址和目的MAC地址。然后再通过物理层把数据发送给目的MAC地址。
    5. 服务器物理层接收到来自客户端的数据包时,首先从以太网的包首部找到MAC地址,判断是否为发给自己的包,如果不是就丢弃,如果是就向上转移给IP模块解析。
    6. IP模块收到IP包首部和后面的数据以后,判断包首部的目的ip地址与自己的ip地址是否匹配,如果匹配,就接收数据并传给TCP模块处理。
    7. TCP模块会检查端口号确定接收数据的应用程序是哪一个。
    8. 应用程序接收到数据包之后也会根据自己的规则判断做出一系列的处理。

    通过上面例子大致的过程,可以体会到从上而下发包再到从下而上收包的过程。

    四、通过wireshark查看tcp三次握手

    通过wireshark 我们查看 src = 10.25.8.189  与 des = 104.193.88.91 IP之间tcp连接

    第一次握手

    第二次握手

    第三次握手

    三次握手流程为

    1. 客户端通过TCP首部发送一个SYN包作为建立连接的请求等待确认应答。
    2. 服务器发送ACK包确认应答,发送SYN包请求连接。
    3. 客户端针对SYN包发送ACK包确认应答。

    查看报文参考图

    这里写图片描述

    展开全文
  • 在给别人写项目的时候,一个组件涉及到了TCP层的数据发送与接收。 因为项目中这个组件有早起版本,所以也算是接手别人的东西。 看了原来的代码半天云里雾里后决定用Wireshark来抓包,直接看包里面传输的数据格式...

    在给别人写项目的时候,一个组件涉及到了TCP层的数据发送与接收。

    因为项目中这个组件有早起版本,所以也算是接手别人的东西。

    看了原来的代码半天云里雾里后决定用Wireshark来抓包,直接看包里面传输的数据格式反倒更简便。

    最后把组件搞定后用Wireshark测试的时候发现了好多的包都被标记为 Bad Tcp

    把包打开仔细查看后发现只有一个问题就是:header checksum == 0x0000

    查阅了大量资料后发现原来是网卡的自动计算校验和在作怪。

    网卡驱动的高级配置中,一般有两项叫做Rx Checksum Offload和Tx Checksum Offload 

    以win7为例,可以看下图所示:

    其中的 “IPv4硬件校验和即对应了这两个选项,它的可选项有“Rx & Tx 开启、Rx开启、Tx开启和关闭四个。

    默认的配置往往是 Rx & Tx 开启。它表示网卡会帮应用进行计算ip头的checksum字段,这样一来,操作系统的ip协议栈无须进行额外的checksum运算,它只需封装好ip 数据报后甩给网卡即可。

    甩给网卡的原始ip报文的checksum字段值,原则上是无意义的,即随机的,但是根据windows上的表现来看,这个值一直 是固定0x0000

    猜测一下Wireshark的抓包原理,大概是利用Pcap提供的某种机制,把发给网卡的数据给截获了一份,这样一来,如果操作系统协议栈中出来的ip包的checksum尚未被正确设置,Wireshark完全不知道该数据还会被网卡进行修正,于是它就报错了。

    至此,如何使得Wireshark不再抱怨ip头校验错误,答案已经显而易见了,直接选择关闭“IPv4硬件校验和选项即可(选择“Rx开启应该也是可行的,这样就相当于关闭了Tx的硬件校验和功能。但是我没有试验过)。

    转载于:https://www.cnblogs.com/DeckerCHAN/p/3467270.html

    展开全文
  • Wireshark快速查看抓包数据

    万次阅读 2018-10-25 20:34:31
    右键点击获取到的包选择“Follow TCP Stream” 选择“hex”或者“C Array”快速查看发送值 结果如图
  • Wireshark查看TCP的三次握手和四次挥手: 上面的数据发送和接收两部分的info提示都是 [TCP segment of a reassembled PDU],网上的解释是TCP分片的提示,但我只是发送和接收了十几个字节数据,远未超过MSS值。...
  • 为了避免信息冗余选择过滤掉没必要的网络数据,通过ipconfig可以查看的自己电脑ipv4地址192.168.16.108 调节显示过滤器过滤掉其他没必要信息,比如只显示源地址为192.168.16.108,并将其添加成本地发送 同样...
  • 打开Wireshark并输入过滤条件“ip.addr == 121.8.249.36”,清空Wireshark的已捕获数据,使用浏览器访问远程地址,即可看到抓包数据: 2.TCP的3次握手 清空浏览器Cookie(或重启浏览器),清空Wireshark的已捕获...
  •  wireshark(官方下载网站:http://www.wireshark.org/),是用来获取网络数据封包,可以截取各种网络封包,显示网络封包的详细信息,包括http,TCP,UDP,等网络协议包。注:wireshark只能查看封包,而不能修改封包...
  • wireshark(官方下载网站: http://www.wireshark.org/),是用来获取网络数据封包,可以截取各种网络封包,显示网络封包的详细信息,包括http,TCP,UDP,等网络协议包。注:wireshark只能查看封包,而不能修改封包的...
  • 首先官网下载一个软件 https://www.wireshark.org/download.html 打开软件,选择一个网络适配器 ...红色列表里是我们tcp连接之间的握手和心跳机制,下面正常颜色的就是之间通信的数据啦。 ...
  • Kafka客户端包括producer及consumer API,通过在wireshark查看所捕获的请求,能更好的理解从producer及consumer到broker的网络连接过程。对于producer端,为了发送数据,需要建立client到broker节点的TCP长连接,...
  • 捕获TCP数据

    2021-05-01 15:52:25
    通过实验熟悉 Wireshark 抓包软件的使用方法,理解 TCP 传输过程,以及慢启动、拥塞避免等相关技术。 二、实验环境 1.操作系统:几乎任意 windows 版本。本实验是在 windows 下实现的。 2.所需软件:wireshark-setup...
  • 默认的wireshark是不能监听到127.0.0.1的网络通信的 , 需要安装一个软件就可以了 先安装这个npcap , 他会卸载本地原来的wincap等 , 不需要管. ... 然后重新打开wireshark ,...比如查看本地3306端口的mysql数据通信 tcp....
  • wireshark

    2016-01-12 21:49:53
    应用Wireshark IO Graphs分析数据流 抓包过滤器 显示过滤器 其它 wireshark基本查看服务器和目标端之间的全部会话 在详细显示区域单击右键,选择Follow TCP Stream. 关闭窗口之后,你会发现过滤条件自动被引用了...
  • 工具:wireshark(抓包...为了验证服务器收到的数据是否是正确的,使用了wireshark抓包并进行文件还原,现将方法记录一下。 1.单一文本文件的查看和还原 上传的文件格式很简单,一个文本文件。抓包后,找到调用...
  • wireshark是我们常用的数据包抓包工具,下面来介绍一下wireshark的基本使用。 1、界面入门介绍 ...查看此时Wireshark的抓包信息。 封包详细信息是用来查看协议中的每一个字段。各行信息分别对应TCP/
  • Wireshark数据流追踪和信息说明

    千次阅读 2019-10-07 15:04:07
    我们的一个完整的数据流一般都是由很多个包组成的,查看某条数据包对于的数据流的方法:    右键——>追踪流    然后就会有TCP流、UDP流、SSL流、HTTP流    当...
  • Wireshark

    2008-06-05 14:48:00
    Wireshark 是一款非常棒的Unix和Windows上的开源网络协议分析器...Wireshark拥有许多强大的特性:包含有强显示过滤器语言(rich display filter language)和查看TCP会话重构流的能力;它更支持上百种协议和媒体类型...
  • 为了安全考虑, wireshark只能查看封包, 而不能修改封包的内容, 或者发送封包. Wireshark使用默认设置时, 信息会大量冗余, 可以使用过滤器来进行筛选. 选择网卡 开始抓包 数据庞大, 通过显示过滤器进行筛选 常用...
  • 1、安装如下软件 2、设置过滤条件 3、清楚所以接受到的数据 4、查看收发数据
  • Wireshark是用于Unix和Windows的网络...它能够查看TCP会话的重建流。该项目原名为Ethereal,于2006年5月由于商标问题而更名为Wireshark.issues。Wireshark类似于tcpdump,但它具有出色的用户界面和一些过滤选项。许...
  • Wireshark是用于Unix和Windows的网络...它能够查看TCP会话的重建流。该项目原名为Ethereal,于2006年5月由于商标问题而更名为Wireshark.issues。Wireshark类似于tcpdump,但它具有出色的用户界面和一些过滤选项。许...
  • Wireshark基本用法

    2014-07-28 17:15:17
    Wireshark基本用法:抓取/过滤/查看报文 应用Wireshark观察基本网络协议 应用Wireshark过滤条件抓取特定数据流 应用Wireshark显示条件分析特定数据流(New) 应用Wireshark IO图形工具分析数据流 应用Wireshark...
  • 如果你处理TCP协议,想要查看Tcp流中的应用层数据,"Following TCP streams"功能将会很有用。如果你项查看telnet流中的密码,或者你想尝试弄明白一个数据流。或者你仅仅只需要一个显示过滤来显示某个TCP流...
  • WireShark使用笔记

    2018-09-19 21:33:43
    跟踪TCP流这个功能可以将接收到的数据排好顺序使之容易查看,而不需要一小块一小块地看。这在查看HTTP、FTP等纯文本应用层协议时非常有用。 我们以一个简单的HTTP请求举例来说明一下。打开wireshark_bo56_pcap....

空空如也

空空如也

1 2 3 4 5 ... 7
收藏数 121
精华内容 48
关键字:

wireshark查看tcp数据