当前位置:首页 » 操作系统 » libpcap源码

libpcap源码

发布时间: 2023-08-31 05:50:39

① ubuntu下没有没有pcap.h头文件,怎么办

今天在ubuntu下进行安装wireshark,费了很多时间,过程中出了很多错误,但最终安装成功了,这里写下自己的安装步骤和方法,供大家参考。
安装编译工具:
$sudo apt-get install build-essential
为了成功编译Wireshark,您需要安装GTK+的开发文件和GLib库(libraries)。
$sudo apt-get install libgtk2.0-dev libglib2.0-dev
安装Checkinstall以便管理您系统中直接由源代码编译安装的软件。
$sudo apt-get install checkinstall
wireshark源码 (页面中的source code)
下载后的文件名:wireshark-1.2.2.tar.bz2
cd到文件目录解压:$tar -xvf wireshark-1.2.2.tar.bz2
$cd wireshark-1.2.2
编译安装命令如下:
$./configure
$make
$sudo make install
其中make编译时间会比较长,这样下来就基本安装了。
下面是我这篇文章的关键,也是用ubuntu安装的过程中极有可能遇到的问题,且都是在进行./configure编译过程中出现,两个问题如下:
---------------------------------------------------------------------------------------------------------
问题1:
view plain to clipboardprint?
./configure执行到最后出错
checking for perl... /usr/bin/perl
checking for bison... no
checking for byacc... no
checking for yacc... no
configure: error: I couldn't find yacc (or bison or ...); make sure it's installed and in your path
./configure执行到最后出错
checking for perl... /usr/bin/perl
checking for bison... no
checking for byacc... no
checking for yacc... no
configure: error: I couldn't find yacc (or bison or ...); make sure it's installed and in your path
解决办法:
view plain to clipboardprint?
sudo apt-get install flex bison
sudo apt-get install flex bison
yacc(Yet Another Compiler Compiler),是Unix/linux上一个用来生成编译器的编译器(编译器代码生成器)。
如想深入了解google下。
问题2:
view plain to clipboardprint?
configure: error: Header file pcap.h not found; if you installed libpcap from source, did you also do "make install-incl", and if you installed a binary package of libpcap, is there also a developer's package of libpcap,
and did you also install that package?
configure: error: Header file pcap.h not found; if you installed libpcap from source, did you also do "make install-incl", and if you installed a binary package of libpcap, is there also a developer's package of libpcap,
and did you also install that package?
问题原因是ubuntu下缺少pcap.h等文件。
解决方法:
编译安装libpcap.
在www.tcpmp.org页面中可下载源码:libpcap-1.0.0.tar.gz
cd到文件目录:
view plain to clipboardprint?
$tar -xvf libpcap-1.0.0.tar.gz
$cd libpcap-1.0.0.tar.gz
$./configure
$make
$sudo make install
$tar -xvf libpcap-1.0.0.tar.gz
$cd libpcap-1.0.0.tar.gz
$./configure
$make
$sudo make install
----------------------------------------------------------------------------------------------------------------------------------------------------
采用上面的方法后再回到文章前面的步骤:
$cd wireshark-1.2.2编译安装:
$./configure
$make
$sudo make install
这样就安装好了。
启动方法:进入wireshark-1.2.2,输入命令:view plain to clipboardprint?
$sudo ./wireshark
$sudo ./wireshark
这里如果不用sudo,则wireshark找不到网络设备接口,这主要与权限有关,启动时注意下就行。

② linux下使用libpcap进行数据捕获,能够将捕获到的数据包保存为pcap文件

libpcap和winpcap最大的不同就是 内核缓冲区,用户缓冲区等都不能设置,没有提供这样的函数,要编译libpcap源码。
另外,linux Fedora 下使用libpcap时,找不到pcap.h,查找发现安装了libpcap的库但是没有头文件。解决办法是:
1.如何查看是否安装libpcap? #rpm -aq libpcap
2.查找libpcap源,yum search pcap
3.安装libpcap, yum install libpcap-devel.i386

③ Linux下按装snort遇到了包依赖关系.

要么yum install snort;
要么yum install rpmlib libdnet.1 libpcap.so.1 libsfbpf.so.0,然s后rpm -ivh snort-2.9.2.3-1.RHEL6.I386.RPM
要不rpm -ivh snort-2.9.2.3-1.RHEL6.I386.RPM --nodeps装上,但不一定能用

④ 请教tshark源码整合

tshark是wireshark的指令形式,有些情况下抓取网络包但是不想调用图形界面时,可以用tshark
1、下载libpcap源代码

http://www.tcpmp.org/

libpcap-x.x.x.tar.gz libpcap安装源文件

2. 解压缩libpcap

tar zxvf libpcap-x.x.x.tar.gz

进入到解压缩后的文件夹中 cd libpcap- x.x.x

3. 安装flex

apt-get install flex

4. 安装bison

apt-get install biso

5. 安装libpcap

./configure

make

make install

6. 安装tshark

apt-get install tshark

7、指令应用

tshark是wireshark命令行形式

1)指定要监听的接口

-i <接口名称>

比如-i eth2.如果不用-i指定监听的接口,则默认为接口列表中第一个非回环接口(-D打印接口列表)

2)可监听的接口列表

-D 打印接口列表

3)设置cap过滤条件

-f <过滤参数设置>

A. 设置监听的协议类型:-f udp/tcp/http 注:协议类型必须为小写

B. 设置源ip: -f“src host x.x.x.x”

C. 设置源端口: -f“src port xx”

D. 设置源ip和源端口: -f “srchost x.x.x.x and src port xx”

E. 设置目的ip: -f“dst host x.x.x.x”

F. 设置目的端口: -f“dst port xx”

G. 设置目的ip和端口: -f “dsthost x.x.x.x and port xx”

注:设置ip或端口时,必须用双引号

4)设置抓包数

-c <包数量> ,比如-c 15 表示抓15个包就停止

5) 设置cap包容量

-a filesize:NUM

其中NUM为filesize的包容量,用此命令需要用-w命令指定保存的文件包。NUM单位为KB

6)保存文件

-w <文件名称>

-w后面是要保存到的文件名字,也可以指定路径

7) 在屏幕中显示抓包的内容

-S

8)指定数据包的最大长度

-s <数据包长度>,单位为bytes

其他指令请参照在线帮助

⑤ 如何通过源码安装升级libpcap

安装libcap开发包后,再试试看 sudo apt-get install libpcap-dev sudo apt-get install libnids-dev sudo apt-get install libnet1-dev

热点内容
电脑配置够但为什么打lol掉帧 发布:2025-02-01 01:37:08 浏览:315
21款朗逸哪个配置比较划算 发布:2025-02-01 01:35:32 浏览:975
建筑动画片脚本 发布:2025-02-01 01:35:21 浏览:469
管家婆如何用阿里云服务器 发布:2025-02-01 01:29:09 浏览:648
解压耳放 发布:2025-02-01 01:20:18 浏览:175
cars算法 发布:2025-02-01 01:02:26 浏览:176
数据库超载 发布:2025-02-01 00:57:15 浏览:32
fgo安卓如何玩日服 发布:2025-02-01 00:49:40 浏览:715
sql2000服务管理器 发布:2025-02-01 00:48:02 浏览:678
荣耀畅玩什么配置 发布:2025-02-01 00:36:35 浏览:458