tcpdump

文章目录

tcpdump 是一个强大的网络数据包捕获工具,用于在网络接口上捕获和显示通过的数据包。它通常用于网络故障排除和安全分析。下面详细介绍 tcpdump 及其用法。

1.选项解释

以下是 tcpdump 的选项和用法,以表格形式展示:

选项 说明
-A 以 ASCII 格式显示数据包内容
-b 打印 AS 数字
-B size 设置缓冲区大小(以 KiB 为单位)
-c count 捕获指定数量的数据包后停止
--count -c 相同
-C file_size 将捕获的数据包文件切分为指定大小的文件
-d 将数据包显示为伪代码形式
-dd 将数据包显示为 C 程序格式
-ddd 将数据包显示为十进制数格式
-D 列出所有可用的网络接口
-E algo:secret 使用指定算法和密钥解密 IPsec 流量
-f 将数据包的外部地址显示为数字格式
-F file 从指定文件读取过滤器表达式
-G seconds 将捕获文件按指定时间间隔轮换
-h 显示帮助信息并退出
-H 打印以太网头部中的 TTL 和 ID
-I 设置为监视模式(仅适用于无线接口)
-j tstamptype 设置时间戳类型
-J 列出可用的时间戳类型
-K 不校验 IP 和 TCP/UDP 校验和
-l 将标准输出设为缓冲模式
-L 显示已知的数据链路类型并退出
-M secret 使用指定密钥验证 IPsec 流量
-n 不解析主机名(将 IP 地址显示为数字格式)
-N 不打印域名部分
--number -c 相同
-O 不进行优化
-p 不置混杂模式
-q 快速输出(不显示数据包的冗余信息)
`-Q in out
-r file 从文件中读取数据包
-R 打开 RPC 解码
-s snaplen 设置捕获的快照长度
-S 打印绝对序列号
-t 不打印时间戳
-tt 打印完整的时间戳(秒)
-ttt 打印时间戳间隔(微秒)
-tttt 打印完整的日期和时间
-T type 强制将数据包解码为指定类型
--time-stamp-precision precision 设置时间戳精度(秒、微秒、纳秒)
--micro 使用微秒时间戳
--nano 使用纳秒时间戳
--version 显示版本信息并退出
-v 打印更多信息(冗长模式)
-vv 打印更多详细信息
-vvv 打印最详细的信息
-V file 从指定文件中读取数据包
-w file 将捕获的数据包写入文件
-W filecount 在写入文件时循环使用文件名
-x 以十六进制格式显示数据包内容
-X 以十六进制和 ASCII 格式显示数据包内容
-y datalinktype 设置数据链路类型
-z postrotate-command 捕获文件轮换后的命令
-Z user 设置捕获进程的用户 ID
expression 设置捕获过滤表达式

这是 tcpdump 的常见选项及其用途。根据具体需求组合使用这些选项,可以更高效地捕获和分析网络数据包。

2.表达式用法

tcpdump 表达式用于过滤捕获的数据包,确保只捕获和显示符合特定条件的数据包。这些表达式由一个或多个原子条件和布尔运算符(如 AND、OR 和 NOT)组合而成。下面详细介绍 tcpdump 表达式的用法。

c 复制代码
tcpdump host 192.168.1.1  	# host:指定的主机,例如 IP 地址或主机名
tcpdump net 192.168.1.0/24		#net:指定的网络
tcpdump port 80		#port:指定的端口号。

tcpdump src 192.168.1.1		# src:源地址。
tcpdump dst 192.168.1.1		# dst:目的地址。

# 指定协议类型
tcpdump ip
tcpdump tcp

tcpdump src 192.168.1.1 and dst port 80 	# 用 and 或 &&。
tcpdump src 192.168.1.1 or dst port 80		# 用 or 或 ||
tcpdump not src 192.168.1.1			# 用 not 或 !

# 使用括号来明确表达式的优先级
tcpdump 'src 192.168.1.1 and (dst port 80 or dst port 443)'
相关推荐
pt10432 分钟前
网络自动化Python课程:Git版本控制基础入门与实验演示
网络·python·自动化
treesforest19 分钟前
随意装软件也会被恶意IP入侵电脑?
网络·网络协议·tcp/ip·网络安全·ip属地·查ip归属地
酷可达拉斯44 分钟前
Linux操作系统-tcpdump抓包定位网络问题实战
linux·运维·服务器·网络·tcpdump
可爱系程序猿9 小时前
网络打印机地址正常却无法出纸:从 TCP/IP 端口到 Print Spooler 的排错步骤
网络·网络协议·tcp/ip
Dontla11 小时前
预置known_hosts如何防止中间人攻击(MITM)?(服务器公钥、服务器私钥)Runner、DNS污染、BGP劫持、同网络ARP欺骗、SSH握手
服务器·网络·ssh
liulilittle14 小时前
UCP 控制协议 [简述]
网络·网络协议·计算机网络·udp·ip·通信
Lust Dusk16 小时前
记一次Linux应急响应题目解析
linux·运维·服务器·网络·安全·网络安全
凌肖战17 小时前
TCP网络通信中setsockopt()函数解决地址已占用问题
服务器·网络·tcp/ip
rcms1527026921818 小时前
MKS PDR-C-2C-BCD 电源模块
网络
LATASA18 小时前
【 从0到1构建 Agent Harness学习笔记】
网络·笔记·学习