Linux tcpdump抓包必备知识

@author: 放牛娃学编程
@moto: 分享与热爱,不是大爱我不说

@放牛娃每日一语: 除了你自己,没有人可以说你不行


别急着划开,这篇笔记一定能够给你带来收获
因为这里你能学到AI永远也给不了你的知识

Linux tcpdump抓包必备知识

文章目录

  • Linux tcpdump抓包必备知识
    • 一、这才是你该有的思维
    • 二、实战必备命令
      • 1. 查看文档命令(必须要懂的命令)
      • 2. 过滤指定网卡的数据包
      • 3. 过滤指定网卡指定IP的数据包
      • 4. 过滤指定网卡指定IP端口的数据包
      • 5. 过滤指定网卡指定IP端口的数据包,ip地址不要转成域名名称、时间正常显示年月日时分秒
      • 6. 过滤指定网卡指定IP端口的数据包并保存在文件
      • 7. 每隔一段时间输出到一定格式的文件,并指定文件大小
      • 8. 以 ASCII 格式显示数据包内容,并过滤指定内容
    • 三、总结

经常听到大佬说,那就抓包排查啊,Linux抓包?听着好高大上啊,其实一点都不高大上,就是一条命令的事情,下面教你成为别人眼中的大佬

一、这才是你该有的思维

​ 二话不多说,我们先测一下,如果下面命令你能不加思索的说出各个参数啥意思,那你不用继续往下看了,因为我相信你是超级牛人(哈哈哈,反正我是记不住)

tcpdump -i ens33 -tttt -nn -A -l dst host 172.19.88.100 and port 9898 | grep -C 30 'abc'

看不懂,别怕,因为这个压根不用你记住,掌握好下面说的思维,你一样可以写出上面看似高大上的命令

​ 之前的文章我就说过很多次这个思想,一个产品的诞生,它想要推广,必然就有配套的使用文档说明,如果没有它那怎么推广出去?而想要学习这个产品的唯一途径就是先看它的使用文档,只是很多人都都不习惯看官方文档罢了,殊不知这才是你学习新技术给你指导最权威的地方

  • 文档先行

    地址:https://www.tcpdump.org/manpages/tcpdump.1-4.9.2.html

    语法中expression地址:https://www.tcpdump.org/manpages/pcap-filter.7.html
    在这里插入图片描述

    官方文档对各个参数都做了详细的解释,完全不建议放牛娃们死记硬背,需要的时候直接查一下就可了

  • 我画的tcpdump语法简图(也是从官方文档学习的啦)
    在这里插入图片描述

  • 看官网给的例子
    在这里插入图片描述

二、实战必备命令

很多小伙伴问,tcpdump命令的官方文档,我访问不了,这是你不学习的理由么?访问不了我之前不是教过你其它命令么?实在不行你不会找我要离线的pdf文档啊

1. 查看文档命令(必须要懂的命令)

# 查看用法
tcpdump --help# 具体参数解释手册
man tcpdump# [expression]表达式手册 具体是否是pcap-filter,请查看man tcpdump 关于expression部分的描述
man pcap-filter

下面命令 网卡名称用ens33举例,ip用172.16.xx.xx举例,端口用9898举例

再提一遍,下面对应命令的参数,千万不要死记硬背,需要的时候快速查阅文档即可,如果你实在懒,那你就收藏这份文章,以后你一定会用的到

2. 过滤指定网卡的数据包

# 用-i参数指定网卡名称
tcpdump -i ens33# 如果不知道哪个网卡是开启的(UP状态),可以用如下命令查看
ip link show

3. 过滤指定网卡指定IP的数据包

# 过滤 目的IP、源IP可在host前面加对应的dir限定参数(看上图),比如dst、src
tcpdump -i ens33 host 172.16.xx.xx# 过滤指定网卡指定目的IP的数据包
tcpdump -i ens33 dst host 172.16.xx.xx

4. 过滤指定网卡指定IP端口的数据包

# 过滤指定网卡指定IP端口的数据包
tcpdump -i ens33 host 172.16.xx.xx and port 9898

5. 过滤指定网卡指定IP端口的数据包,ip地址不要转成域名名称、时间正常显示年月日时分秒

# -n 参数:不要将IP端口转成域名名称
# -tttt 参数:时间戳显示yyyy-mm-dd hh:mm:ss.SS 格式
tcpdump -i ens33 -nn -tttt host 172.16.xx.xx and port 9898

6. 过滤指定网卡指定IP端口的数据包并保存在文件

这个命令现场工程一定要学会,经常听到大佬说:让现场工程抓个包回来,你用这个命令,将对应参数改一下就可以了,这不又让你装了一会大佬(哈哈哈哈)

# 过滤指定网卡指定IP端口的数据包并保存在文件
tcpdump -i ens33 -w test.pcap host 172.16.xx.xx and port 9898# 可以用-C 参数指定写入抓包的文件大小(file_size的单位是百万字节(1,000,000字节,而不是1,048,576字节=1k,你可以差不多近似就1k),达到指定大小则写入另外一个文件,文件后缀编号从1开始
tcpdump -i ens33 -w test.pcap -C 10 host 172.16.xx.xx

7. 每隔一段时间输出到一定格式的文件,并指定文件大小

这里用每隔1分钟来举例:

# 用-G参数 来指定每隔一定时间转储到指定格式(strftime格式)的文件中,文件大小 10*1,000,000字节,(后面expression可以自行加,我这里没有加)
tcpdump -i ens33 -G 60 -w test-%M.pcap -C 10# %M参数需要满足strftime函数定义,含义如下:
%Y:四位数的年份(例如,2023)
%m:两位数的月份(例如,01 到 12)
%d:两位数的日期(例如,01 到 31)
%H:两位数的小时(24 小时制,00 到 23)
%M:两位数的分钟(00 到 59)
%S:两位数的秒(00 到 59

8. 以 ASCII 格式显示数据包内容,并过滤指定内容

这里的指定内容,用abc来举例

# 参数说明:
# -A: 以 ASCII 格式显示数据包内容
# -l: 设置行缓冲模式(使用 -l 选项可以将 tcpdump 的输出通过管道传输给其他命令,确保数据流实时处理。例如,你可以将 tcpdump 的输出传递给 grep 进行过滤)
tcpdump -i ens33 -A -l port 9898 | grep -C 30 'abc'

有了这8个命令+上面教你的思维方式,我相信其它高级的命令写法,你也能一网打尽。

重要的事情要重复说:上面命令没必要记,但是教你的思维一定要拥抱

三、总结

命令千千万,但只要你拥有我说的思维,你可以写出千千万命令给其它人记(这也是其它博文,复制来复制去的原因)

如果想要这份笔记的pdf文档及tcpdump官方文档pdf,请找放牛娃学编程

以往精彩火爆文章:=>
Linux 通过日志快速定位错误必掌握命令
Linux vi最少必备掌握命令

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

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

相关文章

Softing “Ethernet-APL现场交换机”亮相ACHEMA 2024

Softing工业在ACHEMA 2024上展示了新的“aplSwitch Field”。作为一个先进的16端口以太网高级物理层(Ethernet-APL)现场交换机,它配有可选的PROFIBUS Process Automation(PA)代理,适用于Zone 2环境&#xf…

JavaWeb系列二十: jQuery的DOM操作 下

jQuery的DOM操作 CSS-DOM操作多选框案例页面加载完毕触发方法作业布置jQuery获取选中复选框的值jQuery控制checkbox被选中jQuery控制(全选/全不选/反选)jQuery动态添加删除用户 CSS-DOM操作 获取和设置元素的样式属性: css()获取和设置元素透明度: opacity属性获取和设置元素高…

数字化营销与传统营销的完美协奏曲!

在这个数字化的时代,营销的世界正在发生着巨大的变革!数字化营销如火箭般崛起,但传统营销也并未过时。那么,如何让它们携手共进,创造出无与伦比的营销效果呢?今天,就让我们讲述一下蚓链数字化营…

拼多多面试总结

文章目录 一面自我介绍提问算法反问结果 二面提问算法反问结果 主管面主管面试准备算法题其他个人提问准备 提问数据库普通索引和覆盖索引的区别索引是什么?索引怎么加快数据库查询的?索引具体怎么实现的?以B树为例,节点放了什么&…

自动预约申购 i茅台工具完善

自动预约申购茅台工具 概述新的改变界面预览 概述 今天刷到一个windows自动刷茅台的工具,是用wpf实现的,看到作者最后是2023年更新的,评论中有好多人提出一些需求,刚才在学习wpf,就试着完善了一下。 工具下载&#x…

【C++】文件处理(IO流)

文章目录 C IO流1. C语言IO2. CIO2.1 C标准IO流2.2 C文件IO流2.3 C IO 文件常用函数总结表2.4 C stringstream C IO流 回顾一下,C语言中IO输入输出的 1. C语言IO C语言中常用的输入输出函数有如下几种:前者是格式化标准输入输出,后者是格式化…

windows和linux下清空Redis

前言 在本文中,我们将详尽阐述在Windows与Linux操作系统中有效清除Redis缓存的实践方法,旨在为您提供清晰、高效的指导流程,确保数据管理的灵活性与效率。 windows下推荐两款可视化工具 Another Redis Desktop Manager 这是我用的最多也是最…

数据库原理与安全复习笔记(未完待续)

1 概念 产生与发展:人工管理阶段 → \to → 文件系统阶段 → \to → 数据库系统阶段。 数据库系统特点:数据的管理者(DBMS);数据结构化;数据共享性高,冗余度低,易于扩充&#xff…

ROS话题通信流程自定义数据格式

ROS话题通信流程自定义数据格式 需求流程实现步骤定义msg文件编辑配置文件编译 在 ROS 通信协议中,数据载体是一个较为重要组成部分,ROS 中通过 std_msgs 封装了一些原生的数据类型,比如:String、Int32、Int64、Char、Bool、Empty… 但是,这些…

从移动切换到电信IP:详细介绍两种方法

在当前的互联网环境中,用户可能会因为各种原因需要切换网络服务提供商,比如从移动切换到电信。这种切换不仅涉及到网络服务的变更,还可能意味着IP地址的改变。那么,移动的怎么切换成电信的IP?下面一起来了解一下吧。 方…

测试内容初步认知

测试流程 了解需求--需求评审--编写测试用例--测试用例评审(产品、开发、测试)--提测测试--bug管理(devops)--集成--集成回归--发布灰度包测试(灰度周期一周)----编写测试报告--发布上线 测试岗位划分 功能测试 负责编写测试用例,执行手动测试,记录并…

麦肯锡:量子传感究竟在何处可以发光发热

量子传感技术已经提供价值,潜在的应用案例可以塑造多个行业。有四种核心技术具有应用前景:固态自旋、中性原子、超导电路和离子阱,它们具有在广泛的物理属性上的传感能力,包括磁场、电场、旋转、温度、重力、时间和压力。选择哪种…

Python自动化(6)——图像模块

本文所述的方法都是基于前几章的后台点击,因此同样需要绑定窗口句柄。 Python自动化(6)——图像模块 识色 定点比色 def cv2CompareColorOneMatch(self, x, y, hexColor, _similar0, borderNone):startX 0startY 0similar _similar self.colorOffsetif bord…

基于Java协同过滤算法的电影推荐系统设计和实现(源码+LW+调试文档+讲解等)

💗博主介绍:✌全网粉丝10W,CSDN作者、博客专家、全栈领域优质创作者,博客之星、平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌💗 🌟文末获取源码数据库🌟 感兴趣的可以先收藏起来,…

Kotlin 中的解构

解构声明是 Kotlin 语言的一个特性,它允许我们从一个数据结构中提取多个变量,这样可以让我们的代码更加简洁易读,同时也提高了代码的可维护性。 在 Kotlin 中,解构可以用于多种数据类型,例如,列表&#xf…

几何内核开发-实现自己的NURBS曲线生成API

我去年有一篇帖子,介绍了NURBS曲线生成与显示的实现代码。 https://blog.csdn.net/stonewu/article/details/133387469?spm1001.2014.3001.5501文章浏览阅读323次,点赞4次,收藏2次。搞3D几何内核算法研究,必须学习NURBS样条曲线…

动手学深度学习(Pytorch版)代码实践 -卷积神经网络-25使用块的网络VGG

25使用块的网络VGG import torch from torch import nn import liliPytorch as lp import matplotlib.pyplot as plt# 定义VGG块 # num_convs: 卷积层的数量 # in_channels: 输入通道的数量 # out_channels: 输出通道的数量 def vgg_block(num_convs, in_channels, out_channel…

基于Springboot + vue 的抗疫物质管理系统的设计与实现

目录 📚 前言 📑摘要 📑系统流程 📚 系统架构设计 📚 数据库设计 📚 系统功能的具体实现 💬 系统登录注册 系统登录 登录界面 用户添加 💬 抗疫列表展示模块 区域信息管理 …

Codeforces Round 954 (Div. 3) A B C D

A. X Axis time limit per test: 2 second memory limit per test: 256 megabytes input: standard input output: standard output You are given three points with integer coordinates x 1 x_1 x1​, x 2 x_2 x2​, and x 3 x_3 x3​ on the X X X axis ( 1 ≤ x i ≤ …

MyBatis 源码分析-- SQL请求执行流程( Mapper 接口方法的执行的过程)

前言 前面我们从源码层面梳理了 SqlSessionFactory、SqlSession 的创建过程及 Mapper 获取过程,本篇我们继续分析一下 Mapper 接口方法的执行的过程,也就是 SQL 的执行流程。 Mybatis 相关知识传送门 初识 MyBatis 【MyBatis 核心概念】 MyBatis 源码…