精华内容
下载资源
问答
  • typedef struct pcap pcap_t; typedef struct pcap_dumper pcap_dumper_t; typedef struct pcap_if pcap_if_t; typedef struct pcap_addr pcap_addr_t;
    typedef struct pcap pcap_t;
    typedef struct pcap_dumper pcap_dumper_t;
    typedef struct pcap_if pcap_if_t;
    typedef struct pcap_addr pcap_addr_t;
    
    //通用的每个包的信息,由libpcap提供
    //time stamp需要为struct timeval的形式,不管我们的系统
    //是支持32位的tv_sec还是64位的还是二者都支持。最终储存在
    //磁盘上的文件使用32位tv_sec,这个数据结构和它无关。32位
    //和64位版本的libpcap,即使它们位于同一个平台上,也需要使用
    //相应版本的struct timeval,even if that's not what the 
    //underlying packet capture mechanism supplies
    struct pcap_pkthdr{
    	struct timeval ts;		//time stamp
    	bpf_u_int32 caplen;		//指我们所捕获数据的实际长度
    	bpf_u_int32 len;		//指包的长度,也就是我们能捕获数据的最大长度
    }
    

    注意,caplen总小于等于len,因为有时候我们不需要捕获完整的包。例如我们只需要包的首部信息(判断这个包使用哪种协议),此时我们仅需要14字节(Ethernet)+20字节(IP)+20字节(TCP),因此最终我们只需54字节的数据即可。此时我们可以节省大量的保存并处理包其他数据的时间。

    展开全文
  • 这里用到的头文件是pcap.h,其中用到的有pcap_if_t数据类型。 pcap_if_t 保存网卡基本信息的类型。通常用指针来使用,pcap_if_t *alldevs。 当然,很多时候pcap_if_t可以用pcap_if进行替代。 struct pcap_if {...

      首先,利用终端配置好gcc的环境,然后还要配置上libpcap的环境,以上通过相关文章进行学习。

    <pcap.h>

        首先,先能得到数据包的包的长度。这里用到的头文件是pcap.h,其中用到的有pcap_if_t数据类型。

      pcap_if_t 保存网卡基本信息的类型。通常用指针来使用,pcap_if_t *alldevs。

      当然,很多时候pcap_if_t可以用pcap_if进行替代。

    struct pcap_if
    {
        struct pcap_if *next;//指向下一个网卡
        char *name;//网卡的标识符,唯一识别一个网卡
        char *description;//用来描述网卡
        struct pcap_addr*address;//网卡的地址,包括IP地址,网络掩码,广播地址等,类型中的成员变量在后面会写到
        bpf_u_int32 flags;//接口标志
    }
    

      然后写一个简单的测试。

    #include <pcap.h>
    #include <stdlib.h>
    #include <stdio.h>
    #include <string.h>
    
    int main()
    {
        pcap_if_t *alldevs;
        char errbuf[PCAP_ERRBUF_SIZE];
        if(pcap_findalldevs(&alldevs, errbuf) == -1)
        {
            printf("Error in pcap_findalldevs: %s\n", errbuf);
            exit(EXIT_FAILURE);
        }
        for(; device->name != NULL; device = device->next)
        {
            printf("Device name: %s\n", device->name);
            printf("Descripetion: %s\n", device->description);
        }
        pcap_freealldevs(alldevs);
        return 0;
    }

      其中,PCAP_ERRBUF_SIZE恒定为256,可以认为#define PCAP_ERRBUF_SIZE 256 。

    pcap_findalldevs(pcap_if_t **, char *) 函数

      函数pcap_findalldevs的作用是获取网络设备,pcap_open_live要打开的网卡名称, 在linux中一般都选第一块网卡。

    功能:列出当前所有可用的网络设备(网卡)

    所在头文件:pcap.h

    参数说明: pcap_if_t ** alldevsp 指向pcap_if_t结构列表的指针的地址。实际使用时,声明一个pcap_if_t结构的指针(pcap_if_t *alldevsp),然后把该地址作为参数传入即可(&alldevs)。
    char * errbuf  错误缓冲区,要求长度至少为PCAP_ERRBUF_SIZE字节。

    返回值: -1:出错,将会向错误缓冲中填充错误信息,错误信息为ASCII码,可以直接打印出来。

    返回值: 0:正确返回,可以使用alldevs访问所有网络硬件。

     
    

    另外,EXIT_FAILURE 可以看作#define EXIT_FAILURE 1。

    pcap_freealldevs(pcap_if_t *)函数

    pcap_freealldevs(alldevs);

    功能:释放所指的设备

    参数:alldevs指向设备的pcap_if_t类型

    无返回值

    如何执行/使用

      在终端cd到你的“main.c”文件的当前目录之下,然后执行 :

    gcc main.c -o pcap -lpcap

    然后再用sudo执行:

    sudo ./pcap

    然后就可以在终端中看到你的包的信息了。

     如上图所示。

    展开全文
  • fatal error: pcap.h: 没有那个文件或目录 home/ktd/catkin_ws/src/rslidar_sdk/src/rs_driver/src/rs_driver/common/common_header.h:93:10: fatal error: pcap.h: 没有那个文件或目录 #include <pcap.h> ...

    fatal error: pcap.h: 没有那个文件或目录

     

    home/ktd/catkin_ws/src/rslidar_sdk/src/rs_driver/src/rs_driver/common/common_header.h:93:10: fatal error: pcap.h: 没有那个文件或目录
     #include <pcap.h>


    解决办法

    sudo apt-get install libpcap-dev

     

    展开全文
  • 1、首先这个报错是因为没有安装libcap造成; centos下比较简单: 下载地址:http://www.tcpdump.org/ ... 解压软件包:tarzxflibpcap-1.0.0.tar.gz ...进入解压后的目录,输入命令行: ...备注:如果./con...

    1、首先这个报错是因为没有安装libcap造成;

    centos下比较简单:

     下载地址:http://www.tcpdump.org/
      下载版本:wget -c http://www.tcpdump.org/release/libpcap-1.5.3.tar.gz

       解压软件包:tar zxf libpcap-1.0.0.tar.gz

      进入解压后的目录,输入命令行:
       命令如下:
       ./configure
       make
       make install

    备注:如果./configure报错,这需要安装两个依赖;

     yum -y install flex 

     yum -y install bison

    Ubuntu下:

    sudo apt-get install flex

    sudo apt-get install bison

    tar -zxvf libpcap-1.4.0.tar.gz

    cd libpcap-1.4.0

    sudo ./configure

    sudo make

    sudo make install

    备注:ubuntu下 flex和 biosn 这两个依赖,一般情况下都没有,所以必须装。

    2、QT pro文件引用位置不同

    ubutnu下: 

     unix: LIBS += /usr/local/lib/libpcap.a
    unix: INCLUDEPATH += /usr/local/include

    centos下:

    unix: INCLUDEPATH += /usr/include
    unix: LIBS += /usr/lib64/libpcap.a

     

    以上两步解决,在项目内可直接调用 #include <pcap.h>

    展开全文
  • 安装镭神ros驱动包遇到的问题,记录一下 就是安装,就可以 sudo apt-get install libpcap0.8-dev 最好安装完,重新加载一下 sudo ldconfig
  • VSC++ 无法加载“pcap.h

    千次阅读 2020-07-10 23:19:47
    尝试开始就发现无法加载“pcap.h”头文件。好了,说解决办法吧。 在查阅资料的过程中还发现,有些朋友给的解决方案中,工具->选项->项目和解决方案->vc++目录功能被拿掉了。如下图所示。 只是挪了地方。...
  • 提示很明显,没有pcap.h这个文件,因为代码里面用了#include <pcap.h>,在编译时,没有找到这个文件。 这里就需要安装libpcap这个工具包,安装命令如下: sudo apt-get install libpcap-dev 之后就可以在 ...
  • 问题描述 fatal error: pcap.h: 没有那个文件或目录 解决办法 sudo apt-get install libpcap-dev
  • [root@tiger-pit-s1 gowork]# go get github....# github.com/buger/goreplay/vendor/github.com/google/gopacket/pcap src/github.com/buger/goreplay/vendor/github.com/google/gopacket/pcap/pcap_uni...
  • amd64-2.7\Release \pcapdumper.obj pcapdumper.cc pcapdumper.cc(12) : fatal error C1083: Cannot open include file: 'pcap.h': No such file or directory error: command 'cl.exe' failed with exit status 2 ...
  • <pcap.h> # define MAXBYTE2CAPTURE 2048 void processPacket ( u_char * arg , const struct pcap_pkthdr * pkthdr , const u_char * packet ) { int i = 0 , * counter = ( int...
  • ubuntu16.04 在编译ROS包时候,发现系统提示无法找到pcap.h以及nlopt.hpp文件,原因是系统中缺少对应的头文件以及库,通过apt方法获取 # 获取libpcap sudo apt-get install libpcap-dev #获取libnlopt sudo apt-get ...
  • 环境:ubuntu 18.04 python3.6 ...“pcapdumper.cc:11:10: fatal error: pcap.h: No such file or directory #include <pcap.h> ^~~~~~~~ compilation terminated. error: Setup script exited...
  • pcap.h

    千次阅读 2014-10-30 11:38:18
    * @(#) $Header: /cvs/Darwin/src/live/libpcap/libpcap/pcap.h,v 1.1.1.1 2001/07/07 00:41:36 bbraun Exp $ (LBL) */ #ifndef lib_pcap_h #define lib_pcap_h #include <sys/types.h> #include <sys/time.h> ...
  • ubuntu 编译出错 udpcksum.h:2:18: fatal error: pcap.h: 没有那个文件或目录 安装库: libpcap-1.9.1 libnet 执行以下命令: sudo ./configure sudo make sudo make install
  • linux系统找不到Pcap.h

    千次阅读 2018-11-10 17:33:01
    First apt-get install libpcap0.8-dev to install libpcap sudo apt-get install libcap-dev Second sudo apt-get install libpcap0.8-dev gcc example_pcap.c -o example_pcap -lpcap
  • [dpdk-dev] ...lib/librte_pmd_pcap/rte_eth_pcap.c:47:18: fatal error: pcap.h: No such file or directory Thomas F Herbert therbert at redhat.com Fri May 22 13:57:10 CEST 2015 Previous message: [dpd....
  • 问题 velodyne_driver/input.h:37:10: fatal error: pcap.h: No such file or directory #include &lt;pcap.h&gt; 解决办法 sudo apt-get install libpcap0.8-dev
  • 如果出现fatal error C1083: Cannot open include file: ‘pcap.h’: No such file or directory这个问题,就需要添加了。 下面是具体添加步骤: 第一步: 点菜单栏上的“工具”,再点击下拉菜单中的“选项”弹...
  • python2.7 安装pypcap出错 pcap.h not found

    千次阅读 2016-11-30 13:21:48
    error: Microsoft Visual C++ 9.0 is required (Unable to find vcvarsall.bat). pcap.h not found
  • Pcap.h no such file and directory

    千次阅读 2017-04-26 10:49:25
    when I did catkin_make, I had this fatal error. I saw this command in other's blog sudo apt-get install libpcap0.8-dev to install libpcap of course you can download from github https://github.c
  • pcap.h中WIN32宏定义问题

    千次阅读 2016-05-25 17:06:53
    error C1083:无法打开包括文件:“sys/time.h”:No such file or direcory ...注意,lib.h需要在pcap.h之后,否则显示声明与函数(packet_handler)不兼容。 以下转自:http://patmusing.blog.1
  • VS2012 无法加载“pcap.h

    万次阅读 2016-06-17 17:42:43
    尝试开始就发现无法加载“pcap.h”头文件。好了,说解决办法吧。 在查阅资料的过程中还发现,有些朋友给的解决方案中,工具->选项->项目和解决方案->vc++目录功能被拿掉了。如下图所示。 只是挪了地
  • 错误1 解决办法: ...错误2:fatal error: pcap.h: 没有那个文件或目录 解决办法: sudo apt-get install libpcap0.8-dev 参考: https://blog.csdn.net/xingdou520/article/details/84861144
  • linux下安装pcap qt使用pcap.h

    千次阅读 2014-04-25 22:11:14
    但是qt的默认头文件等在/usr/include下面,这导致我们要将/usr/local/include/ 下面的pcap-bpf.h pcap.h pcap-namedb.hpcap文件夹拷贝到/usr/include下面 要正确跑动qt的pcap项目还要的qt的.pro文件...
  • 端口扫描\winpcap环境部署(VC6.0出现找不到“pcap.h'”文件解决方法
  • 按照网上的步骤都已经配置好了,四个dll都有,为什么还是头文件报错![图片说明](https://img-ask.csdn.net/upload/202005/02/1588408193_750911.jpg)![图片说明]... 我是小白,请大佬指教一下,急!...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 8,047
精华内容 3,218
关键字:

pcap.h

友情链接: tanchishe.rar