介绍
作用: 对网络上的数据包进行截获的包分析工具
常用参数:
-a 将网络地址和广播地址转变成名字 -e 在输出行打印出数据链路层的头部信息 -i 指定监听的网络接口 -n 不进行IP地址到主机名的转换 -nn: 表示以ip和port的方式显示来源主机和目的主机,而不是用主机名和服务 -A: 以ascii的方式显示数据包,抓取web数据时很有用 -X: 数据包将会以16进制和ascii的方式显示 -v 输出一个稍微详细的信息,例如在ip包中可以包括ttl和服务类型的信息
表达式说明:host 主机;port 端口;src host 发包主机;dst host 收包主机.
常用命令
- 抓取包含端口22的数据包
tcpdump -i eth0 -vnn port 22
- 抓取源ip是tencent的数据包。
tcpdump -i eth0 -vnn src host ww.tencent.com
- 抓取目的ip是tencent数据包
tcpdump -i eth0 -vnn dst host ww.tencent.com
- 在传输内容中过滤gccs关键字
tcpdump -i eth0 -en -A | grep gccs
- curl主机未开放的端口时抓包, 并将记录写到service.pcap文件
tcpdump -n port 6378 -w service.pcap
报文分析
报文分析一般会配合wireshark工具使用
[S] 表示这是一个SYN请求
[.] 表示这是一个ACK确认包,(client)SYN->(server)SYN->(client)ACK 就是3次握手过程
[P] 表示这个是一个数据推送,可以是从服务器端向客户端推送,也可以从客户端向服务器端推
[F] 表示这是一个FIN包,是关闭连接操作,client/server都有可能发起
[R] 表示这是一个RST包,与F包作用相同,但RST表示连接关闭时,仍然有数据未被处理。可以理解为是强制切断连接
win 342是指滑动窗口大小
length 12指数据包的大小