专业做微视频的网站,小米网站开发语言,网络营销主要做哪些事情,杭州设计门户网站说明#xff1a;tcpdump是一个在网络设备调试中一个非常重要的工具#xff0c;它并不像hexdump等工具集成在busybox里面#xff0c;也不像其他的软件一样只需要依赖linux标准的库就可以实现#xff0c;它需要pcap相关的库和加密的相关库。
本文主要是基于realtek 83系列的…说明tcpdump是一个在网络设备调试中一个非常重要的工具它并不像hexdump等工具集成在busybox里面也不像其他的软件一样只需要依赖linux标准的库就可以实现它需要pcap相关的库和加密的相关库。
本文主要是基于realtek 83系列的linux环境其他的嵌入式的设备可能不通用。
一、解压下图所示的两个压缩文件一个是库文件一个是程序本体 二、在libpcap上打开终端输入命令
./configure --disable-dbus 完成后如下图所示没有报错因为没有用到dbus这个功能编译后会有bug,所以就不打开了 三、到tcpdump本体目录下执行
./configure
即可 在当前目录下会生成tcpdump的文件当然这个程序是在主机下面的嵌入式设备是无法运行的。如下图所示该程序就是ubuntu系统下可运行的程序。 四、打开libpcap目录下的makefile文件将其中的gcc和ar替换成指定的交叉编译工具链的路径如图所示 当然现在还是有问题的直接make去编译会出现如下的报错当然了如果没有报错说明你的交叉编译工具是支持对变量名进行“说明”的这个说明是没有一点用的如果出现下面的报错直接删除restrict即可。 找到报错位置如下图所示 删除里面的restrict当然了有两个地方
还有定义的源文件位置也要删除。 五、将这些的头文件加入到交叉编译工具中一部分是头文件一部分是库文件 复制它们到如下图所示的文件夹下面即可 同样的方法复制openssl的库到交叉编译的库中同样是一个头文件夹和一个库文件的文件夹而openssl的编译可以参考我以前写的文章。 六、 出现了crypto这个报错那么是openssl那边没有这个库的文件 复制到tcpdump的文件夹下即可如下图所示 --float28的问题只需要删除tcpdump的文件夹下的makefile中的一句即可如下图所示的标记的位置 删除后再编译没有问题直接通过 七、将程序复制到嵌入式设备后添加x的属性后运行如果出现如下的问题用ln链接一下即可。 最终的效果如下图所示ctrlc后中断程序运行就可以看到指定的文件和包了 将抓到的报文用wireshark打开可以看到报文了