从零开始掌握tcpdump:参数详解
Linux tcpdump命令详解
1. 语法
tcpdump [-adeflnnNOpqStvxX] [-c <数据包数目>] [-dd] [-ddd] [-F <表达文件>] [-i <网络界面>] [-r <数据包文件>] [-s <数据包大小>] [-tt] [-T <数据包类型>] [-vv] [-w <数据包文件>] [输出数据单位]
2. 参数说明
-
-a 尝试将网络和广播地址转换成名称。
- 示例:
将捕获到的tcpdump -a -i eth0
eth0
接口的网络和广播地址转换为名称显示。
- 示例:
-
-c <数据包数目> 收到指定的数据包数目后,就停止进行倾倒操作。
- 示例:
捕获10个tcpdump -c 10 -i eth0
eth0
接口上的数据包后停止。
- 示例:
-
-d 把编译过的过滤包编译转换成可读的格式,并倾倒到标准输出。
- 示例:
显示编译过的过滤表达式。tcpdump -d -i eth0
- 示例:
-
-dd 把编译过的过滤包编译转换成C语言的格式,并倾倒到标准输出。
- 示例:
以C语言格式显示编译过的过滤表达式。tcpdump -dd -i eth0
- 示例:
-
-ddd 把编译过的过滤包编译转换成十进制数字的格式,并倾倒到标准输出。
- 示例:
以十进制格式显示编译过的过滤表达式。tcpdump -ddd -i eth0
- 示例:
-
-e 在每列倾倒的资料上显示连线层级的文件头。
- 示例:
显示tcpdump -e -i eth0
eth0
接口上的数据包的以太网头部信息。
- 示例:
-
-f 用数字显示网际网路地址。
- 示例:
用数字格式显示IP地址。tcpdump -f -i eth0
- 示例:
-
-F <表达文件> 指定内容表达方式的文件。
- 示例:
使用tcpdump -F filter.txt -i eth0
filter.txt
中的表达方式过滤eth0
接口上的数据包。
- 示例:
-
-i <网络界面> 使用指定的网络接口送出数据包。
- 示例:
捕获tcpdump -i eth0
eth0
接口上的数据包。
- 示例:
-
-l 使用标准输出的缓冲区。
- 示例:
将输出行缓冲。tcpdump -l -i eth0
- 示例:
-
-n 不把主机的网络地址转换成名称。
- 示例:
不转换主机名。tcpdump -n -i eth0
- 示例:
-
-N 不列出域名。
- 示例:
不解析主机名的域名部分。tcpdump -N -i eth0
- 示例:
-
-O 不将数据包编码器最佳化。
- 示例:
禁用优化。tcpdump -O -i eth0
- 示例:
-
-p 不让网络界面进入混杂模式。
- 示例:
使tcpdump -p -i eth0
eth0
接口不进入混杂模式。
- 示例:
-
-q 快速输出,仅列出少数的传输协议信息。
- 示例:
简单快速输出数据包的信息。tcpdump -q -i eth0
- 示例:
-
-r <数据包文件> 从指定的文件读取数据包数据。
- 示例:
从tcpdump -r file.pcap
file.pcap
文件读取数据包。
- 示例:
-
-s <数据包大小> 设置每个数据包的大小。
- 示例:
捕获tcpdump -s 1024 -i eth0
eth0
接口上前1024字节的数据包。
- 示例:
-
-S 用绝对而非相对数值列出TCP序列号。
- 示例:
以绝对序列号显示TCP序列号。tcpdump -S -i eth0
- 示例:
-
-t 在每列倾倒资料上不要显示时间戳记。
- 示例:
不显示时间戳。tcpdump -t -i eth0
- 示例:
-
-tt 在每列倾倒资料上显示未经过格式化的时间戳记。
- 示例:
显示未经格式化的时间戳。tcpdump -tt -i eth0
- 示例:
-
-T <数据包类型> 强制将表达方式所指的类型的数据信息转换成该数据包类型。
- 示例:
将捕获的tcpdump -T rpc -i eth0
eth0
接口上的数据包解释为RPC数据包。
- 示例:
-
-v 详细显示指令执行过程。
- 示例:
详细显示捕获数据包的信息。tcpdump -v -i eth0
- 示例:
-
-vv 更详细显示指令执行过程。
- 示例:
更详细地显示数据包信息。tcpdump -vv -i eth0
- 示例:
-
-x 用十六进制字码列出数据包资料。
- 示例:
以十六进制格式显示tcpdump -x -i eth0
eth0
接口上的数据包内容。
- 示例:
-
-X 用十六进制和ASCII码列出数据包资料。
- 示例:
以十六进制和ASCII码显示tcpdump -X -i eth0
eth0
接口上的数据包内容。
- 示例:
-
-w <数据包文件> 把数据包资料写入到指定的文件。
- 示例:
将捕获的tcpdump -w file.pcap -i eth0
eth0
接口上的数据包写入file.pcap
文件。
- 示例:
3. 使用tcpdump的详细抓包示例
捕获eth0
接口上TCP协议的HTTP请求,并保存到文件http_requests.pcap
中。
-
运行tcpdump命令
tcpdump -i eth0 'tcp port 80' -w http_requests.pcap
- 命令解释:
-i eth0
:指定网络接口eth0
。'tcp port 80'
:过滤条件,捕获TCP协议的80端口数据包(HTTP请求)。-w http_requests.pcap
:将捕获的数据包保存到文件http_requests.pcap
中。
- 命令解释:
-
查看保存的数据包
tcpdump -r http_requests.pcap
reading from file http_requests.pcap, link-type EN10MB (Ethernet) 10:00:00.000000 IP 192.168.1.2.54321 > 192.168.1.1.http: Flags [S], seq 0, win 65535, options [mss 1460,sackOK,TS val 123456 ecr 0,nop,wscale 7], length 0 10:00:01.000000 IP 192.168.1.1.http > 192.168.1.2.54321: Flags [S.], seq 0, ack 1, win 65535, options [mss 1460,sackOK,TS val 123457 ecr 123456,nop,wscale 7], length 0 10:00:02.000000 IP 192.168.1.2.54321 > 192.168.1.1.http: Flags [.], ack 1, win 65535, options [nop,nop,TS val 123458 ecr 123457], length 0
相关文章:

