Wireshark高级特征

news2024/11/18 23:22:57

1,端点和网络会话

  • 想要让网络通信正常进行,你必须至少拥有两台设备进行数据流的交互。端点endpoint)就是指网络上能够发送或接收数据的一台设备。两个端点之间的通信被称之为会话conversation)。Wireshark根据交互的特征来标识端点会话。
  • 端点在OSI的不同层级上使用多种不同类型的地址。
    • 如在数据链路层,通常使用物理网卡的MAC地址。每个设备的MAC地址独一无二(虽然也有办法修改)。
    • 在网络层,端点使用IP地址。IP地址可以在任何时间修改。

1.1,查看端点统计

  • Wireshark的Endpoints窗口(统计—>Endpoints),给出了各个端点的许多有用的统计数据,包括每个端点的地址,传输发送数据包的数量和字节数。
    在这里插入图片描述

    在这里插入图片描述

  • 上面图片(Endpoints窗口)顶部的选项卡(TCPEthernetIPv4IPv6UDP)根据协议将当前捕获文件中所有支持和被识别的端口进行分类。单击其中一个选项卡,就可以只显示针对一个具体协议的端口。单击窗口右下角的Endpoints类型多选框,就可以添加额外的协议过滤标签。勾选解析名称多选框,可以开启名称解析功能来查看端点地址。如果在处理大流量且需要过滤出所显示的端点数据,那么可以事先在Wireshark主窗口里应用显示过滤器,然后在端点窗口勾选显示过滤器的限制多选框。此选项会让端点窗口只显示与显示过滤器相匹配的端点。

1.2,查看网络会话

  • 访问Wireshark的会话窗口(统计—>Conversations)来显示所有在捕获文件中的会话。
    在这里插入图片描述

    在这里插入图片描述

    • 会话窗口(上图)展示的是一行两个地址组成的会话,以及每个设备发送或收到的数据包和字节数。地址A列代表着源端点,地址B列代表着目的端口。

1.3,使用端点和会话定位最高用量者

  • 使用捕获文件2022.11.281.pcapng举例。下图展示了在这个捕获文件中以字节数目排序的端点列表。

    在这里插入图片描述

    • 注意:以字节排序后的第一个地址是192.168.0.105(本机地址),此外,拥有这个地址的设备是数据集中最活跃的信息源(进行了最多通信的主机)

    • 第二个地址61.147.236.26是一个公网地址。

    • 有了上述信息,你可以假设:61.147.236.26和192.168.0.105正在各自与很多其他设备进行大量通信,或者这两个IP之间在彼此通信。实际上,最大用量者之间的端点通信是比较常见的。要确定这一点,请打开会话窗口并选中IPv4选项卡,你就可以通过使用字节数对列表进行排序来验证这一点。

    在这里插入图片描述

    • 你可以使用如下显示过滤表达式来检查会话。

      • ip.addr == 61.147.236.26 && ip.addr == 192.168.0.105
        

2,基于协议分层结构的统计

  • 当在与未知的捕获文件打交道时,有时需要知道文件中协议的分布情况,也就是捕获中TCP,IP,DHCP等所占的百分比是多少。Wireshark提供的协议分层统计Protocol Hierarchy Statistics)可以帮助你完成此任务。

  • 以上面的捕获文件2022.11.281.pcapng为例,选择统计Statistics)—>协议分级Protocol Hierarchy)打开协议分层统计窗口。如下。
    在这里插入图片描述

    在这里插入图片描述

  • 协议分层统计窗口就像一张快照,会让你直观地看到网络活动中地各种类型。

3,名称解析

  • 名称解析就是一个协议用来将一个独特的地址转换到另一个的过程,目的是让地址方便记忆。

