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的安装和测试。非常适合Ubuntu和libpcap的新手。
ubuntu20.04无网安装libpcap-dev
我花了很长时间才更正了网上不全的步骤,这个步骤可以帮助你在ubuntu下正确使用libpcap库!附图说明
锐捷校园网认证的客户端加libpcap.so.0.6.2
使用Libpcap编写的网络嗅探器函数,使用QT编写的界面
基于libpcap的网络抓包文档及程序,适合新手以及资深开发者研究,非常清晰
这是我的一个安装libpcap实验环境的工具包,里面附了如何安装libpcap环境,帮助你快速进入其他实验。我的linux系统是Ubuntu16.04,发现可以运行。
libpcap的示例代码和英文资料,tcpdump-filters的规则同样适用于libpcap的过滤表达式
rar压缩包: 包含以下问价及安装方法。 bison-2.4.tar.gz flex-2.5.35.tar.gz libpcap-1.1.1.tar.gz m4-1.4.16.tar.gz Ubuntu下libpcap的安装和测试.pdf
编译需要libpcap库,一般Linux发行版里面安装libpcap包即可,在ubuntu中,需要libpcap-dev: sudo apt-get install libpcap-dev 从命令行进入源代码目录,运行make,应该很快就能生成zdclient,当然前提是系统...
Linux下Libpcap源码分析和包过滤机制
ubuntu锐捷认证的一些库,自己从国外下载的。
依存关系Libpcap: Ubuntu / Debian : apt-get安装libpcap-dev CentOS / Fedora : dnf安装libpcap-devel 拱门: pacman -S libpcap 或者,您可以下载并自行安装。安装用pip安装Libpcapy : pip3安装libpcapy例子...
中间可能有多余空格,去除下再运行,一般都能安装成功,如果不能可以先更新下sudo apt-get update sudo apt-get install zlib1g-dev libbz2-dev libssl-dev libncurses5-dev libsqlite3-dev libreadline-dev tk-dev...
Jpcap已在微软视窗(98/2000/XP/Vista)测试,Linux操作系统(Fedora的,的Mandriva,Ubuntu的),Mac OS X的(达尔文),FreeBSD和Solaris操作系统。 Jpcap可以捕获以太网的IPv4,IPv6的ARP协议/ RARP时,TCP,UDP...
4.关机断电(第一次),重新进入Ubuntu sudo ifconfig eth0 xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx为实际的IP地址 5.使用说明 (1)使用静态IP环境下执行认证操作 [root@hostname path]#xrgsu -a (2)使用DHCP动态IP环境下...
下面是我这篇文章的关键,也是用ubuntu安装的过程中极有可能遇到的问题,且都是在进行./configure编译过程中出现,两个问题如下: 问题1: configure: error: I couldn't find yacc (or bison or ...); make sure ...
下面是我这篇文章的关键,也是用ubuntu安装的过程中极有可能遇到的问题,且都是在进行./configure编译过程中出现,两个问题如下: 问题1: configure: error: I couldn't find yacc (or bison or ...); make sure ...
安装libpcap库教学,步骤详细简单,使用libpcap-1.8.1.tar编译成功。 安装libpcap库教学,步骤详细简单,使用libpcap-1.8.1.tar编译成功。