linux下抓包工具--tcpdump介绍

文章目录

    • 1. 前言
    • 2. 命令介绍
    • 3. 常见选项
        • 3.1. 接口与基本控制
        • 3.2 输出控制
        • 3.3 文件操作
        • 3.4 高级调试
    • 4. 过滤表达式
        • 4.1 协议类型
        • 4.2 方向与地址
        • 4.3 逻辑运算符
    • 5. 典型使用场景
        • 5.1 网络故障排查
        • 5.2 安全分析与入侵检测
        • 5.3 性能分析与优化

linux下抓包工具--tcpdump介绍

1. 前言

⽹络世界中的数据包交互我们⾁眼是看不⻅的,这个时候对于我们而言就是很抽象,如果可以把交互过程“可视化”,我们就更容易了解网络了。tcpdumpwireshark就是2个分析网络的神器。

  • tcpdump 仅⽀持命令⾏格式使⽤,常⽤在 Linux 服务器中抓取和分析⽹络包。

  • Wireshark 除了可以抓包外,还提供了可视化分析⽹络包的图形⻚⾯。

这两个工具实际上是搭配使⽤的,先⽤ tcpdump 命令在 Linux 服务器上抓包,接着把抓包的⽂件拖出到

Windows 电脑后,⽤ Wireshark 可视化分析。如果实在 win 环境下,直接使用 Wireshark 就可以了。

本文主要针对tcpdump抓包进行介绍。

2. 命令介绍

tcpdump 命令格式如下:

tcpdump [ -adeflnNOpqStvx ] [ -c count ] [ -F file ]
[ -i interface ] [ -r file ] [ -s snaplen ]
[ -T type ] [ -w file ] [ expression ]# 简化一下命令形式
tcpdump [选项] [过滤表达式]

核心组成

  • 选项:控制抓包行为(如接口选择、输出格式、保存文件等)。
  • 过滤表达式:基于协议、IP、端口等条件筛选数据包

3. 常见选项

