当前位置: 首页 > news >正文

计算机网络实验2:网络嗅探

文章目录

  • 1. 主要教学内容
  • 2. Wireshark介绍
  • 3. Wireshark下载
  • 4. 使用Wireshark捕获包
    • 4.1 选择网卡
    • 4.2 停止抓包
    • 4.3 保存数据
  • 5. Wireshark的过滤规则
  • 6. Wireshark实例

1. 主要教学内容

  • 实验内容:安装、学习使用网络包分析工具Wireshark。
  • 所需学时:1。
  • 重难点:Wireshark的界面及功能了解。
  • 周次:第一周。
  • 教材相关章节:1.3。

2. Wireshark介绍

Wireshark 是常用的网络包分析工具。网络包分析工具的主要作用是尝试捕获网络包, 并尽可能详细的显示包的情况。

Wireshark 是Etheral 更高级的版本,包含WinPcap。它具有方便易用的图形界面和众多分类信息及过滤选项,是一款免费、开源的网络协议检测软件 。Wireshatk通常运行在路由器或有路由功能的主机上,这样就能对大量的数据进行监控,几乎能得到以太网上传送的任何数据包。

Wireshark 不是人侵侦测软件。对于网络上的异常流量行为,Wireshark 不会产生警示或任何提示。通过仔细分析Wireshark 捕获的数据包能够帮助使用者对网络行为有更清楚的了解。Wireshark 没有数据包生成器,因而只能查看数据包而不能修改,它只会反映出被捕获的数据包的信息,并对其内容进行分析。

3. Wireshark下载

  • 到Wireshark官网:
  • 点击Get started

在这里插入图片描述

  • 对应系统版本进行下载即可:

在这里插入图片描述

  • 安装详细教程
  • 下载完成后打开界面:

在这里插入图片描述

4. 使用Wireshark捕获包

Wireshark的使用主要有三个步骤:

  • 选择所要捕捉的物理网卡
  • 选择过滤规则
  • 捕捉数据包

通过单击捕捉到的数据包, 在下方的窗口中查看数据包头以及数据字段等详细信息。使用者通过对相关协议知识的了解, 再加上实验观察到的现象, 对实验结果进行分析和论证,从而得出所有参数的含义。

一般来说,对于Windows系统,在命令行输入:

ipconfig

之后就会显示对应的物理网卡。又称网络适配器或网络接口卡(NIC),英文名为Network Interface Card。也有直接翻译为Network Card,简称NC。

详细操作,参考:Wireshark详细操作

4.1 选择网卡

打开 Wireshark 后,会直接进入“网卡选择界面”,Wi-Fi:en0是我连接无线的网卡,我们抓一下这个网卡的流量,双击网卡名,自动开始抓包。

在这里插入图片描述

4.2 停止抓包

点击左上角的“红色按钮”,可以停止抓包。

在这里插入图片描述

4.3 保存数据

可以直接点击工具栏的保存按钮,保存抓包的数据。

在这里插入图片描述

5. Wireshark的过滤规则

Wireshark的一个重要功能就是过滤器(Filter) 。由于Wireshark 所捕捉的数据较复杂,要迅速、准确地获取需要的信息,就要使用过滤 、工具。可以有两次过滤:第一次是捕捉过滤,用于筛选需要的捕捉结果;第二次是显示过滤,只将需要查看的结果显示。

Filter位于工具栏上,可以按照规则输入过滤条件,如:

在这里插入图片描述

其中ip.src_host==192.168.1.10表示过滤出源地址为192.168.1.10的数据包。

常见的过滤规则如下:

  1. 按协议类型过滤

Wireshark 支持的协议包括TCP、UDP、ARP、ICMP、HTTP、 SMTP、FTP、DNS、MSN、IP、SSL、OICQ、BOOTP等。

  • 例如只查看HTTP协议,则直接输人http
  1. 按照IP地址过滤

若仅显示与指定IP地址(例如192. 168.0. 123)通信的记录,则可输人ip.addr==192.168.0.123

如果限制为只要从192.168.0.123送来的记录,则输人ip.src==192.168.0.123

而得到目的IP地址为192.168.0.123的记录则应输人ip.dst==192.168.0.123

  1. 按照协议模式过滤

