ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 在Linux中如何抓包?

在Linux中如何抓包?

原创 Linux操作系统 作者:老男孩Linux 时间:2026-01-20 13:47:09 0 删除 编辑

 在Linux网络运维与安全分析中,抓包是排查网络故障、分析数据流量的核心操作,不管是定位通信异常问题,还是检测恶意流量,都离不开这一关键技能。那么Linux怎么抓包?请看下文。

  在Linux系统中抓包,最常用且功能强大的工具就是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 的包。


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69952968/viewspace-3108389/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
老男孩it教育——致力于帮助有志向的年轻人通过努力学习获得体面的工作和生活。专注于Linux云计算运维、Python全栈开发、网络安全、新媒体运营、容器云架构师、MySQL数据库、go语言的培训。学习可call:18710030740

注册时间:2019-11-06

  • 博文量
    397
  • 访问量
    1015733