交叉编译tcpdump
1、简介tcpdump
针对网络抓包工具,大家肯定都听说过Wireshark,Wireshark支持Windows平台和Unix平台,功能当然也非常强大。但是在我们开发的一些嵌入式设备中,对图形界面的支持较弱,所以在Linux下的话,还是用tcpdump,tcpdump是采用命令行方式对网络接口数据包进行筛选抓取,可以生成抓包文件,用wireshark打开进行查看。
tcpdump官方网站,最新版本下载地址,我下载的是tcpdump-4.9.2.tar.gz 和 libpcap-1.8.1.tar.gz。
大家可以直接在这里下载:tcpdump资料
2、交叉编译tcpdump
首先添加交叉编译的环境变量:
export PATH=/opt/linaro-14.04/gcc-linaro-arm-linux-gnueabihf-4.8/bin/:$PATH
export CC=arm-linux-gnueabihf-gcc
tcpdump以来libpcap库,先交叉编译libpcap:
tar zxvf libpcap-1.8.1.tar.gz
cd libpcap-1.8.1/
./configure --prefix=$PWD/install --host=arm-linux-gnueabihf --with-pcap=linux
make
make install
交叉编译tcpdump:
tar zxvf tcpdump-4.9.2.tar.gz
cd tcpdump-4.9.2/
./configure --host=arm-linux-gnueabihf
make
然后在当前目录下看到编译出来的tcpdump,单文件,只有3.2M大小,直接拿到对应嵌入式平台上使用就可以了,不依赖其他库。
3、使用tcpdump
如何使用tcpdump?请仔细阅读[Manpage of TCPDUMP.html]。
然后抓包文件,可以拿出来放到Window上用Wireshark打开,进行详细分析。
网友评论