您的位置:首页 >> 编程开发 >> C/C++ >> 正文
C/C++ RSS
 

libpcap使用总结!

http://www.rdxx.com 05年09月13日 23:28 Blog.ChinaUnix.net 我要投稿

关键词: 总结 , CA , PC
libpcap 是一个开发sniffer的工具包。pcap:packet capture!

                    libpcap使用总结!
libpcap 是一个开发sniffer的工具包。pcap:packet capture!

libpcap的数据类型定义:

struct pcap_addr:网卡地址描述
{
    pcap_addr * next;
    sockaddr * addr;
    sockaddr * netmask;
    sockaddr *broadaddr;
    sockaddr *dstaddr;
};
pcap_addr * next;
    如果非空,指向链表中一个元素的指针;空表示链表中的最后一个元素。
sockaddr * addr;
    指向包含一个地址的sockaddr的结构的指针。
sockaddr * netmask;
    如果非空,指向包含相对于addr指向的地址的一个网络掩码的结构。
sockaddr * broadaddr;
    如果非空,指向包含相对于addr指向的地址的一个广播地址,如果网络不支持广播可能为空。
sockaddr * dstaddr;
    如果非空,指向一个相对于addr指向的源地址的目的地址,如果网络不支持点对点通讯,则为空。

struct pcap_file_header {
    bpf_u_int32 magic;
    u_short version_major;
    u_short version_minor;
    bpf_int32 thiszone;    /* gmt to local correction */
    bpf_u_int32 sigfigs;    /* accuracy of timestamps */
    bpf_u_int32 snaplen;    /* max length saved portion of each pkt */
    bpf_u_int32 linktype;    /* data link type (LINKTYPE_*) */
};

bpf_u_int32 magic;
    ????????????????????????????????
u_short version_major;
    Libpcap的主版本号。
u_shart version_minor;
    Libpcap的从版本号。
bpf_u_int32 sigfigs;
    时间戳描述。
bpf_u_int32 snaplen;
    保存的每个pkt的分片号的最大值。
bpf_u_int32 linktype;
    数据链的类型。
细节说明:
    libpcap dump文件头;
    libpcap dump文件中的第一个记录包含了一些标志的保存值,这些标志在打印阶段用到。这儿的很多域都是32位的int,所以compilers不用进行转化;这些文件需要具有跨层次的可交换性。
    无论如何不要改变结构的层次(包括仅仅改变这个结构中域的长度);


struct pcap_if {          /*网卡数据链的一个元素*/
    struct pcap_if *next;
    char *name;        /* name to hand to "pcap_open_live()" */
    char *description;    /* textual description of interface, or NULL */
    struct pcap_addr *addresses;
    u_int flags;        /* PCAP_IF_ interface flags */
};

pcap_if *next;
    如果非空,指向链的下一个元素。如果为空是链的最后一个元素。
char * name;
    指向一个字符串,该字符串是传给pcap_open_live()函数的设备名;
char * description;
    如果非空,指向一个对设备的人性化的描述字符串。
pcap_addr *addresses;
    指向网卡地址链中的第一个元素。
u_int flags;
    PCAP_IF_ 网卡的标志。现在唯一可用的标识是PCAP_IF_LOOKBACK,它被用来标识网卡是不是lookback网卡。

9 7 3 1 2 3 4 5 6 4 8 :


 
 
标签: 总结 , CA , PC 打印本文
 
 
  相关资讯
RSS
 
 
 
  热点搜索
 
 
 



Valid XHTML 1.0 Transitional
Copyright ©2005 - 2008 Rdxx.Com,All Rights Reserved
收藏本页
收藏本站