3.1. 接口与基本控制
选项作用示例
-i <接口>指定监听网卡(如eth0anytcpdump -i eth0(监听eth0网卡)
-c <数量>抓取指定数量包后停止tcpdump -c 10(抓10个包后退出)
-D列出系统可用网络接口tcpdump -D(查看所有接口名称)

3.2 输出控制
选项作用示例
-n禁用DNS解析,直接显示IP地址tcpdump -n(显示192.168.1.1而非主机名)
-nn禁用端口服务名解析(显示数字端口)tcpdump -nn(显示80而非HTTP)
-v/-vv输出详细信息(TTL、协议头等)tcpdump -vv(显示完整协议头)
-A以ASCII格式显示数据内容tcpdump -A(查看HTTP明文请求)
-X十六进制+ASCII显示数据包tcpdump -X(分析二进制协议)
3.3 文件操作
选项作用示例
-w <文件>保存抓包数据到文件tcpdump -w capture.pcap(保存为Wireshark可读格式)
-r <文件>读取已保存的抓包文件tcpdump -r capture.pcap(分析离线数据)
-C <大小>限制抓包文件大小(单位MB)tcpdump -C 100(每100MB分割文件)
3.4 高级调试
选项作用示例
-e显示数据链路层头部(MAC地址)tcpdump -e(分析ARP或交换机转发)
-t不显示时间戳tcpdump -t(简化输出)

4. 过滤表达式

过滤表达式由 协议类型方向逻辑运算符 组合构成:

4.1 协议类型
  • 协议tcpudpicmparp等。

  • 示例tcpdump icmp(仅抓ICMP包)

    # ether:icmp协议中没有源ip和目的ip,所以需要依赖于ether 协议
    tcpdump -i wlan0 ether src 48:8f:4c:ee:c6:aa #抓取源mac为48:8f:4c:ee:c6:aa的数据包
    
4.2 方向与地址
  • 方向src(源)、dst(目标)、hostsrc or dst(双向)】。
  • IP/端口host 192.168.1.1port 80portrange 1-1024 (portrange 用于指定端口范围,格式为 portrange start-end)
sudo tcpdump 'src 192.168.1.106 and src port 22'  # 抓取来自192.168.1.106的SSH流量
4.3 逻辑运算符
  • and(如tcp and port 80)。
  • or(如host 192.168.1.1 or 192.168.1.2)。
  • not(如not arp

5. 典型使用场景

5.1 网络故障排查
  • 场景:当遇到网络连接延迟、丢包或服务不可达时,通过抓包分析数据包交互过程。

  • 示例:

    • 排查 SSH 连接缓慢

      sudo tcpdump -i eth0 port 22
      

      若发现大量 DNS 查询请求,可能是 DNS 解析延迟导致问题。

    • 分析 TCP 握手失败

      sudo tcpdump -i wlan0  'tcp[tcpflags] & (tcp-syn | tcp-ack) != 0'
      
    • 检测ICMP不可达错误

      sudo tcpdump 'icmp[0] == 3'  # 抓取ICMP目标不可达消息
      
5.2 安全分析与入侵检测
  • 场景:检测异常流量(如端口扫描、DDoS 攻击)或未授权访问。

  • 示例:

    • 捕获高频 SYN 包(可能为 SYN Flood 攻击)

      sudo tcpdump -i wlan0 'tcp[tcpflags] & tcp-syn != 0 and tcp[tcpflags] & tcp-ack == 0' | wc -l
      
    • 分析恶意 HTTP 请求

      sudo tcpdump -i wlan0 'port 80 and (tcp port 80) and (tcp[tcpflags] & tcp-push != 0)' | grep "GET /malicious.php"
      
5.3 性能分析与优化
  • 场景:监控网络带宽占用、协议开销或优化网络参数(如 TCP 窗口大小)。

  • 示例:

    • 统计特定端口的流量速率

      sudo tcpdump -i wlan0 -c 1000 port 443 | pv -l -s 10M > /dev/null
      
    • 分析 TCP 重传率

      sudo tcpdump -i wlan0 'tcp & 0x08 != 0' #通过标志位 0x08(重传标志)判断丢包情况
      

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

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

相关文章

AI大模型-RAG到底能做些什么?

RAG常见的应用场景&#xff0c;有以下几个方面&#xff1a; 1.智能客服系统&#xff1a;比如电商领域&#xff0c;对客户提出的常见问题&#xff0c;进行自动回复。减少人力成本。 2.人力资源管理&#xff1a;一个新的员工&#xff0c;入职一家大型公司&#xff0c;公司中有各…

C++ unordered_set unordered_map

上篇文章我们讲解了哈希表的实现&#xff0c;这节尝试使用哈希表来封装unordered_set/map 1. unordered_set/map的框架 封装的过程实际上与set/map类似&#xff0c;在unordered_set/map层传递一个仿函数&#xff0c;用于取出key值 由于我们平常使用的都是unordered_set/map&…

REST API、FastAPI与Flask API的对比分析

以下是关于REST API、FastAPI与Flask API的对比分析&#xff0c;涵盖架构设计、性能表现、开发效率等核心维度&#xff1a; 一、核心定位与架构差异 REST API 本质&#xff1a;一种基于HTTP协议的架构风格&#xff0c;强调资源化操作&#xff08;通过URI定位资源&#xff09;、…

实战交易策略 篇二十二:情绪流龙头交易策略

文章目录 系列文章理论基础股市的本质资金与情绪题材龙头股龙头战法实战技法情绪流技术分析择时实操情绪流龙头战法要诀六大步骤九大术法买卖点量化标准系列文章 实战交易策略 篇一:奥利弗瓦莱士短线交易策略 实战交易策略 篇二:杰西利弗莫尔股票大作手操盘术策略 实战交易策…

用VNA进行天线阻抗匹配的实例大图

比如我这天线&#xff0c;在7Mhz时不谐振&#xff0c;我进行匹配 天线的阻抗很高&#xff0c;大约是在500-1400欧&#xff0c;而等效电容电感很小。 所以我考虑使用阻抗变压器降低阻抗。 1。测试天线阻抗&#xff0c;电阻相当高&#xff0c;等效电容很小。 2。通过磁环匹配到…

一个读写excel的简单程序(golang)

最近总有一些临时统计的需求&#xff0c;比如其他团队生产的一批数据&#xff0c;需要确认这批数据是否入到数仓&#xff0c;提供的列表就是一个excel&#xff0c;我们就需要读取excel中的所有数据&#xff0c;之后查询数仓数据库确认这批数据是否存在&#xff0c;并分别将存在…

【AI面试准备】AI误判案例知识库优化方案

面试题&#xff1a;建立内部知识库&#xff1a;收集AI误判案例训练领域专属模型。 在回答关于“建立内部知识库收集AI误判案例训练领域专属模型”的面试问题时&#xff0c;建议从以下结构化框架展开&#xff0c;既能体现专业性&#xff0c;又能展现解决问题的系统性和实际落地…

Ocelot\Consul\.NetCore的微服务应用案例

案例资料链接&#xff1a;https://download.csdn.net/download/ly1h1/90733765 1.效果 实现两个微服务ServerAPI1和ServerAPI2的负载均衡以及高可用。具体原理&#xff0c;看以下示意图。 2.部署条件 1、腾讯云的轻量化服务器 2、WindowServer2016 3、.NETCore7.0 4、Negut …

中小企业MES系统需求文档

适用对象&#xff1a;中小型离散制造企业&#xff08;年产值1-5亿&#xff0c;员工200-800人&#xff09; 版本&#xff1a;V1.0 日期&#xff1a;2025年5月2日 一、业务背景与目标 1.1 现状痛点 生产黑箱化&#xff1a;车间进度依赖人工汇报&#xff0c;异常响应延迟>2小…

OpenAI最新发布的GPT-4.1系列模型,性能体验如何?

简单来说,这次GPT-4.1的核心思路就是:更实用、更懂开发者、更便宜!OpenAI这次没搞太多花里胡哨的概念,而是实实在在地提升了大家最关心的几个点:写代码、听指令、处理超长文本,而且知识库也更新到了2024年6月。 写代码。要说这次GPT-4.1最亮眼的地方,可能就是写代码这块…

【基础算法】二分查找的多种写法

前言 在算法竞赛中&#xff0c;二分查找使用的频率是非常高的&#xff0c;对于C选手而言&#xff0c;有STL中自带的lower_bound和upper_bound二分查找&#xff0c;可以很方便的进行二分查找。但是非C选手、或者需要自定义多条件查找的情况需要自己写一个二分&#xff0c;本文对…

兰亭妙微:火箭发射界面案例分享

北京蓝蓝设计团队来自清华美院&#xff0c;工作多年&#xff0c;行业经验丰富&#xff0c;专业性很强。我们是热爱设计&#xff0c;设计不仅是我们的专业&#xff0c;我们的职业&#xff0c;还是我们的爱好。每一个蓝蓝设计的设计师都希望自己的设计越来越好&#xff0c;以高标…

完美解决.NET Framework 4.0 中 System.Drawing 库不支持 WebP 格式的图像处理

如果你想在 .NET Framework 4.0 中使用 ImageMagick 处理图片&#xff0c;可以通过 Magick.NET 库来实现。Magick.NET 是 ImageMagick 的 .NET 封装&#xff0c;可以用来读取、写入、编辑图像。 以下是如何使用 Magick.NET 来处理图像并提取图像的宽度和高度。 步骤&#xff…

string--OJ1

链接: 例一 链接: 例er class Solution { public:int myAtoi(string str) {int sign 1;int ret0;int i0;while(str[i] ){i;}if(str[i]||str[i]-){if(str[i]-)sign*-1;i;}while(str[i]>0&&str[i]<9){int rstr[i] - 0;if(ret>INT_MAX/10||(retINT_MAX/10&…

Go 写一个简单的Get和Post请求服务

Go 写一个简单的Get和Post请求服务 ✅ 一、准备工作 安装 Go 官网下载地址 安装后执行&#xff1a; go version安装 VS Code 插件 在 VS Code 插件市场搜索并安装插件&#xff1a;Go&#xff08;由 Go 团队提供&#xff09; 配置环境变量&#xff08;可选&#xff09; 设置 …

哪些因素会影响远程视频监控的质量?浅述EasyCVR视频智能诊断技术

在安防领域&#xff0c;无线监控系统凭借其灵活部署、便捷扩展的特性得到广泛应用。然而&#xff0c;实时监控图像清晰度不足、回放调查受限等问题&#xff0c;严重制约了其应用效果。经分析&#xff0c;摄像机性能、线缆质量、无线网桥性能、交换机配置及供电电压等是影响图像…

Java大师成长计划之第10天:锁与原子操作

&#x1f4e2; 友情提示&#xff1a; 本文由银河易创AI&#xff08;https://ai.eaigx.com&#xff09;平台gpt-4o-mini模型辅助创作完成&#xff0c;旨在提供灵感参考与技术分享&#xff0c;文中关键数据、代码与结论建议通过官方渠道验证。 在多线程编程中&#xff0c;锁与原子…

线性代数——行列式⭐

目录 一、行列式的定义⭐ 1-1、三阶行列式练习 1-2、下面介绍下三角行列式、上三角行列式、对角行列式 ​编辑 二、行列式的性质 2-1、性质1&#xff0c;2&#xff0c;3&#xff0c;4&#xff0c;5&#xff0c;6 ​编辑 2-2、性质7 2- 3、拉普拉斯定理、克莱姆法则 三…

微软推出数款Phi 4“开放式”人工智能模型

微软周三推出了几款新的“开放式”人工智能模型&#xff0c;其中功能最强大的模型至少在一个基准测试上可与 OpenAI 的 o3-mini 相媲美。所有新的授权模型——Phi 4 mini reasoning、Phi 4 reasoning 和 Phi 4 reasoning plus——都是“推理”模型&#xff0c;这意味着它们能够…

VPN访问SAP组服务器报登陆负载均衡错误88:无法连接到消息服务器(RC=9)

用户反馈用SAPGUI接入SAP时报错&#xff1a;登陆负载均衡错误88&#xff1a;无法连接到消息服务器(RC9) 经了解是通过VPN访问&#xff0c;但VPN没有放行ICMP访问&#xff0c;导致不能PING通&#xff0c;不能确认是网络问题还是什么问题。 解决方案&#xff1a; 1、VPN由原&am…