例如HTTP协议可以针对HTTP的请求方式进行过滤:

  • 只显示发送GET或POST请求的过滤规则:http.request.method=="GET"http.request.method=="POST"
  1. 按端口过滤

例如tcp.port eq 80。不管端口是源还是目标的都只显示满足tcp.port== 80条件的包。

  1. 按MAC地址过滤
eth.dst==A0:00:00:04:c5:84 // 过滤目的MAC
eth.src eq A0:00:00:04:c5:84 // 过滤源MAC
  1. 按包长度过滤

例如udp.length==26,这个长度是指udp本身固定长度8加上udp下面的数据包之和。

tcp.len>=7指的是IP数据包( tcp 下面数据),不包括tcp本身。ip.len==94指除了以太网头固定长度为14,其他都算是ip.len,即从IP本身到最后。frame.len==119指整个数据包长度,从eth开始到最后,即eth–> ip or arp --> tcp or udp --> data。

  1. 按参数过滤

例如按TCP参数过滤:

tcp.flags // 显示包含TCP标识的数据包
tcp.flags.syn==0x02 // 显示包含TCP SYN标识的数据包
  1. 按内容过滤

例如:

tcp[20] // 表示从20开始取1个字符
tcp[20:] // 表示从20开始取1个字符以上
tcp[20:8] // 表示从20开始取8个字符
  1. 采用逻辑运算过滤

过滤语句可利用&&或者and(表示“与”)、||或者or(表示“或”)、!或者not(表示 “ 非”)组合使用多个限制规则,例如(http&&ip.dst==192.168.0.123)||dns;再如要排除ARP包,则使用!arp或者not arp

6. Wireshark实例

Wireshark面板:

在这里插入图片描述

快捷工具栏:

在这里插入图片描述

这里以ARP协议为例,演示数据的分析过程。首先启动监听(没有设置捕获过滤器),等过一段时间后,停止抓包。然后在显示过滤器输人arp(注意是小写)作为过滤条件,按回车。得到ARP包如下:

在这里插入图片描述

Wireshark窗口的数据帧列表面板的每行都对应着网络上单独的一个数据包。默认情况下,每行会显示数据包的时间戳源地址目的地址所使用的协议、关于数据包的一些信息。通过单击此列表中的某一行,可以获悉更详细的信息。

这部分的信息分布与查看的协议有关,一般包含有物理层数据链路层网络层传输层等各层信息。

  • 物理层可以得到线路的字节数捕获到的字节数 ,还有抓包的时间戳距离第一次抓包的时间间隔等信息。

  • 数据链路层可以得到源网卡物理地址目的网卡物理地址以及帧类型

  • 网络层可以得到版本号源IP目的IP地址、报头长度包的总长度TTL网络协议等信息。

  • 传输层可以得到源端口目的端口以及序列号控制位等有效信息。

展开数据包细节中的第一行,该行主要包含一些关于帧的详细信息:

在这里插入图片描述

  • 帧的编号:1667( 捕获时的编号)。
  • 帧的大小:60B。再将4B的CRC计算在里面,就刚好满足最小64B的要求。
  • 接下来的信息还有帧被捕获的日期和时间帧距离前一个帧的捕获时间差帧距离第一个帧的捕获时间差等,以及表明帧装载的协议是ARP。

展开第2行,该行主要包含地址一类的信息:

在这里插入图片描述

展开第3行,主要包含协议的格式

在这里插入图片描述

地址解析协议有硬件类型(以太网)、协议类型(IP)、硬件大小(6)、协议大小(4)、发送方MAC地址、发送方IP地 址、目的MAC地址、目的IP地址等。

相关文章:

计算机网络实验2:网络嗅探

文章目录 1. 主要教学内容2. Wireshark介绍3. Wireshark下载4. 使用Wireshark捕获包4.1 选择网卡4.2 停止抓包4.3 保存数据 5. Wireshark的过滤规则6. Wireshark实例 1. 主要教学内容 实验内容:安装、学习使用网络包分析工具Wireshark。所需学时:1。重难…...

智慧防灾:数字孪生技术的应用

最近的“杜苏芮”“卡努”有没有对大家产生影响呢? 频繁发生的台风和其他自然灾害引起了人们对于灾害预防和应对的高度关注。在这种背景下,数字孪生作为一项前沿技术,为灾害预防领域提供了全新的解决方案。本文就带大家了解一下数字孪生技术…...

