http://blog.csdn.net/mzlqh/article/details/7621230
环境为Ubuntu10.10+libpcap-1.1.1.tar.gz
1、Libpcap下载
Libpcap的官方网站是http://tcpdump.org/release,可以从该网站下载最新版本,当前系统使用的Libpcap安装文件是libpcap-1.1.1.tar.gz
2、解压
tar zxvf libpcap-1.1.1.tar.gz
3、配置
切换近libpcap解压目录libpcap-1.1.1,使用configure配置命令生成Makefile文件。
./configure
在这一步可能会遇到缺少flex包的问题:
configure: error: Your operating system 's lex is insufficient to compile libpcap. flex is a lex replacement that has many advantages, including being able to compile libpcap. For more information, see http: //www.gnu.org/software/flex/flex.html .
|
解决方法:
sudo apt-get install flex |
4、编译
make
可能会遇到yacc错误:
yacc -d ./parse.y<br>make: yacc: Command not found<br>make: *** [parse.c] Error 127 |
解决方法:
sudo apt-get install -y byacc |
5、安装
sudo make install
注意:要加上sudo,不然会出现权限问题。
6、示例
testlibpcap.c文件,目的是为了查询网络设备。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
#include<stdio.h> #include<stdlib.h> #include<pcap.h> #include<errno.h> #include<sys/socket.h> #include<netinet/in.h> #include<arpa/inet.h> int main( int argc, char *argv[])
{ char *dev;
char *net;
char *mask;
int ret;
char errbuf[PCAP_ERRBUF_SIZE];
bpf_u_int32 netp;
bpf_u_int32 maskp;
struct in_addr addr;
dev = pcap_lookupdev(errbuf);
if (dev ==NULL)
{
printf ( "%s\n" ,errbuf);
exit (1);
}
printf ( "设备名:%s\n" ,dev);
return 0;
} |
然后编译:
gcc testlibpcap.c -lpcap -o testlibpcap |
gcc编译后,运行./testlibpcap会出错:
: error while loading shared libraries: libpcap.so.1: cannot open shared object file: No such file or directory
|
解决方法:
到/usr/lib下找到libpcap.so.1.x.x文件,复制一个备份,重命名为libpcap.so.1,将libpcap.so.1后拷贝文件到/usr/lib目录下,就可以了。
还有一点需要注意:
如果直接这样运行./testlibpcap,结果肯定是“no suitable device found”,原因是权限不够,所以,还需要这样运行才能结果正常。
sudo ./testlibpcap
相关推荐
### Ubuntu下libpcap的安装与测试 #### 一、libpcap简介 libpcap 是一种用于捕获网络数据包的跨平台库,广泛应用于网络监控、安全审计及数据分析等领域。它支持多种操作系统,包括但不限于 Linux、FreeBSD、NetBSD...
如果你正在无网络环境下工作,并且需要在Ubuntu 20.04上安装libpcap-dev,下面是一份详尽的指南。 首先,你需要理解libpcap-dev的作用。它包含了头文件和库文件,这些文件是开发者在编写需要利用libpcap功能的程序...
Ubuntu 下安装 libpcap 库详解 在 Ubuntu 操作系统中,安装 libpcap 库是一件非常重要的事情,因為 libpcap 库是许多网络抓包工具的基础组件,如 tcpdump、Wireshark 等。然而,网上关于安装 libpcap 库的步骤却...
本文将详细介绍如何在Ubuntu上通过离线源码安装Wireshark,包括安装步骤、可能遇到的问题以及相应的解决方案。 首先,我们需要准备以下资源: 1. Wireshark的源码包:wireshark-2.4.2.tar.xz 2. 必要的依赖库:...
在Ubuntu 20.04上离线安装Wireshark 3.2.3,需要遵循一系列步骤,因为通常我们是通过apt包管理器在线安装软件的。离线安装则需要手动下载软件包并配置依赖关系。 1. **获取Wireshark 3.2.3的软件包** 首先,你需要...
在编译和安装libpcap后,可以使用arm-linux-gcc编译器编译自己的抓包程序。例如,使用arm-linux-gcc命令编译test.c文件,链接libpcap库,生成一个可执行文件。然后,将其移植到开发板上,运行程序。 相关概念 * ...
在大多数Linux发行版中,可以通过包管理器如`apt`(Ubuntu/Debian)或`yum`(CentOS/RHEL)来安装libpcap: ```bash # Ubuntu/Debian sudo apt-get update sudo apt-get install libpcap-dev # CentOS/RHEL sudo ...
需要安装Samba DC,官网安装依赖包包括libpcap-dev、libpopt-dev、libreadline-dev、libsystemd-dev、libtasn1-bin、libtasn1-dev、libunwind-dev、lmdb-utils、locales、lsb-release、make、mawk、mingw-w64、patch...
Libpcap和QT是两种在IT领域中广泛应用的开源工具,它们分别专注于网络数据包捕获和图形用户界面设计。本篇文章将深入探讨如何结合两者,利用Libpcap的强大网络嗅探功能与QT的易用界面,构建一个功能丰富的网络嗅探器...
在 "gcc&libpcap.zip" 压缩包中,可能包含了关于如何在特定环境中安装和使用 GCC 与 libpcap 的指南、示例代码或其他相关资源。解压后,按照文档指示进行操作,可以帮助你更好地理解和运用这两个工具。对于初学者,...
**基于libpcap的网卡抓包技术** libpcap是一个强大的开源库,主要用于在网络层进行数据包捕获。这个库被广泛应用于网络监控、数据分析、安全检测等多个领域。libpcap提供了对底层网络接口的访问,使得开发者可以...
### Ubuntu 12.04 安装 Snort 相关知识点详解 #### 一、简介 本指南将详细介绍如何在 Ubuntu 12.04 上安装 Snort,并结合 Barnyard2、PulledPork 和 BASE 等辅助软件来增强 Snort 的功能。Snort 是一款强大的网络...
本人只在ubuntu 12.04 32位下进行过安装 包括安装需要的包,安装文档" 描述部分强调了作者的实践是在32位的Ubuntu 12.04上进行的,这意味着教程可能不适用于其他版本或架构的Ubuntu。同时,提到了“安装需要的包”...
在Ubuntu系统中,libpcap通常作为开发库安装,开发者可以通过`apt-get install libpcap-dev`命令来获取。安装后,开发者可以在自己的应用程序中链接libpcap库,从而实现数据包捕获功能。libpcap提供了诸如`pcap_open...
### 在Ubuntu 14.04下安装GNU Radio #### 安装背景及意义 GNU Radio 是一个开源软件开发工具套件,它提供了一个信号处理框架来构建软件定义的无线电应用。用户可以通过简单的图形界面或者Python脚本来组合现有的...
在Linux服务器上安装tcpreplay,需要的离线包 ...5.安装完libpcap后,可以安装tcpreplay,进入tcpreplay-4.1.2执行上一步的三个命令编译安装。安装完成后,执行tcpreplay -vesion能查看版本信息,-help查看帮助信息
这是我的一个安装libpcap实验环境的工具包,里面附了如何安装libpcap环境,帮助你快速进入其他实验。我的linux系统是Ubuntu16.04,发现可以运行。
在Linux系统上,通常可以使用包管理器进行安装,如在Debian/Ubuntu系统上使用`apt-get install libpcap-dev`命令。 编写程序捕获数据包时,需要调用Libpcap提供的API进行以下步骤操作: 1. 打开网络设备以监听...
2. **安装依赖项**:使用`sudo apt-get install libdumbnet1 libnet1-dev libpcap0.8-dev flex bison make gcc g++ autoconf automake libtool zlib1g-dev dpkg-dev`命令安装Snort所需的所有依赖库。 3. **下载...
在Linux操作系统中,libpcap库是一个强大的网络数据包捕获库,被广泛用于开发网络监控和分析工具,如tcpdump。本示例程序及参考资料将帮助你理解如何使用libpcap来抓取网络流量,并将捕获的数据保存到文件中。 首先...