Tcpdump使用方法-抓取原始流量包
TCPdump工具的使用方法
tcpdump简介
tcpdump是一个用于网络数据包捕获和分析的常用命令行工具。它在各种Unix和Linux操作系统上可用,用于监视和分析网络通信,以便进行故障排除、网络性能分析和安全审计。
tcpdump支持众多的命令行选项和过滤表达式,允许用户以不同方式捕获和分析网络数据包。用户可以根据自己的需求创建适当的命令来监视网络流量,进行故障排除或进行网络安全审计。需要注意的是,使用 `tcpdump` 需要具有足够的权限来访问网络接口。
tcpdump基本用法和一些常用参数
-
捕获某个网口的所有数据包(不设置该参数时默认为正在使用的网口,查看网口使用
ifconfig命令):tcpdump -i eth0
-
捕获与特定主机相关的数据包,如果要指定不抓取某个主机的数据包,只需要在
host后面添加一个not:tcpdump -i eth0 host 192.168.1.100这将仅捕获与主机IP地址为
192.168.1.100有关的数据包。tcpdump -i eth0 host not 192.168.1.100这将仅捕获与主机IP地址
192.168.1.100不相关的数据包。 -
捕获指定端口的数据包:
tcpdump -i eth0 port 80这将捕获目标或源端口为80的数据包,通常是HTTP流量。

-
保存捕获数据包到文件:
tcpdump -i eth0 -w capture.pcap这将捕获的数据包保存到名为
capture.pcap的文件中,以便以后分析。 -
显示数据包内容以ASCII文本格式:
tcpdump -i eth0 -A这将以可读的ASCII文本格式显示捕获的数据包内容。

-
指定源IP与目的端口,同样也可以指定源端口与目的IP:
tcpdump -i eth0 'src host 192.168.1.100 and dst port 22'这将捕获从IP地址
192.168.1.100发出并目标端口为22的数据包,通常是SSH流量,其中的src(source,从自己出发的)指的是源,dst(destination,发出去的)指的是目的。 -
捕获指定数量的数据包后停止:
tcpdump -i eth0 -c 50这将捕获50个数据包后停止捕获。
-
仅捕获小于指定大小的数据包,less捕获小于目标值的数据包,greater用于捕获大于目标值的数据包:
tcpdump -i eth0 less 100这将仅捕获小于100字节大小的数据包。
-
指定协议抓取数据包,如TCP、UDP、ICMP等:
tcpdump -i eth0 tcp这将仅捕获所有tcp协议的数据包。

浙公网安备 33010602011771号