Linux系统tcpdump抓包分析
一、抓包软件
windows常用wireshark、linux中常用tcpdump
二、常用参数详解
1、抓取指定linux网卡和目标主机的数据包
tcpdump -I 本机网卡 host 目标IP
# -D 可以列出可以抓包的网络接口,any为所有
# -I 指定监听网卡
# host 指定监听目标IP
2、将报文数据写入\读取文件
tcpdump -I any host 目标IP -nn -v -w test.pcap
# -nn 禁止解析为域名
# -v 显示详细抓包信息
# -w 将结果写入文件
tcpdump -r test.pcap
# -r 读取数据包结果
3、只抓一个方向的数据流
tcpdump -I any src host IP -nn -v
# src host 源IP为IP的流
# dst host 目标IP为IP的流
tcpdump -I any net 网段
#指定网段的包
4、指定端口和协议
tcpdump -nn -i any icmp
#只抓icmp协议
tcpdump -nn -i any tcp port 80
tcpdump -nn -i any udp port 22
#port 为单端口,可使用portrange 22-80 选择多端口
5、数据包大小过滤
tcpdump -nn -s 0 -i any host 192.168.1.1 and greater 1000
# greater 字节数 过滤大于字节数的数据包
# less 字节数 过滤小于字节数的数据包
6、抓指定的数量、大小、时间的包
tcpdump -i any -c 包数量
# -c 包数量 指定抓多少包
# -w 写入多大的文件
# -C 数字单位为MB 写入文件为多大MB停止抓包
tcpdump -nn -G 5 -Z root -v -w %m-%d-%H:%M:%S.pcap #每隔五秒保存一次文件
# -G 时间秒 多久保存一次文件
7、报文Flags详解
Flags | 含义 |
---|---|
【S】 | SYN |
【.】 | ACK |
【S.】 | SYN、ACK |
【P.】 | PUSH |
【R.】 | RST |
【F.】 | FIN |
【DF】 | 不分片 |
【FP.】 | FIN、PUSH、ACK |
文章内容仅用于作者学习使用,如果内容侵犯您的权益,请立即联系作者删除,作者不承担任何法律责任。