tcpdump小巧易用,在linux下只需使用yum install tcpdump,或者 apt-get install tcpdump即可安装。默认,tcpdump只截获报文头部,需要手工制定要抓的包的最大长度。
现在要解决的问题是:不但截获包的头部,还要截获包的内容。最简单的办法如下,使用命令:
tcpdump host 1.1.1.1 -i eth0 -s 65535 -w outputfile
参数解释如下:
- host指明抓包对象的IP,源和目标IP有1.1.1.1都会截获
- -i 指定网卡
- -s 指定最大抓包长度,这里65535应该是比较大的。这样等价于把包头和内容一起捕获
- -w 是将抓包结果保存到文件里,以便随后使用wireshark进行可视化显示
之后,将outputfile拷到有wireshark的Windows机器上,用wireshark打开,然后就可以使用 菜单中的Analyze -> Follow TCP Stream 来可视化包的交互过程,简单易用。