3.1,开启名称解析

  • Wireshark在显示数据包时,使用名称解析来简化分析。要启用此功能,请选择编辑Edit)->首选项Preferences)->Name Resolution

    在这里插入图片描述

    在这里插入图片描述

  • 上面这里有一些Wireshark名称解析的主要选项。

    1. 解析MAC地址Resolve MAC addresses):
      1. 此类型的名称解析使用ARP协议,试图将第二层数据链路层的MAC地址转换为网络层地址。
      2. 如果这种转换尝试失败,那么Wireshark会使用程序目录中的ethers文件尝试进行转换。Wireshark最后的尝试便是将MAC地址的前三个字节转换为设备IEEE指定的制造商名称。
    2. 解析传输名称Resolve Transport name):
      1. 此类型的名称解析尝试将一个端口号,转换成一个与其相关的名字。比如,将端口80显示为http。
    3. 解析网络名称Resolve Network/IP name):
      1. 此类型的名称解析试图转换第三层网络层的地址。如将IP地址转换为一个易读的域名。
  • 此外Wireshark还提供了其他几个有用的选项

    1. Use captured DNS packet data for address resolution
      1. 从已捕获的DNS数据包中解析出了IP地址和DNS域名之间的映射。
    2. Use an external network name resolver
      1. 允许Wireshark为你当前的分析机器使用的外网DNS服务器生成查询,从而获得IP地址和DNS域名之间的映射。
      2. 当捕获的文件里没有DNS解析数据而你还需要DNS域名解析时,此功能就比较实用。
    3. Maximum concurrent requests
      1. 该参数会限制当前的一次最多DNS请求数量。当你的捕获文件将产生大量的DNS查询而你并不想让DNS查询占用过多带宽的时候,请使用此功能。
    4. Only use the profile “hosts” file
      1. 把DNS解析限制在与活动Wireshark文档关联的host文件中。

3.2,名称解析的潜在弊端

  1. 网络名称解析可能会失败,尤其是当没有可用的DNS服务器时。
  2. 名称解析的信息是不会保存在捕获文件里的,所以在你每次打开一个捕获文件的时候都要重新进行一次名称解析。
  3. 如果你在一个网络环境下捕获了流量,那么在另一个网络环境中打开该捕获文件时,你的系统可能访问不到之前的DNS服务器。
  4. 名称解析会带来额外的处理开销,当你的内存不剩多少的时候,可能需要关闭名称解析,以节约系统资源。
  5. DNS名称解析的依赖会产生额外的数据包,也就是说你的捕获文件可能会被解析那些基于DNS地址的流量所占据。如果在你分析的捕获文件中含有恶意IP地址,那么试图去解析它们会生成对攻击者控制的基础架构的查询,这样攻击者就有可能知道你的动作,甚至把你自己变成靶子。要避免跟攻击者打交道,请在名称解析选项对话框中关掉Use an external network name resolver

4,协议解析

  • Wireshark最大的优势就是对上千种协议解析的支持。
  • Wireshark中的协议解析器允许你将数据包拆分成多个协议区段以便分析。

4.1,更换解析器

  1. 在协议列右键单击其中一个数据包,选择Decode As。这时会弹出一个对话框,从中选择你想要使用的解析器。
    在这里插入图片描述

    在这里插入图片描述

  2. 选好之后点击ok,就可以立刻将修改应用到捕获文件中去。

  • 你可以在同一个捕获文件中多次使用强制解码功能。Wireshark将在**Decode As…**对话框中跟踪你的强制解码操作。
  • 在默认情况下,当你关掉捕获文件时强制解码的设置不会保存。补救方法就是在Decode As…对话框中单击Save按钮。这会将协议解码规则保存到你的Wireshark用户配置文件中,因此你使用该配置文件打开任意捕获文件时,它们将会生效。要移除之前保存的解码规则,你可以在对话框中单击减号按钮。

5,流跟踪

  • Wireshark分析功能中令人满意的一点就是它能够将来自不同包的数据重组成统一易读的格式,一般称作packet transcript

  • 流跟踪功能可以把从客户端发网服务器的数据都排好序使其变得更易查看。

  • 现有四种类型的流可以被跟踪。

    1. TCP流:重组使用TCP协议的数据,比如HTTP和FTP。
    2. UDP流:重组使用UDP协议的数据,比如DNS。
    3. SSL流:重组加密的协议,比如HTTPS。你必须提供密钥来解密流量。
    4. HTTP流:从HTTP协议中重组和解压数据。当使用TCP流跟踪但又没有完全解码出HTTP数据时,这个功能就派上用场了。
  • 如一个简单的HTTP交互举例来说,选中一个HTTP或TCP数据包,右键单击这个文件并选择追踪流。此时会打开一个新窗口。
    在这里插入图片描述

    在这里插入图片描述

    • 注意这个窗口中的文字以两个颜色显示,其中红色用来标记从源地址前往目标地址的流量,而蓝色用来区分出相反方向,也就是从目标地址到源地址的流量。这里的颜色标记以哪方先开始通信为准。

