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

TCPDump协议分析工具

TCPDump协议分析工具

TCPDump是一个强大的命令行工具,用于捕获和分析网络数据包。它能够实时监控和记录网络流量,帮助网络管理员和安全专家排查网络问题、分析流量和检测网络攻击。以下是TCPDump的详细介绍,包括其安装、基本使用、过滤规则和常见示例。

一、TCPDump的安装

  1. 在Debian/Ubuntu上安装

    sudo apt update
    sudo apt install tcpdump
    
  2. 在CentOS/RHEL上安装

    sudo yum install tcpdump
    
  3. 在macOS上安装(通过Homebrew)

    brew install tcpdump
    

二、TCPDump的基本使用

  1. 捕获网络数据包

    sudo tcpdump
    
  2. 指定网络接口

    sudo tcpdump -i eth0
    
  3. 捕获并保存数据包到文件

    sudo tcpdump -i eth0 -w capture.pcap
    
  4. 从文件读取数据包

    sudo tcpdump -r capture.pcap
    

三、TCPDump过滤规则

TCPDump使用表达式过滤网络流量,只捕获与条件匹配的数据包。过滤规则可以基于协议、IP地址、端口等。

  1. 过滤特定主机

    sudo tcpdump host 192.168.1.1
    
  2. 过滤特定网络

    sudo tcpdump net 192.168.1.0/24
    
  3. 过滤特定端口

    sudo tcpdump port 80
    
  4. 过滤特定协议

    sudo tcpdump tcp
    sudo tcpdump udp
    sudo tcpdump icmp
    
  5. 组合过滤条件

    sudo tcpdump 'src 192.168.1.1 and dst port 80'
    sudo tcpdump 'tcp and (port 80 or port 443)'
    

四、TCPDump常见示例

  1. 捕获所有HTTP流量

    sudo tcpdump -i eth0 'tcp port 80'
    
  2. 捕获所有HTTPS流量

    sudo tcpdump -i eth0 'tcp port 443'
    
  3. 捕获所有ICMP流量

    sudo tcpdump -i eth0 icmp
    
  4. 捕获来自特定IP地址的流量

    sudo tcpdump -i eth0 src 192.168.1.100
    
  5. 捕获发往特定IP地址的流量

    sudo tcpdump -i eth0 dst 192.168.1.100
    
  6. 捕获并解析DNS查询

    sudo tcpdump -i eth0 -n udp port 53
    
  7. 显示数据包的详细信息

    sudo tcpdump -i eth0 -vv
    
  8. 显示数据包的十六进制和ASCII形式

    sudo tcpdump -i eth0 -X
    

五、TCPDump高级用法

  1. 限制捕获数据包的数量

    sudo tcpdump -i eth0 -c 10
    
  2. 指定捕获的数据包大小

    sudo tcpdump -i eth0 -s 0
    
  3. 捕获数据包并添加时间戳

    sudo tcpdump -i eth0 -tttt
    
  4. 捕获数据包并只显示头部信息

    sudo tcpdump -i eth0 -q
    
  5. 基于数据包内容进行过滤

    sudo tcpdump -i eth0 'tcp[13] == 0x02'
    

六、TCPDump分析实例

  1. 分析HTTP GET请求

    • 命令
      sudo tcpdump -i eth0 -A -s 0 'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'
      
    • 解释:捕获并显示所有HTTP GET请求的数据包内容。
  2. 分析SYN扫描

    • 命令
      sudo tcpdump -i eth0 'tcp[tcpflags] & (tcp-syn) != 0 and tcp[tcpflags] & (tcp-ack) == 0'
      
    • 解释:捕获并显示所有TCP SYN扫描的数据包。
  3. 分析DNS查询和响应

    • 命令
      sudo tcpdump -i eth0 -nn -vvv 'udp port 53'
      
    • 解释:捕获并详细显示所有DNS查询和响应的数据包。

七、TCPDump常用选项

  • -i:指定网络接口。
  • -w:将捕获的数据包写入文件。
  • -r:从文件读取数据包。
  • -s:指定捕获的数据包大小。
  • -c:限制捕获的数据包数量。
  • -v:详细输出。
  • -vv:更详细的输出。
  • -vvv:最详细的输出。
  • -X:以十六进制和ASCII形式显示数据包内容。
  • -A:以ASCII形式显示数据包内容。
  • -tttt:显示带有日期和时间戳的数据包。

总结

TCPDump是一个功能强大且灵活的网络协议分析工具,广泛应用于网络故障排查、流量分析和安全监控。通过掌握TCPDump的基本使用、过滤规则和高级用法,网络管理员和安全专家可以有效地捕获和分析网络流量,检测和响应各种网络问题和安全威胁。

相关文章:

TCPDump协议分析工具

TCPDump协议分析工具 TCPDump是一个强大的命令行工具&#xff0c;用于捕获和分析网络数据包。它能够实时监控和记录网络流量&#xff0c;帮助网络管理员和安全专家排查网络问题、分析流量和检测网络攻击。以下是TCPDump的详细介绍&#xff0c;包括其安装、基本使用、过滤规则和…...

土壤分析仪:解密土壤之奥秘的科技先锋

在农业生产和生态保护的道路上&#xff0c;土壤的质量与状况一直是我们关注的焦点。土壤分析仪&#xff0c;作为现代科技在农业和环保领域的杰出代表&#xff0c;以其高效、精准的分析能力&#xff0c;为我们揭示了土壤的奥秘&#xff0c;为农业生产提供了科学指导&#xff0c;…...

计算1的数量

1. 计算1的数量 题目ID&#xff1a;9809必做题100分 最新提交&#xff1a; Accepted 100 分 历史最高&#xff1a; Accepted 100 分 时间限制: 1000ms 空间限制: 524288kB 题目描述 给定一个n*m的二进制矩阵&#xff0c;请你数一数矩阵中完全被0上下左右包围的1的数…...

Linux udp编程

我最近开了几个专栏&#xff0c;诚信互三&#xff01; > |||《算法专栏》&#xff1a;&#xff1a;刷题教程来自网站《代码随想录》。||| > |||《C专栏》&#xff1a;&#xff1a;记录我学习C的经历&#xff0c;看完你一定会有收获。||| > |||《Linux专栏》&#xff1…...

【开源项目】Rust开发复制文件夹目录结构工具

说明 由于我经常需要在多个大容量的移动硬盘中查找和新增文件&#xff0c;我希望把硬盘的目录结构放到服务器的自建网盘中&#xff0c;因此开发了这个工具&#xff0c;使得在不同硬盘之间的文件管理变得更加便捷 项目地址&#xff1a;https://github.com/VinciYan/folder_clon…...

PostgreSQL的pg_dirtyread工具

PostgreSQL的pg_dirtyread工具 pg_dirtyread 是一个第三方PostgreSQL扩展&#xff0c;它允许用户读取数据库文件中的“脏”数据&#xff0c;即那些被标记为删除或不再可见的数据。这个扩展对于数据恢复和调试非常有用&#xff0c;尤其是在需要恢复被删除或更新前的数据时。 以…...

苹果梦碎:Vision Pro的辉煌与失落,苹果已决定暂停 Vision Pro 后续产品的研发工作

本文首发于公众号“AntDream”&#xff0c;欢迎微信搜索“AntDream”或扫描文章底部二维码关注&#xff0c;和我一起每天进步一点点 苹果Vision Pro&#xff1a;科技巨头的跌宕起伏 在科技的海洋中&#xff0c;苹果公司一直以其创新精神和卓越品质引领潮流。然而&#xff0c;即…...

推荐一款uniapp拖动验证码插件

插件地址&#xff1a;易盾验证码 - DCloud 插件市场 具体使用方式访问插件地址自行获取...

十年期国债收益率

十年期国债收益率是指政府发行的、期限为十年的国债的年化收益率。它被广泛视为一个国家经济健康状况和未来经济前景的重要指标&#xff0c;同时也是金融市场中的一个重要基准利率。 下面我将详细解释十年期国债收益率的相关内容及其意义。 十年期国债收益率的意义 经济健康的…...

