tcpdump深入浅出

news2024/10/11 14:15:18

文章目录

  • 介绍 tcpdump
  • 安装和基础使用
  • 各个参数
  • 捕获网络流量
  • 过滤表达式
  • 抓包输出分析
  • 保存与读取数据包
  • 高级用法
  • 实际案例分析
  • 性能优化与安全注意事项
  • 结语


介绍 tcpdump

  • 什么是 tcpdump:简述它是一款命令行网络包抓取工具,广泛应用于网络诊断和故障排查。
  • 应用场景:介绍 tcpdump 在日常网络排查、分析、调试中的作用。可以举例如捕获 HTTP 请求、排查 DNS 问题、检查网络连接等。

安装和基础使用

  • 安装 tcpdump:在 Linux、Mac、Windows(通过 WSL 或者 Cygwin)系统中的安装方式。
    • sudo yum -y install tcpdump (Linux)
    • sudo apt install tcpdump (Debian/Ubuntu)
    • brew install tcpdump (Mac)
  • 基本命令格式
    • tcpdump [选项] [表达式]
    • 解析这个命令的各个部分:选项 用于指定输出的细节、接口等,表达式 用于过滤特定的包。

各个参数

以下是常用的 tcpdump 参数整理成的表格,便于读者快速查阅:

参数含义示例
-i指定要抓包的网络接口tcpdump -i eth0
-w将抓取的数据包保存到文件tcpdump -w capture.pcap
-r从文件读取并分析数据包tcpdump -r capture.pcap
-s设置抓包的大小(默认 65535 字节)tcpdump -s 64
-c设置抓取的包数量tcpdump -c 100
-v提供详细输出tcpdump -v
-vv提供更详细的输出tcpdump -vv
-A以 ASCII 格式显示数据包内容tcpdump -A -s 0 port 80
-X以十六进制和 ASCII 格式显示数据包内容tcpdump -X
-n禁止主机名解析,提高抓包性能tcpdump -n
-nn禁止主机名和服务名解析tcpdump -nn
-p不将接口设置为混杂模式tcpdump -p
-tttt显示更加详细的时间戳tcpdump -tttt
host过滤特定主机的流量tcpdump host 192.168.1.1
port过滤特定端口的流量tcpdump port 80
src过滤特定来源 IP 地址的流量tcpdump src 192.168.1.1
dst过滤特定目的 IP 地址的流量tcpdump dst 192.168.1.1
and/or组合过滤条件tcpdump src 192.168.1.1 and port 22
-S捕获 TCP 包时显示绝对序列号tcpdump -S

这个表格概括了 tcpdump 的常用参数及其含义,同时给出了对应的示例,帮助读者快速掌握不同参数的使用方法。

捕获网络流量

  • 捕获所有流量:介绍如何捕获默认接口的所有流量。
    tcpdump
    
  • 指定接口捕获
    tcpdump -i eth0
    
    解释 -i 参数如何指定不同的网络接口。
  • 只捕获某种协议的包
    tcpdump tcp
    
    说明如何过滤 TCPUDPICMP 等特定协议的流量。

过滤表达式

  • 主机过滤:捕获特定 IP 的流量。
    tcpdump host 192.168.1.1
    
  • 端口过滤:只捕获某个端口的数据包。
    tcpdump port 80
    
    可以通过常用端口号如 80 (HTTP),443 (HTTPS) 进行演示。
  • 组合过滤
    tcpdump src host 192.168.1.1 and dst port 22
    
    介绍如何通过 andor 组合过滤条件,捕获特定来源和目的的流量。

抓包输出分析

  • 分析输出格式
    • 介绍 tcpdump 默认输出的信息,比如时间戳、源 IP、目标 IP、协议、端口等。
  • 查看详细的包内容
    tcpdump -vv
    
    解释 -v-vv 参数如何增加输出的详细程度。

保存与读取数据包

  • 将数据保存到文件
    tcpdump -w capture.pcap
    
    解释如何将抓取的数据包保存到 .pcap 文件中,以便后续分析。
  • 从文件中读取数据包
    tcpdump -r capture.pcap
    
    说明如何读取并分析保存的包文件。

