从零开始掌握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)在北京国家会议中心盛大开幕。 本届大会以“打造…...

Flask RESTful 示例
目录 1. 环境准备2. 安装依赖3. 修改main.py4. 运行应用5. API使用示例获取所有任务获取单个任务创建新任务更新任务删除任务 中文乱码问题: 下面创建一个简单的Flask RESTful API示例。首先,我们需要创建环境,安装必要的依赖,然后…...

大话软工笔记—需求分析概述
需求分析,就是要对需求调研收集到的资料信息逐个地进行拆分、研究,从大量的不确定“需求”中确定出哪些需求最终要转换为确定的“功能需求”。 需求分析的作用非常重要,后续设计的依据主要来自于需求分析的成果,包括: 项目的目的…...

基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容
基于 UniApp + WebSocket实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...

YSYX学习记录(八)
C语言,练习0: 先创建一个文件夹,我用的是物理机: 安装build-essential 练习1: 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件,随机修改或删除一部分,之后…...
服务器硬防的应用场景都有哪些?
服务器硬防是指一种通过硬件设备层面的安全措施来防御服务器系统受到网络攻击的方式,避免服务器受到各种恶意攻击和网络威胁,那么,服务器硬防通常都会应用在哪些场景当中呢? 硬防服务器中一般会配备入侵检测系统和预防系统&#x…...
第25节 Node.js 断言测试
Node.js的assert模块主要用于编写程序的单元测试时使用,通过断言可以提早发现和排查出错误。 稳定性: 5 - 锁定 这个模块可用于应用的单元测试,通过 require(assert) 可以使用这个模块。 assert.fail(actual, expected, message, operator) 使用参数…...

跨链模式:多链互操作架构与性能扩展方案
跨链模式:多链互操作架构与性能扩展方案 ——构建下一代区块链互联网的技术基石 一、跨链架构的核心范式演进 1. 分层协议栈:模块化解耦设计 现代跨链系统采用分层协议栈实现灵活扩展(H2Cross架构): 适配层…...
Spring Boot面试题精选汇总
🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉 📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息 文章目录 Spring Boot面试题精选汇总⚙️ **一、核心概…...
Android Bitmap治理全解析:从加载优化到泄漏防控的全生命周期管理
引言 Bitmap(位图)是Android应用内存占用的“头号杀手”。一张1080P(1920x1080)的图片以ARGB_8888格式加载时,内存占用高达8MB(192010804字节)。据统计,超过60%的应用OOM崩溃与Bitm…...
稳定币的深度剖析与展望
一、引言 在当今数字化浪潮席卷全球的时代,加密货币作为一种新兴的金融现象,正以前所未有的速度改变着我们对传统货币和金融体系的认知。然而,加密货币市场的高度波动性却成为了其广泛应用和普及的一大障碍。在这样的背景下,稳定…...