服务端抓包,一般采用tcpdump抓包,然后将抓包文件导出到本地,使用wireshark分析数据包文件。
tcpdump (dump the traffic on a network)是一个强大的网络分析命令行工具,可以抓取和分析经过系统的流量数据包。它通常被用作于网络故障分析工具以及安全工具。 支持多种选项和过滤规则,适用场景十分广泛。 由于它是命令行工具,因此适用于在远程服务器或者没有图形界面的设备中收集数据包以便于事后分析。 它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。
格式:tcpdump [选项] [过滤表达式]
tcpdump常用选项参数
-c:收到指定的数据包数目后,就停止进行抓取;
-w:把数据包数据写入指定的文件。
-e:输出链路层头部信息;
-i:指定抓取的网卡,默认是0号网络接口,any表示所有接口
-nn:不解析IP地址和端口号的名称;
-tttt:在每一行中输出由date处理的默认格式的时间戳;
-v:详细显示指令执行过程;
-vv:更详细显示指令执行过程;
-x:用十六进制字码列出数据包资料;
tcpdump常用过滤表达式
tcpdump host 210.27.48.1 :捕获所有210.27.48.1主机收到和发出所有的数据包
tcpdump -nn dst port 80:捕获所有经过80端口的数据。
tcpdump -nn tcp:tcp协议过滤
1.首先先用 如下命令列出系统可支持抓包的所有网络接口:
tcpdump-D
可以看到我的机器中所有可以抓包的网络接口。其中特殊接口 any
可用于抓取所有活动的网络接口的数据包。
2.使用如下命令:抓取p2p1网卡的流量,并保存到20190813.pcap文件中。
tcpdump-i p2p1-w20190813.pcap
文件名后缀为.pcap,保证wireshark可以解析。
如果不指定网卡,默认tcpdump只会监视第一个网络接口,一般是eth0
3.使用工具或应用客户端对服务器进行网络请求。
4.使用 Ctrl+C
来停止抓包,会打印出抓包的简要信息。
5.将文件下载到本地电脑。
6.使用Wireshark打开下载的20190813.pcap文件,然后就可以过滤分析这些数据包了。