使用Go编写的持续下行测速脚本,快速消耗流量且不伤硬盘

GoSpeed 声明 此工具仅用于测试与学习,请勿用于非法用途,如使用此程序请确保所有下载的内容都拥有合法的使用权或分发权&#xff0c;避免侵犯版权、恶意访问 此工具仅用于测试与学习,请勿用于非法用途,如使用此程序请确保所有下载的内容都拥有合法的使用权或分发权&#xff0c…...

保护国外使用代理IP的安全方法

为了保护在国外使用代理IP的安全&#xff0c;用户可以采取以下方法&#xff1a; 1. 选择可信的代理服务器 在选择代理服务器时&#xff0c;用户应该选择那些经过验证和信任的服务器&#xff0c;如知名的VPN服务提供商。这些服务器通常具有更高的安全性和隐私保护措施。 2. 使用…...

18集 学习ESP32的ESP-DL深度学习教程-《MCU嵌入式AI开发笔记》

18集 学习ESP32的ESP-DL深度学习教程-《MCU嵌入式AI开发笔记》 参考文档&#xff1a;https://docs.espressif.com/projects/esp-dl/zh_CN/latest/esp32/tutorials/index.html 使用TVM自动生成模型部署项目 本案例介绍了使用 TVM 部署模型的完整流程。 该项目基于 TVM v0.14…...

jmeter-beanshell学习9-放弃beanshell

写这篇时候道心不稳了&#xff0c;前面写了好几篇benashell元件&#xff0c;突然发现应该放弃。想回去改前面的文章&#xff0c;看了看无从下手&#xff0c;反正已经这样了&#xff0c;我淋了雨&#xff0c;那就希望别人也没有伞吧&#xff0c;哈哈哈哈&#xff0c;放在第九篇送…...

Web 性能入门指南-1.5 创建 Web 性能优化文化的最佳实践

最成功的网站都有什么共同点&#xff1f;那就是他们都有很强的网站性能和可用性文化。以下是一些经过验证的有效技巧和最佳实践&#xff0c;可帮助您建立健康、快乐、值得庆祝的性能文化。 创建强大的性能优化文化意味着在你的公司或团队中创建一个如下所示的反馈循环&#xff…...

【Android】Service介绍和生命周期

人不走空 &#x1f308;个人主页&#xff1a;人不走空 &#x1f496;系列专栏&#xff1a;算法专题 ⏰诗词歌赋&#xff1a;斯是陋室&#xff0c;惟吾德馨 介绍 Service是Android程序中四大基础组件之一&#xff0c;它和Activity一样都是Context的子类&#xff0c;只不…...

[论文笔记]RAPTOR: RECURSIVE ABSTRACTIVE PROCESSING FOR TREE-ORGANIZED RETRIEVAL

引言 今天带来又一篇RAG论文笔记&#xff1a;RAPTOR: RECURSIVE ABSTRACTIVE PROCESSING FOR TREE-ORGANIZED RETRIEVAL。 检索增强语言模型能够更好地适应世界状态的变化并融入长尾知识。然而&#xff0c;大多数现有方法只能从检索语料库中检索到短的连续文本片段&#xff0…...

python 端口的转发

实现端口的转发 tcpsocket.py 对基础的socket进行了封装 import socketclass baseSocket:def service(host:str,port:int,maxSuspend:int)->socket: service_socket socket.socket(socket.AF_INET,socket.SOCK_STREAM) # 创建 socket 对象service_socket.setso…...

opencv 中如何通过欧式距离估算实际距离(厘米)

1&#xff1a;这个方法个人测试觉得是正确的&#xff0c;误差较小&#xff0c;目前满足我当前的需求&#xff0c;如果方法不对&#xff0c;请大家评论&#xff0c;完善。 2&#xff1a;确保拍摄的参照物是垂直的&#xff0c;如果不垂直&#xff0c;就会有误差&#xff0c;不垂…...

Flask+Layui开发案例教程

