VC6.0下如何配置Winpcap

Winpcap提供了以下强大的功能:
1.捕获原始的数据包
2.设置filter,只捕获自己敢兴趣的数据包
3.方便的把捕获的数据包输出到文件和从文件输入
4.发送原始的数据包
5.统计网络流量
6.…..(其它还有很多,我不知道了)
二.Winpcap的安装使用方法
1.到http://winpcap.polito.it下载winpcap的安装包,程序员开发包。
2.执行安装包,这样你的机子就能运行winpcap程序了
3.解压开发包,在VC的option的include和lib中加入winpcap的
include和lib
4. 在你的程序中加入#include , #include .然后在工程的setting中加入预定义宏:WPCAP,HAVE_REMOTE.导入wpcap.lib库
5.就可以编写wpcap程序了
三.Winpcap的一些基本的功能的实现
一)捕获数据包
1. 枚举所有的可用的设备[pcap_findalldevs_ex](可选)
2. 通过名字打开一个设备[pcap_open()]
在这里可以打开一个文件,只是在打开这个文件之前需要通过pcap_createsrcstr创建相应的name string
3. 设置Filter[pcap_compile, pcap_setfilter] (可选)
4. 捕获数据
有几种捕获数据的方法(捕获数据的数据都是最原始的数据包,即包含数据链路层的数据头)
a. 是以回调的方式[ pcap_loop,pcap_dispatch() ].
这两种方法基本相同,底层收集数据包,当满足一定的条件(timeout 或者缓冲区满),就会调用回调函数,把收集到的原始数据包s,交给用户。他们返回的数据缓冲区包含多个包
b. pcap_next_ex()的方式
每当一个包到到达以后,pcap_next_ex就会返回,返回的数据缓冲区里只包涵一个包。
二)发送包
Winpcap中有发送单个包和发送多个包的方法。这里只说说发送单个包
1. 通过名字打开一个设备[pcap_open]
2. 自己构造一个原始数据包(这个数据包会不经过任何处理就发送出去,所以必须把包中的各个字段设置好。另外这个数据包是包含数据链路层报头的)
3. 使用pcap_sendpacket()发送数据包
三)统计网络流量
1. 通过名字打开一个设备[pcap_open]
通过 read_timeout来设置统计的时间间隔
2. 设置filter[pcap_compile, pcap_setfilter] (可选)
3. 设置设备的为统计模式[ pcap_setmode(MODE_STAT);]
4. 开始统计,pcap_loop/pcap_dispatch()
5.在回调函数中的参数中就包含了统计信息,如下图:
aspectratio="t" v:ext="edit">

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值