高级用法

  • 只捕获前 N 个字节
    tcpdump -s 64
    
    解释 -s 参数的作用,即设置抓取包的大小。
  • 指定抓包长度:在流量特别大时,可以通过 -c 参数设置抓取的包数来限制输出。
    tcpdump -c 100
    
  • 使用 Wireshark 分析 tcpdump 输出:可以提到将 pcap 文件导入 Wireshark 进行图形化分析。

实际案例分析

  • 排查 DNS 问题
    tcpdump -i eth0 port 53
    
    分析 DNS 请求与响应的示例,帮助理解如何通过 tcpdump 快速找出 DNS 配置问题。
  • HTTP 流量分析
    tcpdump -A -s 0 port 80
    
    解释如何使用 -A 参数查看 HTTP 请求中的内容,比如请求头和响应体。
  • SSL/TLS 流量分析:简述抓取 HTTPS 流量的难点,并推荐通过导出 SSL/TLS key 的方法与 Wireshark 配合解密。

性能优化与安全注意事项

  • 优化 tcpdump 性能:使用 -n 禁止解析主机名,减少 CPU 消耗;使用 -p 禁止设置接口为混杂模式。
  • 安全问题:提醒用户 tcpdump 需要 root 权限运行,因此要谨慎使用,避免安全风险。

结语

总结 tcpdump 的核心功能,强调它在网络排查中的重要性,并鼓励读者结合实际场景多实践。

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

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

相关文章

极狐GitLab X 某轨道交通控制系统龙头企业,助力业务研发敏捷化

GitLab 是一个全球知名的一体化 DevOps 平台,很多人都通过私有化部署 GitLab 来进行源代码托管。极狐GitLab 是 GitLab 在中国的发行版,专门为中国程序员服务。可以一键式部署极狐GitLab。 学习极狐GitLab 的相关资料: 极狐GitLab 60天专业…

Linux常用应急溯源命令

常用命令 1、账号相关命令 1、查询特权用户特权用户(uid 为0):awk -F: $30{print $1} etc/passwd 2、查询可以远程登录的帐号信息:awk /\$1|\$6/{print $1} etc/shadow 2、程序相关命令 1、查看当前开放端口netstat -tnlp 2、查看当前系统上运行的所…

华为中级认证HCIP知识点总结,建议收藏

01 OSPF知识点 OSPF基本配置,OSPF 5种报文,7种邻居状态,4种网络类型,4种特殊区域,7类LSA,4种link type,标识一条LSA的3个要素,OSPF邻居域邻接关系,单区域,多区…

生成对抗网络GAN——学习笔记

经过大量阅读资料和博客,对GAN的认识和学习做一个记录。个人粗浅的认识,不管是什么模型都离不开最基础的神经网络。主要借鉴的博客内容如下 新型的神经网络模型,从CNN到BERT都有介绍。_最新的神经网络模型-CSDN博客 生成对抗网络——GAN&am…

Open WebUI | 自托管的类 ChatGPT 网站

Open WebUI 是一个扩展性强、功能丰富且用户友好的自托管 WebUI,支持 ChatGPT 网页端的大部分功能,支持各类模型服务,包括 Ollama 和 OpenAI 的 API。该项目在 GitHub 上已有 38k 星,非常受欢迎。 功能介绍 本篇介绍该项目的功能…

(Kafka源码五)Kafka服务端处理消息

Kafka 服务端(Broker)采用 Reactor 的架构思想,通过1 个 Acceptor,N 个 Processor(N默认为3),M 个 KafkaRequestHandler(M默认为8),来处理客户端请求,这种模式结合了多线…

眼镜店会员积分卡系统软件试用版下载 佳易王配镜顾客信息管理系统使用操作教程

一、前言 【软件试用版资源文件下载可以点文章最后卡片了解】 眼镜店会员积分软件是专门为眼镜店设计的管理工具,旨在通过积分活动提升顾客的忠诚度,促进复购率,并优化顾客体验。 眼镜店会员积分卡系统软件试用版下载 佳易王配镜顾客信息管…

WEB攻防-python考点CTF与CMS-SSTI模板注入PYC反编译

知识点: 1、PYC(python编译后的文件)文件反编译; 2、Python-Web-SSTI; 3、SSTI模板注入利用分析; (Server-Side Template Injection) SSTI 就是服务器端模板注入 当前使用的一…

高级算法设计与分析-MaxFlow网络流基础知识

