1、安装 tcpdump:
sudo yum install tcpdump
2、捕获所有接口的数据包:
sudo tcpdump
#默认情况下,tcpdump 将在所有接口上捕获数据包。使用 Ctrl+C 组合键停止抓包。
3、指定网络接口:
sudo tcpdump -i <interface>
#使用 -i 选项后面跟上要捕获数据包的网络接口名称,如 eth0、ens33 等。
4、保存抓包结果到文件:
sudo tcpdump -w <file>
#使用 -w 选项后面跟上文件名,可以将抓包结果保存到指定的文件中,例如 capture.pcap。
5、读取已保存的抓包文件:
tcpdump -r <file>
#使用 -r 选项后面跟上文件名,可以读取已保存的抓包文件,并进行分析。
6、设置抓包数据的显示格式:
tcpdump -A
#使用 -A 选项可以将数据包的内容以 ASCII 文本形式显示,方便查看包的内容。
7、设置抓包数据的详细信息:
tcpdump -v
#使用 -v 选项可以显示更详细的信息,如 IP 头部、TCP/UDP 头部等。
8、使用过滤器筛选数据包:
可以使用过滤器对抓包数据进行筛选,只显示满足条件的数据包。例如,以下命令只显示源 IP 地址为 192.168.0.1 的数据包:
sudo tcpdump src host 192.168.0.1
#更多过滤器选项可以参考 tcpdump 的文档或使用 tcpdump -h 命令查看帮助。
9、结合其他命令进行数据包分析:
tcpdump 结果可以通过管道 |
传递给其他命令进行进一步分析。例如,可以使用以下命令统计抓包结果中各个源 IP 地址的出现次数:
sudo tcpdump -r capture.pcap | awk '{print $3}' | sort | uniq -c | sort -nr
这些是 tcpdump 在 CentOS 操作系统中的一些常用命令和选项。通过灵活使用它,你可以进行网络流量分析、故障排除和安全审计等任务。