Linux系统命令行抓包

Linux系统命令行抓包

1、操作步骤:

1、安装 tcpdump:您可以使用以下命令在 Ubuntu 上安装 tcpdump:

复制代码
sudo apt-get install tcpdump

2、开始抓包:在命令行终端中输入以下命令开始抓取网络数据包。以下命令将抓取来自 eth0 网络接口的前 1000 个数据包:

复制代码
sudo tcpdump -i eth0 -c 1000

如果您需要捕获特定协议的数据包,可以使用以下命令:

复制代码
sudo tcpdump -i eth0 -c 1000 icmp

2、具体参数详解:

tcpdump是一个常用的网络抓包工具,可以捕获网络接口上的数据包,并将其解析成可读性更高的格式。tcpdump 有许多选项可以用于过滤数据包、指定捕获的网络接口、设置捕获时的缓存大小等等。以下是一些常用的 tcpdump 选项和用法示例:

  • -i <interface>:指定要抓取的网络接口。例如,-i eth0 用于抓取 eth0 网络接口上的数据包。
  • -n:禁用 DNS 解析,用 IP 地址代替主机名显示。
  • -c <count>:抓取指定数量的数据包后停止。例如,-c 10 用于抓取 10 个数据包后停止抓包。
  • -w <filename>:将抓取的数据包保存为文件。例如,-w packets.pcap 用于将抓取的数据包保存到名为 packets.pcap 的文件中。
  • -r <filename>:从指定的文件中读取数据包信息。例如,-r packets.pcap 用于读取名为 packets.pcap 的文件中的数据包。

以下是一个 tcpdump 的示例命令:

复制代码
sudo tcpdump -i eth0 -n -c 10 -w packets.pcap icmp

解释:该命令会在 eth0 网络接口上抓取 10 个 ICMP 数据包,并将其保存到 packets.pcap 文件中。在使用 tcpdump 进行网络分析时,需要谨慎选择抓取的数据包类型和数量,以免给网络带来过大的负担。

复制代码
tcpdump -i any -w 20230613.cap

解释:用于在命令行嗅探网络数据包。-i选项用于指定需要监听的网络接口,这里的any表示监听所有的网络接口。-w选项用于指定输出文件的文件名和路径,这里的20230613.cap表示输出文件名为20230613.cap,它将在当前目录下创建并保存捕获的数据包。因此,整个命令tcpdump -i any -w 20230613.cap的作用是在当前系统上监听所有的网络接口,并将所捕获的数据包保存到当前目录下的20230613.cap文件中。

相关推荐
国际云,接待1 分钟前
Nginx 后面接负载均衡,502/504 到底该先查哪里?
运维·nginx·负载均衡
Sylvia33.4 分钟前
从轮询到推送:足球数据API架构演进与火星数据技术拆解
java·服务器·网络·python·websocket·架构
天疆说22 分钟前
Ubuntu 26.04 下 Intel Meteor Lake 核显 + NPU 驱动配置与 PyTorch NPU 推理实测
linux·pytorch·ubuntu
mounter6251 小时前
突破单点限制:BPF 多跟踪点高效附加机制与新 ftrace 架构解析
linux·ebpf·linux kernel·kernel·ftrace
刘某的Cloud1 小时前
Galera Cluster部署 mariadb 节点down机,log sequence number恢复
linux·运维·数据库·负载均衡·mariadb·集群·高可用
小此方1 小时前
Re:Linux系统篇(五十四)线程篇 · 七:互斥锁的底层实现原理:从硬件上下文、原子交换指令(Swap)到并发封装实战
linux·运维·驱动开发
郭涤生2 小时前
rootfs 详解与裁剪优化记录
linux·c++·bsp
铁锚2 小时前
解决Ubuntu执行sudo时 unable to resolve host 报错问题
linux·数据库·ubuntu
二宝哥3 小时前
CentOS 7.9 离线安装 Nginx 并配置openssl1.1.1
linux·nginx·centos
程序员老陆3 小时前
说一说FFmpeg6在Linux平台的编译
linux·运维·服务器·ffmpeg