6,数据包长度

  • 一个或一组数据包的大小可以了解很多情况。在正常情况下,一个以太网上的帧最大长度为1518字节,除去以太网,IP以及TCP头,还剩下1460字节以供应用层协议的头或者数据使用。如果你知道报文传输的最小需求,那么我们可以通过一个捕获文件中数据包长度的分布情况,做一些对流量的合理猜测。Wireshark提供了数据包长度窗口,帮助你查看数据包基于其长度的分布情况。

  • 依次点击统计Statistics)-> 分组长度packet Lengths
    在这里插入图片描述

    在这里插入图片描述

  • 特别需要注意那些大小为1280~2559字节的数据包统计的行。这些较大的数据包通常表示数据传输,而较小的数据包则表示协议控制序列。

  • 剩下的大多数数据包都是在40~79字节范围内,而处于这个范围的数据包通常是不含数据的TCP控制数据包。

7,图形展示

7.1,查看IO图

  • WiresharkIO图窗口允许你对网络上的吞吐量进行绘图。可以利用这些图,找到数据吞吐的峰值,找出不同协议中的性能时滞,以及比较实时数据流。

  • 选择统计(Statistics)—>IO Graphs
    在这里插入图片描述

    在这里插入图片描述

7.2,双向时间图

  • Wireshark中的另一个绘图功能就是对给定捕获文件的双向时间绘图。双向时间(Round-Trip Time,RTT)就是接收数据包确认所需的时间。对双向时间的分析通常被用来寻找通信中的慢点或者瓶颈,以确定是否存在延迟。

  • 选择统计Statistics)—>TCP流图形TCP Stram Graph)—>往返时间Round Trip Time Graph
    在这里插入图片描述

    在这里插入图片描述

  • 图中每一点都代表了一个数据包的双向时间。在默认情况下,这些值以其序列号排序。可以单击这个图中的任何一个点,并在Packet List面板中看到相应的数据包。

7.3,数据流图

  • 数据流绘图功能对于可视化连接以及显示一定时间的数据流非常有用,这些信息使你可以更轻松地了解设备的通信方式。数据流图基本上以列的方式,将主机之间的连接显示出来,并将流量组织到一起,以便于你更直观地解读。

  • 选择统计Statistics)—>流量图
    在这里插入图片描述

    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/70026.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python中如何选择Web开发框架?

Python开发中Web框架可谓是百花齐放,各式各样的web框架层出不穷,那么对于需要进行Python开发的我们来说,如何选择web框架也就变成了一门学问了。本篇文章主要是介绍目前一些比较有特点受欢迎的Web框架,我们可以根据各个Web框架的特性进行选择应用。 Django Django是市面上…

利用Astar算法实现飞行轨迹的三维路径规划(基于Matlab代码实现)

目录 1 概述 1.1研究背景 2 运行结果 3 Matlab代码实现 4 参考文献 1 概述 随着自动化技术的发展,现代航空技术水平有了前所未有的提高,促进了无人机在军事、民用领域的广泛应用。航迹规划技术作为无人机任务规划的关键技术,一直都是无人机领域的一大研究热点。无人机航迹规划是…

Synopsys Sentaurus TCAD系列教程之-- Svisual《一》看图工具

Svisual Svisual作为独立的模块,可以实现Inspect对于节点.plt曲线的查看,也可以实现TecplotSV的.tdr看图功能,还可以进行自动化操作。 当作看图工具使用 - 当作一维曲线看图工具(.plt,Inspect) 1.1 打开:Sdevice模块…

[附源码]Python计算机毕业设计SSM基于自组网的空地一体化信息系统(程序+LW)

[附源码]Python计算机毕业设计SSM基于自组网的空地一体化信息系统(程序LW) 项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff0…

F12抓包简单案例

F12抓包原理:在电脑访问互联网之前,进行包录制 1.谷歌开发者工具(F12) 元素(Elements):页面元素查看分析,web自动化 控制台(Console):查看日志 来源&#xf…

c语言---指针进阶(2)--玩转指针

今天内容不多,但都是精华。 1.数组参数和指针参数 2.函数指针 2.1笔试题 3.函数指针数组 1.数组参数和指针参数 例1:一维数组传参 void test(int arr[]) {} void test(int arr[10]) {} void test(int *arr) {}void test2(int *arr2[20]) {} void …

kotlin之声明变量的方式

让我们来看一下java声明变量的方式 Java声明变量方式 类型 变量名 等于 初始化值 String str "999999999"; kotlin声明变量方式 <关键字> <变量名称> : <类型> <初始化值> var sr : String "s…

[附源码]Python计算机毕业设计SSM计算机软考系统的设计与实现(程序+LW)