MaxFlow网络流 1 网络流基础概念 source:源点 sink:终点 Flow:流量 capacity:容量 Residual:残量 Residual Network:残量网络 Augmenting path:增广路径,表示从源点 s 到终点 t 不包含环的路径 Bottleneck capacity:瓶颈容量 2 最大流 2.1 基础概念 2.2 增广路算法 …

C++刷怪笼(7)string类

目录 1.前言 2.正文 2.1标准库中的string类 2.1.1string类 2.1.2auto和范围for 2.1.3string类的常用接口说明 2.2string类的模拟实现 2.2.1经典的string类问题 2.2.2浅拷贝 2.2.3深拷贝 ​编辑 2.2.4写时拷贝 3.小结 1.前言 前面我们对C的封装这一大特性进行了详细…

Win10电脑录屏全攻略:轻松掌握屏幕录制技巧

在日常生活和工作中,我们经常需要录制屏幕来展示操作步骤、制作教程视频或记录重要内容。如果你正在使用Win10系统,那么有多种方法可以轻松实现屏幕录制。下面就给大家分享五种不同的录屏工具,让你轻松掌握屏幕录制技巧。 一、嗨格式录屏大师…

从数据到资产,数据资产管理的风口能撑多久?

从数据到资产,数据资产管理的风口能撑多久? 前言从数据到资产 前言 在今天的大数据和人工智能世界里,数据的价值已被推到了前所未有的高度。作为一家企业,如何有效管理这些数据并从中提取出最具价值的部分,成了各行各…

AI产品经理指南| 面试了100位AI产品经理后的心得总结

AI正深刻地变革着各行各业,而在这场技术革命中,首先受到影响的或许正是那些与AI紧密相连的专业人士——产品经理。 我们本篇中的对话始于Vanessa对「面试了100位AI产品经理」的心得总结。 👩🏻 Vanessa: 字节跳动AI产…

NTAG_8654

NTAG_8654 产品型号 NTAG_8654 标签尺寸 85.5*54*4.3MM 芯片类型 NFC Ntag 213/215/216 工作频率 13.56MHZ 工作温度 -30C~100C 标签材质 ABS 支持协议 14443A 协议 标签材质 黑/白 安装方式 背胶粘贴或柳钉安装 应用领域 物业巡更,设备巡检&…

工业智能化的安全护盾,CodeMeter如何实现高效授权与防护

工业自动化的快速发展对技术创新提出了越来越高的要求。为了在全球竞争中保持领先,制造企业不仅需要提高生产效率,还必须确保软件的安全性和可靠性。如何在保证高效运营的同时,保护核心知识产权和防止软件盗用,成为了行业内的重要…

拓扑排序基础及应用案例

文章目录 基础内容应用案例:软件构建系统的依赖管理背景描述解决方案具体步骤示例代码 基础内容 拓扑排序(Topological Sort)是一种针对有向无环图(Directed Acyclic Graphs, DAG)的排序方法。它的目的是找出一种图中…

【树莓派5B】IO串口通信使用

超级简单的串口使用 前言零、检查准备(可略)0.1 查看UART引脚:0.2 扩展一下引脚查看的方法 一、配置准备1.1 检查端口配置1.2 查看串口映射1.3 下载minicom串口调试工具1.4 通过命令获取串口上的数据 二、python的serial进行收发测试总结 前言…

Llama-3.2-3B-Instruct PyTorch模型微调最佳实践

1 引言 Meta Llama 3.2多语言大型语言模型集合(LM)是一个1B和3B大小(文本输入/文本输出)的预训练和指令微调模型集合。Llama 3.2指令调整的纯文本模型针对多语言对话用例进行了优化,包括智能检索和总结任务。它们在常…

【用Java学习数据结构系列】HashMap与TreeMap的区别,以及Map与Set的关系

看到这句话的时候证明:此刻你我都在努力 加油陌生人 个人主页:Gu Gu Study 专栏:用Java学习数据结构系列 喜欢的一句话: 常常会回顾努力的自己,所以要为自己的努力留下足迹 喜欢的话可以点个赞谢谢了。 作者&#xff…

js逆向——2024最新有道翻译过控制台反调试

今日受害者网址:https://fanyi.youdao.com/ 最近收到粉丝反馈,有道翻译网站添加了反调试功能,出现了打不开控制台的情况 那么,今天就加餐讲一下如何过掉有道的反调试吧~ 我进去测试了一下,发现就是右键检查/f12打开控…