讲师中心 微信公众号
AI工具推荐 视频效率加速

LINUX怎么抓包_LINUX tcpdump命令使用详解

冬婷小哥_4077

冬婷小哥_4077

发布时间:2025-12-27 13:45:10

|

1082人浏览过

|

来源于php中文网

原创

tcpdump是Linux下最常用且功能强大的命令行抓包工具,支持通过选项和过滤表达式捕获、分析网络流量。其基本语法为tcpdump [选项] [过滤表达式],常用选项包括-i指定接口、-n/-nn不解析主机名和端口名、-v增加详细输出、-c限制抓包数量、-s设置捕获长度、-w保存数据到文件、-r读取文件分析。典型使用场景有监听指定网卡、按IP或端口过滤、协议筛选(如TCP/UDP/ICMP)、组合条件抓包(如host与port结合),并可通过-w将流量保存为pcap文件供Wireshark分析,或用-r回放。实际使用建议配合sudo提权、加过滤避免性能影响,利用单引号包裹复杂表达式防shell解析错误,结合grep等工具进一步处理输出,是网络排查、安全分析和性能调优的核心工具。

linux怎么抓包_linux tcpdump命令使用详解

在Linux系统中抓包,最常用且功能强大的工具就是tcpdump。它是一个命令行网络抓包和分析工具,能够捕获经过网卡的数据包,并根据条件过滤、显示或保存数据,广泛用于网络故障排查、安全分析和性能调优。

一、tcpdump基本语法

tcpdump 的基本命令格式如下:

tcpdump [选项] [过滤表达式]

其中,过滤表达式用于指定要捕获的数据包类型,比如基于IP、端口、协议等。

二、常用选项说明

掌握以下常用参数,能大幅提升使用效率:

  • -i interface:指定监听的网络接口,如 eth0、wlan0。使用 -i any 可监听所有接口。
  • -n:不解析主机名,直接显示IP地址,加快输出速度。
  • -nn:不解析主机名和端口名(如将http显示为80),输出更简洁。
  • -v, -vv, -vvv:增加输出的详细程度,v越多信息越详细。
  • -c count:只捕获指定数量的数据包后自动停止。
  • -s snaplen:设置每个数据包捕获的字节数,默认通常为262144字节,-s 0 表示捕获完整包。
  • -w file:将捕获的数据包保存到文件,供后续用 tcpdump 或 Wireshark 分析。
  • -r file:读取之前保存的抓包文件进行分析。

三、常见使用场景与示例

以下是实际工作中常用的几种抓包方式:

1. 监听指定网卡的流量

tcpdump -i eth0

监听 eth0 接口上的所有数据包。

2. 不解析IP和端口,提高速度

tcpdump -i eth0 -nn

避免DNS反向解析和端口名称转换,适合快速查看原始通信。

3. 只抓取特定主机的流量

tcpdump -i eth0 host 192.168.1.100

仅捕获与该IP通信的数据包,双向都包括。

4. 抓取指定源或目标IP

tcpdump -i eth0 src 192.168.1.100

只抓源IP为 192.168.1.100 的包。

tcpdump -i eth0 dst 192.168.1.200

只抓目标IP为 192.168.1.200 的包。

5. 按协议抓包

tcpdump -i eth0 tcp

只抓TCP协议的数据包。

linux-sysadmin
linux-sysadmin

Linux系统管理专家,覆盖12大模块:用户权限、SSH、存储、网络、systemd、防火墙、日志监控、备份恢复、TLS证书、Ansible、容器、IaC。提供配置、验证、加固、监控、备份、自动化、故障排查、回滚闭环。关键词:useradd、sudo、sshd_config、chmod、SEL...

下载

tcpdump -i eth0 udp

只抓UDP包。

tcpdump -i eth0 icmp

抓ICMP包(如ping)。

6. 按端口过滤

tcpdump -i eth0 port 80

捕获所有涉及80端口的流量(HTTP)。

tcpdump -i eth0 src port 53

源端口为53的包(DNS查询)。

7. 组合条件抓包

tcpdump -i eth0 host 192.168.1.100 and port 22

抓取IP为192.168.1.100且使用22端口(SSH)的流量。

tcpdump -i eth0 'tcp port 443 and host 10.0.0.5'

抓取访问10.0.0.5的HTTPS流量。

8. 保存抓包数据到文件

tcpdump -i eth0 -nn -s 0 -w /tmp/capture.pcap

将完整数据包写入文件,可用于Wireshark打开分析。