从零开始掌握tcpdump:参数详解
Linux tcpdump命令详解 1. 语法 tcpdump [-adeflnnNOpqStvxX] [-c <数据包数目>] [-dd] [-ddd] [-F <表达文件>] [-i <网络界面>] [-r <数据包文件>] [-s <数据包大小>] [-tt] [-T <数据包类型>] [-vv] [-w <数据包文件>] [输出数…...

漏洞挖掘 | edusrc记一次某中学小程序渗透测试
一、搜集渗透目标 现在的EDU挖web端的上分效率远不如小程序,因此这篇文章浅浅记录一次小程序的挖掘吧。如果各位大牛想要快速出洞,不妨跳过大学,学院等小程序,而重点关注小学、中学、幼儿园等,这些小程序的出洞率还是…...

vulhub:nginx解析漏洞CVE-2013-4547
此漏洞为文件名逻辑漏洞,该漏洞在上传图片时,修改其16进制编码可使其绕过策略,导致解析为 php。当Nginx 得到一个用户请求时,首先对 url 进行解析,进行正则匹配,如果匹配到以.php后缀结尾的文件名ÿ…...
备战秋招:2024游戏开发入行与跳槽面试详解
注意:以下为本次分享概要,视频版内容更全面深入,详见文末 1.游戏开发领域秋招准备与面试技巧 本次分享由优梦创客机构的创始人雷蒙德主讲,专注于2024年秋招期间游戏开发领域的入行与跳槽面试准备。本次分享重点在于提供面试技巧…...

红外热成像手持终端:从建筑检测到野外搜救的全方位应用
红外热成像手持终端,凭借其独特的红外探测与夜视功能,广泛应用于多个关键领域。无论是军事侦察、消防救援中的夜间作业,还是电力巡检、野生动物观察等多样场景,其精准的红外热成像技术均能提供至关重要的实时数据,助力…...

day07 项目启动以及git
spring框架 spring 负责整合各种框架,把new对象的部分交给spring去做,对象new不出来,项目就启动不起来,这样可以有效保证所需要的对象都在容器中存在,后续的部分都可以顺利执行控制反转:业务对象创建依赖资…...

学会网络安全:开启广阔职业与责任之旅
在数字化时代,网络安全已成为社会经济发展的重要基石。随着互联网的普及和技术的飞速发展,网络安全威胁日益复杂多变,对国家安全、社会稳定以及个人隐私构成了严峻挑战。因此,掌握网络安全技能不仅意味着拥有了一项高价值的职业技…...
UE5 镜头
只狼镜头 Spring Arm 中 开启 Use Pawn Control Rotation:让镜头跟着鼠标移动BP_Character(Self) 中关闭 Use Controller Rotation Yaw:不要让人物和鼠标移动Character Movement 的 Rotation Setting 中 关闭 Use Controller Desired Rotationÿ…...
SpringBoot如何实现简单的跨域配置
在SpringBoot中实现简单的跨域配置,主要通过全局CORS配置来完成。这通常涉及到实现WebMvcConfigurer接口并覆盖addCorsMappings方法。以下是一个简单的示例,展示了如何在SpringBoot应用中配置CORS策略以允许跨域请求。 首先,需要创建一个配置…...
vue列表进入详情页实现上一篇下一篇功能
概述:需求就是需要可以看列表,然后点击列表的右侧详情看详情,通过详情来实现新增上一份,下一份按钮来实现直接看之后的详情。 网上的解决方法有很多 1.后台获取将全量的id,前台再去直接取下一个id方式。(…...
kalman的python实现
前面的kalman都是matlab的,这里在理解的基础上,尝试使用python实现,力求理解更多的内涵。 需要的包 import numpy as np import matplotlib.pyplot as plt 代码 KF algorith demo by Leo 2020.01.06 ZJG CAMPUS,ZJU import numpy as np…...

查找算法:线性查找,golang实现
目录 前言 线性查找 代码示例 1. 算法包 2. 线性查找代码 3. 模拟程序 4. 运行程序 循环次数 假如目标值正好在数组中的第一位 假如目标值正好在数组中的第五位 假如目标值正好在数组中的最后一位 假如目标值不在数组中 线性查找的思想 1. 顺序遍历 2. 比较 3.…...

【图像识别】十大数据集合集!
本文将为您介绍10个经典、热门的数据集,希望对您在选择适合的数据集时有所帮助。 1 DanishFungi2020 发布方: Google 发布时间: 2021 简介: 补充材料:丹麦真菌 2020 - 不仅仅是另一个图像识别数据集为了支持细粒度植…...

C++ | Leetcode C++题解之第312题戳气球
题目: 题解: class Solution { public:int maxCoins(vector<int>& nums) {int n nums.size();vector<vector<int>> rec(n 2, vector<int>(n 2));vector<int> val(n 2);val[0] val[n 1] 1;for (int i 1; i &l…...

SSM学习11:springboot基础
教学视频 黑马程序员SpringBoot3Vue3全套视频教程,springbootvue企业级全栈开发从基础、实战到面试一套通关 springboot基础 搭建项目 修改配置文件 修改application.yml(后缀名不对,可以改成这个),配置数据库 spr…...

【前端 18】安装Node.js
Node.js 安装指南 在今天的博客中,我们将一起探讨如何在您的计算机上安装Node.js。Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,它允许你在服务器端运行 JavaScript 代码。无论您是前端开发者希望探索全栈开发,还是后端开发者寻…...

C#/Winform入门、进阶、强化、扩展、知识体系完善等知识点学习、性能优化、源码分析专栏分享
场景 作为一名C#的Winform开发者,势必经历过从入门到自学、从基础到进阶、从学习到强化的过程。 当经历过几年企业级开发的磨炼,再回头看之前的开发过程、成长阶段发现确实是走了好多的弯路。 作为一名终身学习的信奉者,秉承Java体系需持续…...

springboot的表现层/控制层controller开发
第一步:新建文件和注入业务层对象 需要使用的注解: 第一个声明是restful风格开发 第二个是需要设置网页访问路径 RestController RequestMapping("/fuels")//http://localhost/fuels注入服务层对象: Autowiredprivate FuelServ…...
前端使用html2canvas在页面截图并导出,以及截图中含有图片时的跨域问题解决
1.引入html2canvas npm 安装或cdn引入 npm install html2canvas <script src"https://cdnjs.cloudflare.com/ajax/libs/html2canvas/1.4.1/html2canvas.min.js"></script> 2.使用 html2canvas // 假设你有一个 id 为 "capture" 的元素 h…...
道可云元宇宙每日资讯|第十二届互联网安全大会在北京开幕
道可云元宇宙每日简报(2024年8月2日)讯,今日元宇宙新鲜事有: 第十二届互联网安全大会在北京开幕 7月31日,第十二届互联网安全大会(ISC.AI 2024)在北京国家会议中心盛大开幕。 本届大会以“打造…...

相机从app启动流程
一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...
基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解
JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用,结合SQLite数据库实现联系人管理功能,并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能,同时可以最小化到系统…...

AI病理诊断七剑下天山,医疗未来触手可及
一、病理诊断困局:刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断",医生需通过显微镜观察组织切片,在细胞迷宫中捕捉癌变信号。某省病理质控报告显示,基层医院误诊率达12%-15%,专家会诊…...

打手机检测算法AI智能分析网关V4守护公共/工业/医疗等多场景安全应用
一、方案背景 在现代生产与生活场景中,如工厂高危作业区、医院手术室、公共场景等,人员违规打手机的行为潜藏着巨大风险。传统依靠人工巡查的监管方式,存在效率低、覆盖面不足、判断主观性强等问题,难以满足对人员打手机行为精…...
在golang中如何将已安装的依赖降级处理,比如:将 go-ansible/v2@v2.2.0 更换为 go-ansible/@v1.1.7
在 Go 项目中降级 go-ansible 从 v2.2.0 到 v1.1.7 具体步骤: 第一步: 修改 go.mod 文件 // 原 v2 版本声明 require github.com/apenella/go-ansible/v2 v2.2.0 替换为: // 改为 v…...

基于单片机的宠物屋智能系统设计与实现(论文+源码)
本设计基于单片机的宠物屋智能系统核心是实现对宠物生活环境及状态的智能管理。系统以单片机为中枢,连接红外测温传感器,可实时精准捕捉宠物体温变化,以便及时发现健康异常;水位检测传感器时刻监测饮用水余量,防止宠物…...
flow_controllers
关键点: 流控制器类型: 同步(Sync):发布操作会阻塞,直到数据被确认发送。异步(Async):发布操作非阻塞,数据发送由后台线程处理。纯同步(PureSync…...

Python环境安装与虚拟环境配置详解
本文档旨在为Python开发者提供一站式的环境安装与虚拟环境配置指南,适用于Windows、macOS和Linux系统。无论你是初学者还是有经验的开发者,都能在此找到适合自己的环境搭建方法和常见问题的解决方案。 快速开始 一分钟快速安装与虚拟环境配置 # macOS/…...
CppCon 2015 学习:REFLECTION TECHNIQUES IN C++
关于 Reflection(反射) 这个概念,总结一下: Reflection(反射)是什么? 反射是对类型的自我检查能力(Introspection) 可以查看类的成员变量、成员函数等信息。反射允许枚…...
STL 2迭代器
文章目录 1.迭代器2.输入迭代器3.输出迭代器1.插入迭代器 4.前向迭代器5.双向迭代器6.随机访问迭代器7.不同容器返回的迭代器类型1.输入 / 输出迭代器2.前向迭代器3.双向迭代器4.随机访问迭代器5.特殊迭代器适配器6.为什么 unordered_set 只提供前向迭代器? 1.迭代器…...