基于 Python 语言的敏捷开发框架_DjangoAdmin敏捷开发框架FlaskLayui版本_开发文档 软件产品基于 Python 语言&#xff0c;采用 Flask2.x、Layui、MySQL 等技术栈精心打造的一款集模块化、高性能、组件化于一体的企业级敏捷开发框架&#xff0c;本着简化开发、提升开发效率的初…...

复现ORB3-YOLO8项目记录

文章目录 1.编译错误1.1 错误11.2 错误21.3 错误31.4 错误4 1.编译错误 首先ORB-SLAM相关项目已经写过很多篇博客了&#xff0c;从ORB-SLAM2怎么运行&#xff0c;再到现在的项目。关于环境已经不想多说了 1.1 错误1 – DEPENDENCY_LIBS : /home/lvslam/ORB3-YOLO8/Thirdparty…...

MPNet:旋转机械轻量化故障诊断模型详解python代码复现

目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...

PHP和Node.js哪个更爽?

先说结论&#xff0c;rust完胜。 php&#xff1a;laravel&#xff0c;swoole&#xff0c;webman&#xff0c;最开始在苏宁的时候写了几年php&#xff0c;当时觉得php真的是世界上最好的语言&#xff0c;因为当初活在舒适圈里&#xff0c;不愿意跳出来&#xff0c;就好比当初活在…...

【位运算】消失的两个数字(hard)

消失的两个数字&#xff08;hard&#xff09; 题⽬描述&#xff1a;解法&#xff08;位运算&#xff09;&#xff1a;Java 算法代码&#xff1a;更简便代码 题⽬链接&#xff1a;⾯试题 17.19. 消失的两个数字 题⽬描述&#xff1a; 给定⼀个数组&#xff0c;包含从 1 到 N 所有…...

Go 语言接口详解

Go 语言接口详解 核心概念 接口定义 在 Go 语言中&#xff0c;接口是一种抽象类型&#xff0c;它定义了一组方法的集合&#xff1a; // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的&#xff1a; // 矩形结构体…...

基础测试工具使用经验

背景 vtune&#xff0c;perf, nsight system等基础测试工具&#xff0c;都是用过的&#xff0c;但是没有记录&#xff0c;都逐渐忘了。所以写这篇博客总结记录一下&#xff0c;只要以后发现新的用法&#xff0c;就记得来编辑补充一下 perf 比较基础的用法&#xff1a; 先改这…...

【项目实战】通过多模态+LangGraph实现PPT生成助手

PPT自动生成系统 基于LangGraph的PPT自动生成系统&#xff0c;可以将Markdown文档自动转换为PPT演示文稿。 功能特点 Markdown解析&#xff1a;自动解析Markdown文档结构PPT模板分析&#xff1a;分析PPT模板的布局和风格智能布局决策&#xff1a;匹配内容与合适的PPT布局自动…...

React19源码系列之 事件插件系统

事件类别 事件类型 定义 文档 Event Event 接口表示在 EventTarget 上出现的事件。 Event - Web API | MDN UIEvent UIEvent 接口表示简单的用户界面事件。 UIEvent - Web API | MDN KeyboardEvent KeyboardEvent 对象描述了用户与键盘的交互。 KeyboardEvent - Web…...

VTK如何让部分单位不可见

最近遇到一个需求&#xff0c;需要让一个vtkDataSet中的部分单元不可见&#xff0c;查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行&#xff0c;是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示&#xff0c;主要是最后一个参数&#xff0c;透明度…...

【HarmonyOS 5 开发速记】如何获取用户信息(头像/昵称/手机号)

1.获取 authorizationCode&#xff1a; 2.利用 authorizationCode 获取 accessToken&#xff1a;文档中心 3.获取手机&#xff1a;文档中心 4.获取昵称头像&#xff1a;文档中心 首先创建 request 若要获取手机号&#xff0c;scope必填 phone&#xff0c;permissions 必填 …...

Mysql中select查询语句的执行过程

目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析&#xff08;Parser&#xff09; 2.4、执行sql 1. 预处理&#xff08;Preprocessor&#xff09; 2. 查询优化器&#xff08;Optimizer&#xff09; 3. 执行器…...