[附源码]Python计算机毕业设计SSM计算机软考系统的设计与实现&#xff08;程序LW) 项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。…

nginx安装及使用(详细版)

一、负载均衡介绍 负载均衡分为硬件负载均衡和软件负载均衡。 硬件负载均衡解决方案是最直接服务器和外部网络间安装负载均衡设备&#xff0c;这种设备我们通常称之为负载均衡器产品有F5、NetScaler等。 软件负载均衡解决方案是指一台或多台服务器响应的操作系统上安装一个或多…

【旋转目标检测】旋转标注工具roLabelImg使用教程

旋转目标检测系列文章:第一篇,学会使用roLabelImg标注工具 本次实验在Windows 10系统下进行, python版本3.6.10(2年前安装的python版本,有点老了) 下载标注工具项目代码: https://github.com/cgvict/roLabelImg 下载代码压缩包到桌面: 解压: 打开Anaconda Prompt终…

动态拉取接口数据

通过工具类动态拉取接口数据 写在前言&#xff1a; 使用工具类拉取接口中的数据&#xff0c;存放在自己的数据库&#xff0c;进行展示。 自己去看工具类中的注释&#xff0c;按照自己的需求去修改。 一、工具类 1、整理需求 想通过工具类把接口数据存放在数据库&#xff…

Feign远程调用

Feign是一个声明式的http客户端&#xff0c;官方地址&#xff1a;https://github.com/OpenFeign/feign Fegin的使用步骤如下&#xff1a; 1&#xff09;引入依赖 <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-clou…

Win11开始菜单里面的推荐项目怎么全部关闭教学

Win11开始菜单里面的推荐项目怎么全部关闭教学分享。在Win11系统的开始菜单中&#xff0c;有一些推荐的功能程序。这些程序用户平时并没有使用到&#xff0c;所以想要去将它们进行关闭。那么这些程序如何彻底的关闭显示呢&#xff1f;一起来看看关闭的方法吧。 操作方法&#x…

[附源码]计算机毕业设计咖啡销售平台Springboot程序

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

[设计] Doris血缘解析流程

一、背景 1.1 元数据概述 元数据是凌久中台重要功能模块&#xff0c;是数据治理的重要一环&#xff0c;元数据治理是一切数据治理的基础&#xff0c;主要分为元数据管理和表血缘管理&#xff1b; 元数据管理主要用来做数据地图、数据资产等&#xff1b; 血缘治理主要用来追查…

爬虫-(5)

内容概览 scrapy架构介绍scrapy解析数据settings相关配置持久化方案爬取全站文章爬虫中间件与下载中间件 scrapy架构介绍 # 引擎(ENGINE) 引擎负责控制系统所有组件之间的数据流&#xff0c;并在某些动作发生时触发事件。有关详细信息&#xff0c;请参见上面的数据流部分。# …

SLURM批处理调度系统介绍

SLURM (Simple Linux Utility for Resouce Management) 非常成熟的开源社区集群批处理调度系统。 介绍 2008年左右起源于LLNL实验室, 最新版本20.11开源软件(约50万行c源码)&#xff0c;开发和发布一直活跃用户群: Top10里有5家使用(天河HPC是其一)商业公司SchedMD提供顾问咨…

经典算法之LRU算法

一、理论 LRU算法算是个常见的算法&#xff0c;很有必要去了解它&#xff0c;现在我们就来看看什么是 LRU LRU 的全称是 Least Recently Used&#xff08;最近最少使用&#xff09;&#xff0c;就如它的含义一样&#xff0c;最近最少使用的。在实际的场景中大多会把它当作一种…

CAN总线学习笔记 | STM32CubeMX配置CAN环回测试

CAN基础知识介绍文中介绍了CAN协议的基础知识&#xff0c;以及STM32F4芯片的CAN控制器相关知识&#xff0c;下面将通过实例&#xff0c;利用STM32CubeMX图形化配置工具&#xff0c;来实现CAN通讯的环回测试 一、STM32CubeMX配置 CAN是挂载在APB1总线上&#xff0c;设置PCLK1时…

Flink系列之Flink中四层Graph详解

title: Flink系列 四、Flink Runtime 四层 Graph 详解 首先回顾一下 Flink 的整体架构设计&#xff1a; {% asset_img processes.svg %} 关于上图中的一些概念的解释&#xff1a; 1、DataFlow Graph 是一个逻辑概念&#xff0c;表示这个应用程序的一个执行图&#xff0c;事…