首页 > 编程笔记 > Linux笔记 阅读:66

Linux tcpdump命令的用法(附带实例)

Linux 中,tcpdump 命令需要以管理员身份执行,功能是监听网络流量,是一款数据嗅探工具,在 Linux 系统中常用来抓取数据包,能够记录所有经过服务器的数据包信息。

tcpdump 命令的语法格式如下:
tcpdump 参数 对象
常用参数见下表:

选项 描述 选项 描述
-a 将网络和广播地址转换成名称 -p 不让网络接口进入混杂模式
-c 收到指定的数据包数目后,就停止抓包操作 -q 静默执行模式
-d 将编译过的数据包编码转换成可阅读的格式 -r 从指定的文件中读取数据
-dd 将编译过的数据包编码转换成 C语言的格式 -s 设置每个数据包的大小
-ddd 将编译过的数据包编码转换成十进制数字的格式 -S 用绝对而非相对数值列出TCP关联数
-e 在每列资料上显示连接层级的文件头 -t 不显示时间戳记
-f 用数字显示网络地址 -tt 显示未经格式化的时间戳
-F 指定内含表达方式的文件 -T 将数据包转换成指定类型
-i 使用指定的网络接口送出数据包 -v 显示执行过程信息
-l 使用标准输出列的缓冲区 -vv 显示执行过程详细信息
-n 不将 IP 地址转换成主机名 -x 用十六进制字码显示数据包
-O 不将数据包编码最佳化 -w 将数据包写入指定的文件

【实例 1】监听指定网络接口的数据包:
[root@clinux ~]# tcpdump -i ens160

【实例 2】监听指定主机的数据包(IP 地址):
[root@clinux ~]# tcpdump host 192.168.10.10

【实例 3】监听指定端口号的数据包,并以文本形式展示:
[root@clinux ~]# tcpdump -i any port 80 -A

相关文章