Wireshark抓包工具使用 项目实战

在这里插入图片描述

Wireshark 是一个开源的网络协议分析器,它可以让你捕获和分析网络数据包,帮助你诊断网络问题、监控网络流量、分析协议和进行安全审计。以下是一些基本的 Wireshark 用法:

  1. 捕获数据包

    • 打开 Wireshark,选择要捕获数据包的网络接口。
    • 点击“开始”按钮开始捕获数据包。
  2. 过滤数据包

    • 在 Wireshark 捕获数据包的界面上,使用过滤器来筛选你感兴趣的数据包。例如,你可以过滤出特定的 IP 地址、端口号、协议等。
  3. 分析数据包

    • 查看捕获到的数据包列表,你可以看到每个数据包的详细信息,如源地址、目标地址、协议类型、数据长度等。
    • 选择某个数据包,你可以查看其更详细的信息,包括数据包的原始内容、各个协议的字段、时间线等。
  4. 统计功能

    • Wireshark 提供了各种统计功能,如协议分析、流量分析、会话分析等,帮助你了解网络流量的特征和趋势。
  5. 导出数据包

    • 你可以将捕获到的数据包导出到文件中,以供后续分析或备份。
  6. 应用过滤器

    • Wireshark 支持多种过滤器语法,你可以使用表达式来过滤出符合条件的数据包,以便更有效地分析网络流量。
  7. 颜色规则

    • Wireshark 可以根据预定义的颜色规则对数据包进行着色,帮助你快速识别不同类型的数据包。
  8. 统一分析平台

    • Wireshark 不仅仅是一个捕获和分析网络数据包的工具,它还是一个强大的平台,支持各种插件和扩展,可以满足不同用户的需求。

以上是 Wireshark 的基本用法,它可以帮助你深入了解网络通信,并解决各种与网络相关的问题。

在这里插入图片描述

界面 重点

1、过滤器
2、数据包列表
3、数据包详细信息

过滤器表达式的规则

Wireshark过滤器表达式是一种强大的工具,用于在捕获和分析网络数据包时过滤特定的流量。以下是Wireshark过滤器表达式的规则:

  1. 基本语法:
    过滤器表达式由一个或多个条件组成,这些条件可以是字段名、比较运算符和值。条件之间可以使用逻辑运算符(如andornot)组合。

例如:

ip.addr == 192.168.1.1 and tcp.port == 80
  1. 字段名:
    Wireshark支持许多预定义的字段名,用于表示数据包的不同部分。例如:
  • ip.addr:表示IP地址
  • ip.src:表示源IP地址
  • ip.dst:表示目标IP地址
  • tcp.port:表示TCP端口
  • udp.port:表示UDP端口
  • http.request.method:表示HTTP请求方法
  1. 比较运算符:
    Wireshark支持以下比较运算符:
  • ==:等于
  • !=:不等于
  • <:小于
  • <=:小于等于
  • >:大于
  • >=:大于等于
  • contains:包含(适用于字符串)
  • matches:匹配(适用于正则表达式)

例如:

tcp.port >= 1024
http.request.method == "GET"
  1. 逻辑运算符:
    Wireshark支持以下逻辑运算符:
  • and:逻辑与
  • or:逻辑或
  • not:逻辑非

例如:

ip.src == 192.168.1.1 and not tcp.port == 22
  1. 使用括号:
    为了确保正确的运算顺序,可以使用括号来分组条件。

例如:

(ip.src == 192.168.1.1 or ip.src == 192.168.1.2) and tcp.port == 80
  1. 使用范围:
    可以使用范围运算符([])来匹配一系列值。

例如:

tcp.port in {80, 443}
  1. 使用通配符:
    可以使用通配符(*)来匹配字符串中的任意字符。

例如:

http.request.uri contains "*.jpg"
  1. 使用正则表达式:
    可以使用matches运算符来匹配正则表达式。

例如:

http.request.uri matches ".*\.(jpg|png)$"

熟练掌握Wireshark过滤器表达式的规则,可以帮助您更有效地捕获和分析网络流量。在实际应用中,可以根据需要组合使用这些规则来构建复杂的过滤条件。

数据包列表

数据包详细信息 示例1:传输层

在这里插入图片描述

数据包详细信息 示例2: TCP三次握手

在这里插入图片描述

TCP三次握手是TCP协议用于建立连接的过程,通过三次交互来确认双方的发送能力和接收能力,确保连接的可靠性。以下是TCP三次握手的详细过程:

TCP三次握手过程

  • 第一次握手:客户端发送一个SYN包(同步序列编号)到服务器,并进入SYN_SENT状态,等待服务器确认。
  • 第二次握手:服务器收到SYN包后,发送一个SYN+ACK包(同步确认)给客户端,确认客户端的SYN,并进入SYN_RCVD状态。
  • 第三次握手:客户端收到服务器的SYN+ACK包后,发送一个ACK包(确认)给服务器,确认服务器的SYN,此时客户端和服务器都进入ESTABLISHED状态,完成连接建立。

TCP三次握手的作用

  • 确保连接的可靠性:通过三次握手,双方可以确认彼此的发送和接收能力,避免历史连接或错误连接的建立。
  • 防止数据丢失或重复发送:三次握手的过程确保了连接的正确建立,有助于数据的可靠传输。
  • 同步连接双方的序列号和确认号:在握手过程中,双方交换序列号和确认号,为后续的数据传输做准备。

通过以上分析,我们可以看到TCP三次握手不仅是建立连接的关键步骤,也是确保网络通信可靠性的重要机制。

项目实战1:

参考:https://blog.csdn.net/zzwwhhpp/article/details/113077747
https://mp.weixin.qq.com/s?__biz=MjM5MTQ0MTQ2Mg==&mid=2650946821&idx=2&sn=25661a3bc7ad648bc7f244a577caa1d1&chksm=bc3435ebdac012dcd1521256bbb11785876ed4175c55153c8a621a693b042737f54f0a60628a#rd

相关推荐

  1. 好用的的工具Wireshark、whistle

    2024-06-06 11:56:04       49 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-06 11:56:04       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-06 11:56:04       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-06 11:56:04       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-06 11:56:04       18 阅读

热门阅读

  1. 固定数量点云采样算法

    2024-06-06 11:56:04       8 阅读
  2. 自然语言处理(NLP)中的迁移学习

    2024-06-06 11:56:04       8 阅读
  3. 只需三步,使用 KRaft 建立多节点 Kafka 集群

    2024-06-06 11:56:04       12 阅读
  4. vue进阶

    2024-06-06 11:56:04       8 阅读
  5. Github 2024-06-02 开源项目日报Top10

    2024-06-06 11:56:04       10 阅读
  6. mac设置截屏的默认保存位置

    2024-06-06 11:56:04       10 阅读