Google 扫码器(仅限 Android)

Google 扫码器(仅限 Android) Google Code Scanner API 提供了全面的扫描解决方案,无需您的应用请求相机权限,同时保护用户隐私。这是通过将扫描代码委托给 Google Play 服务并仅将扫描结果返回给您的应用来完成的(视…...

pandoc word转markdown之后正则修改

问题 用pandoc工具将doc文件转换为markdown文件后,有关图片的处理会变成: (./url路径){width“3.46875in” height“1.0729166666666667in”} 但是我要展示到前端的,前端组件用的v-md-preview,结果展示的时候,后面的宽…...

使用Python和wxPython将图片转换为草图

导语: 将照片转换为艺术风格的草图是一种有趣的方式,可以为您的图像添加独特的效果。在本文中,我们将介绍如何使用Python编程语言和wxPython图形用户界面库来实现这一目标。我们将探讨如何使用OpenCV库将图像转换为草图,并使用wxPython创建一…...

深入浅出对话系统——闲聊对话系统进阶

引言 本文主要关注生成式闲聊对话系统的进阶技术。 基于Transformer的对话生成模型 本节主要介绍GPT系列文章,这是由OpenAI团队推出的,现在大火的ChatGPT也是它们推出的。 GPT : Improving Language Understanding by Generative Pre-Traini ng 在自…...

List与Set的区别

List与Set的区别 大家好,在我们平时的代码编写过程中,经常会碰到需要使用到集合类型: List与Set。很多时候,我们可能会将它们视为同一种类型进行使用,但是在实际的编程逻辑中,它们之间是存在很大差别的。接下来我们就…...

MyBatis 实战指南:探索灵活持久化的艺术

文章目录 前言一、初识 MyBatis1.1 什么是 MyBatis1.2 为什么学习 MyBatis 二、MyBatis 在软件开发框架中的定位三、基于 Spring Boot 创建 MyBatis 项目3.1 添加 MyBatis 框架的支持3.2 配置数据库连接信息和映射文件的保存路径(Mapper XML) 四、MyBati…...

高中教师能去美国做访问学者吗?

美国作为世界上高等教育水平较高的国家之一,吸引了众多学者前往交流学习。那么高中教师是否能够成为美国访问学者,这是当然的,高中老师是可以出国访学的,但是出国做访问学者会涉及到多方面的因素。 首先,教师个人的学术…...

93 | Python 设计模式 —— 建造者模式

文章目录 什么是建造者模式?建造者模式的四个角色Python建造者模式示例建造者模式的优点建造者模式的适用场景案例1:股票价格监控案例2:天气预报系统总结当构建复杂对象时,经常会遇到对象的创建过程非常复杂、包含多个步骤、或者有不同的配置选项。这时,使用建造者模式是一…...

nacos升级开启鉴权后,微服务无法连接的解决方案

版本: 软件版本号备注spring boot2.2.5.RELEASEspring-cloudHoxton.SR3spring-cloud-alibaba2.2.1.RELEASEnacos2.0.1从1.4.2版本进行升级。同时作为注册中心和配置中心 一、升级nacos版本,开启鉴权 1.在application.properties配置文件开启鉴权&…...

elementui弹窗页按钮重复提交问题解决

一、BUG场景 ruoyi平台&#xff0c;页面弹出窗有提交按钮&#xff0c;在提交时连续多次点击会发生重复提交。 二、错误方案 给按钮增加 :loading"submitLoading" 属性。 <el-dialog :title"title" :v-if"open" :visible.sync"open&…...

HBase-读流程

创建连接同写流程。 &#xff08;1&#xff09;读取本地缓存中的Meta表信息&#xff1b;&#xff08;第一次启动客户端为空&#xff09; &#xff08;2&#xff09;向ZK发起读取Meta表所在位置的请求&#xff1b; &#xff08;3&#xff09;ZK正常返回Meta表所在位置&#x…...

Matlab绘图 图例legend 太长,怎么减小指示线的长度

来源 绘图时&#xff0c;稍微减小文字已经不能正常放下图例&#xff0c;想通过调整图例指示线段长度缩减整个图例长度。 方法一 参考matlab官方论坛 leg legend(Plot1,Plot2,...); leg.ItemTokenSize [x1,x2]; By default x130 and x218 so put larger or smaller number…...

力扣17(电话号码中的字符组合)

题目表述 给定一个仅包含数字 2-9 的字符串&#xff0c;返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下&#xff08;与电话按键相同&#xff09;。注意 1 不对应任何字母。 示例1 输入&#xff1a;digits "23" 输出&#xff1…...

vue+element 下载压缩包和导出

export function goodsInspectionReportDwnloadZip (params) {return axios({url: "/warehouse-entry-server/v1/goodsInspectionReport/downloadZip",method: "get",params,responseType: "blob"}) } //下载handleDownloadFile() {if (!this.$r…...

构建Docker容器监控系统 (1)(Cadvisor +InfluxDB+Grafana)

目录 Cadvisor InfluxDBGrafana 1. Cadvisor 2.InfluxDB 3.Grafana 开始部署&#xff1a; 下载组件镜像 创建自定义网络 创建influxdb容器 创建数据库和数据库用户 创建Cadvisor 容器 准备测试镜像 创建granafa容器 访问granfana 添加数据源 Add data source 新建 …...

hive编译报错整理

背景 最近在修hive-1.2.0的一个bug&#xff0c;需要修改后重新打包部署到集群&#xff0c;打包的时候报下面的错误&#xff0c;原因很简单&#xff0c;从远程仓库里面已经拉不到这个包了。 org.pentaho:pentaho-aggdesigner-algorithm:jar:5.1.5-jhyde was not found in http…...

centos磁盘爆满可以清理mysql-bin.000011吗

mysql-bin.000011 是 MySQL 的二进制日志文件&#xff0c;用于记录数据库中的更改操作。删除该文件可能会导致数据库恢复、备份和复制等功能的中断或数据丢失。因此&#xff0c;在删除任何 MySQL 的二进制日志文件之前&#xff0c;请确保您了解其潜在影响并采取适当的备份措施。…...

SSM个人博客项目

文章目录 SSM个人博客系统实现项目介绍 一、准备工作0. 创建项目添加对应依赖1. 数据库设计2. 定时实体类 二、功能实现1.统一功能处理统一返回格式统一异常处理定义登录拦截器 2. 注册登录实现生成获取验证码密码加盐实现注册功能登录功能注销功能 3.登录用户博客列表获取登录…...

vue插槽是什么?如何使用?

1、意义 插槽是vue提供的一个内置组件&#xff0c;是一个占位符。作用是可以向组件中传递一段html代码&#xff0c;加强了组件封装性以及复用性。 2、分类 插槽通常分为匿名插槽、具名插槽、作用域插槽 匿名插槽&#xff1a; 顾名思义就是没有名字的插槽&#xff0c;我们通…...

yum常用操作命令

目录 查询命令 查看当前所有仓库 检查可升级的程序 安装、卸载、升级 清除缓存命令 生成缓存 查询命令 列出已安装的软件包&#xff1a;yum list installed列出仓库中还未安装的软件包&#xff1a;yum list available列出指定软件包的依赖关系&#xff1a;yum deplist &…...

.Net C# 免费PDF合成软件

最近用到pdf合成&#xff0c;发现各种软件均收费啊&#xff0c;这个技术非常简单&#xff0c;别人写好的库一大把&#xff0c;这里用到了PDFsharp&#xff0c;项目地址Home of PDFsharp and MigraDoc Foundation 软件下载地址 https://download.csdn.net/download/g313105910…...

JAVA集合框架 一:Collection(LIst,Set)和Iterator(迭代器)

目录 一、Java 集合框架体系 1.Collection接口&#xff1a;用于存储一个一个的数据&#xff0c;也称单列数据集合&#xff08;single&#xff09;。 2.Map接口&#xff1a;用于存储具有映射关系“key-value对”的集合&#xff08;couple&#xff09; 3.Iterator接口&#…...

python ffmpeg合并ts文件

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家&#xff1a;点击跳转 当你从网站下载了一集动漫&#xff0c;然后发现是一堆ts文件&#xff0c;虽然可以打开&#xff0c;但是某个都是10秒左右&#xff0c;…...

c++map和set剖析

文章参考文献&#xff1a;cplusplus 博主&#xff1a;拖拉机厂第一代码手 gitee:拖拉机厂第一代码手 c专栏&#xff1a;C 目录 &#x1f9d9;&#x1f3fc;‍♂set剖析&#x1f9da;&#x1f3fc;set简介&#x1f9da;&#x1f3fc;set模板参数列表&#x1f9da;&#x1f3fc;s…...

kubernetes configmap 的data中的文件内容格式错乱

截取一段错乱的配置&#xff1a; kubectl -n monitoring get cm blackbox-exporter-configuration -o yaml apiVersion: v1 data:config.yml: "\"modules\":\n \"http_2xx\":\n \"http\":\n \"preferred_ip_protocol\"…...

A TupleBackedMap cannot be modified Mybatis分页,使用List<Map>接参,无法修改map的解决方案

问题描述 当使用Mybatis 进行Page分页&#xff0c;再使用Page< map >作为接受参数。此时尝试修改map则会报错。 报错为 java.lang.UnsupportedOperationException: A TupleBackedMap cannot be modified解决方案 使用新的数组&#xff0c;使用反射&#xff0c;构建工具…...

Leetcode-每日一题【剑指 Offer 13. 机器人的运动范围】

题目 地上有一个m行n列的方格&#xff0c;从坐标 [0,0] 到坐标 [m-1,n-1] 。一个机器人从坐标 [0, 0] 的格子开始移动&#xff0c;它每次可以向左、右、上、下移动一格&#xff08;不能移动到方格外&#xff09;&#xff0c;也不能进入行坐标和列坐标的数位之和大于k的格子。例…...

WEB集群——负载均衡集群

目录 一、 LVS-DR 群集。 1、LVS-DR工作原理 2、LVS-DR模式的特点 3、部署LVS-DR集群 3.1 配置负载调度器&#xff08;192.168.186.100&#xff09; 3.2 第一台web节点服务器&#xff08;192.168.186.103&#xff09; 3.3 第二台web节点服务器&#xff08;192.168.186.…...

wordpress采集工具/网络seo哈尔滨

第二种...

开发微信小程序需要多少钱/汉中网站seo

list接口方法 List接口是Collection接口的子接口 List集合类中元素有序(即添加顺序和去除新婚徐一致)、且可重复 List集合中每个元素都有其对应的顺序索引&#xff0c;及支持索引 List容器中的元素都对应一个整数型的序号记载其在容器中的位置&#xff0c;可以根据序号存取容…...

网站主办者冲突 请核实后再次报备/百度平台推广联系方式

操作系统&#xff1a;Windows 7虚拟机设置↓ 首先你需要将虚拟机安装好&#xff0c;使用虚拟机推荐配置自动安装就可以了。↓ 安装好后&#xff0c;在左侧我的计算机列表中选中刚刚安装好的虚拟机&#xff0c;点击右键选择设置。在虚拟机设置中将网络连接切换成桥接模式。* 在桥…...

公众号转wordpress/2022近期重大新闻事件10条

最近在github上下载了一些不错的开源项目&#xff0c;发现在Eclipse中通过Import导入不好使了&#xff0c;在网络上查了很多资料终于弄明白了。 这里以github上 的 Apollo播放器项目为例&#xff0c;介绍如何导入Android开源项目到Eclipse中。 Apollo播放器项目地址&#xff…...

为把网站建设更好/数据分析师培训

Linux命令名组成&#xff1a; 在Linux/Unix系统下输入命令&#xff0c;就会进行相应的操作&#xff0c;那么这个命令有如下组成&#xff1a; 命令名 【选项】 【参数】 注&#xff1a;【】的内容代表可选 命令实例&#xff1a; ls    #显示当前文件夹下的所有文件和文件夹 …...

wordpress comment_author_link/seo整站优化什么价格

.properties 配置文件大家应该都很熟悉&#xff0c;键值对嘛&#xff0c;.yml 配置文件栈长也是从 Spring Boot 开始了解到的。那么&#xff0c;这两种格式的配置文件到底有哪些区别呢&#xff1f;哪个更好&#xff1f;能不能替换代替&#xff1f;今天&#xff0c;栈长就来解开…...