9. 从文件读取分析

tcpdump -r /tmp/capture.pcap -nn

读取之前保存的pcap文件并按原样显示。

四、实用技巧与注意事项

  • 普通用户运行 tcpdump 可能权限不足,建议使用 sudo tcpdump 提权执行。
  • 生产环境抓包时,尽量加过滤条件,避免日志爆炸或影响性能。
  • 结合 grep 或重定向可进一步处理输出,例如:
    tcpdump -i eth0 -nn port 80 | grep "192.168.1.1"
  • 长时间抓包建议限制大小或数量,如配合 -c 100 防止磁盘占满。
  • Wireshark 图形化分析 pcap 文件更直观,tcpdump 抓包 + Wireshark 分析是常见组合。

基本上就这些。tcpdump 虽然命令多,但掌握核心选项和过滤语法后,日常排查网络问题非常高效。不复杂但容易忽略的是过滤表达式的书写顺序和引号使用,注意用单引号包裹复杂表达式避免shell解析错误。

热门AI工具

更多
Atoms
Atoms Hot

Atoms是一款AI智能体工具,第一支自动构建真实业务的 AI 团队。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

Loomy
Loomy Hot

一款AI工具,主要用于科大讯飞发布的桌面级 AI 助理,比 OpenClaw 更易用、更安全!,适合需要提升相关任务效率的用户。

Laper
Laper Hot

Laper是专为编剧、导演和制片人推出的 AI 原生剧本创作工具。

二狗PPT
二狗PPT Hot

一款AI演示文稿工具,主要用于专为中式职场打造的AI PPT生成工具,适合需要提升相关任务效率的用户。

UP简历
UP简历 Hot

一款AI办公效率工具,主要用于基于AI技术的免费在线简历制作工具,适合需要提升相关任务效率的用户。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

UpDream
UpDream Hot

一款AI视频创作工具,主要用于哔哩哔哩推出的自研AI视频创作工具,适合需要提升相关任务效率的用户。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

相关专题

更多
counta和count的区别
counta和count的区别

Count函数用于计算指定范围内数字的个数,而CountA函数用于计算指定范围内非空单元格的个数。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2468

2023.11.20

硬盘接口类型介绍
硬盘接口类型介绍

硬盘接口类型有IDE、SATA、SCSI、Fibre Channel、USB、eSATA、mSATA、PCIe等等。详细介绍:1、IDE接口是一种并行接口,主要用于连接硬盘和光驱等设备,它主要有两种类型:ATA和ATAPI,IDE接口已经逐渐被SATA接口;2、SATA接口是一种串行接口,相较于IDE接口,它具有更高的传输速度、更低的功耗和更小的体积;3、SCSI接口等等。

3048

2023.10.19

PHP接口编写教程
PHP接口编写教程

本专题整合了PHP接口编写教程,阅读专题下面的文章了解更多详细内容。

4309

2025.10.17

php8.4实现接口限流的教程
php8.4实现接口限流的教程

PHP8.4本身不内置限流功能,需借助Redis(令牌桶)或Swoole(漏桶)实现;文件锁因I/O瓶颈、无跨机共享、秒级精度等缺陷不适用高并发场景。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

3689

2025.12.29

java接口相关教程
java接口相关教程

本专题整合了java接口相关内容,阅读专题下面的文章了解更多详细内容。

386

2026.01.19

go中interface用法
go中interface用法

本专题整合了go语言中int相关内容,阅读专题下面的文章了解更多详细内容。

3230

2025.09.10

http500解决方法
http500解决方法

http500解决方法有检查服务器日志、检查代码错误、检查服务器配置、检查文件和目录权限、检查资源不足、更新软件版本、重启服务器或寻求专业帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2943

2023.11.09

http请求415错误怎么解决
http请求415错误怎么解决

解决方法:1、检查请求头中的Content-Type;2、检查请求体中的数据格式;3、使用适当的编码格式;4、使用适当的请求方法;5、检查服务器端的支持情况。更多http请求415错误怎么解决的相关内容,可以阅读下面的文章。

794

2023.11.14

Buffalo框架数据库开发全教程
Buffalo框架数据库开发全教程

本专题围绕Buffalo框架数据库开发,讲解database.yml多环境配置、soda与fizz迁移生成回滚、模型结构体标签、增删改查与条件查询、一对多与多对多关联、数据校验、回调钩子、事务处理及原生SQL执行能力。

120

2026.09.23

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn