社区
网络编程
帖子详情
如何使用winpcap对两块网卡同时抓包
wanderfox
2006-03-24 11:09:31
在vc6环境下创建了两个CWinThread的线程,企图用winpcap对两块网卡同时抓包,把结果返回到对话框的ListCtrl中,但是好像两个线程同时抓包会死锁?一个线程就没问题?请问这是怎么回事啊?
...全文
207
2
打赏
收藏
如何使用winpcap对两块网卡同时抓包
在vc6环境下创建了两个CWinThread的线程,企图用winpcap对两块网卡同时抓包,把结果返回到对话框的ListCtrl中,但是好像两个线程同时抓包会死锁?一个线程就没问题?请问这是怎么回事啊?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lonelyeagle
2006-04-05
打赏
举报
回复
//枚举所有网卡
pcap_findalldevs(&alldevs,g_strErrorBuffer);
for(adapterindex =0 ,d=alldevs;d;d=d->next) /
{
g_AdapterName[adapterindex]=(char *)malloc(strlen(d->name)+1);
memset(g_AdapterName[adapterindex],0,strlen(d->name)+1);
strcpy(g_AdapterName[adapterindex++],d->name);
}
pcap_freealldevs(alldevs); // 释放alldev资源
//对网卡逐个绑定,指定相同的回调函数static_PacketHandler,
for(i=0; i<g_unAdapterNumber; i++)
{
g_pPcapDevice[i] = pcap_open_live(g_AdapterName[i], 2000, 1, 1000, g_strErrorBuffer);
if (!g_pPcapDevice[i])
{
bInitPcap = false;
break;
}
//build the libpcap bpf expression
char bpf[1024]={0};
sprintf(bpf," ((ip proto \\tcp) and ((port 139) or (port 445)))");
if (-1 == pcap_compile(g_pPcapDevice[i], &fcode, bpf, 1, 0))
{
DebugDumpA(DEBUG_CLIENT_SHAREMON,"ShareMon : Initialization libpcap fail, pcap_compile fail, %s\n", pcap_geterr(g_pPcapDevice[i]));
bInitPcap = false;
break;
}
if (-1 == pcap_setfilter(g_pPcapDevice[i], &fcode))
{
DebugDumpA(DEBUG_CLIENT_SHAREMON,"ShareMon : Initialization libpcap fail, pcap_setfilter fail, %s\n", pcap_geterr(g_pPcapDevice[i]));
bInitPcap = false;
break;
}
pcap_dispatch(g_pPcapDevice[i], 0, static_PacketHandler, (UCHAR*)pthis);
}
oyljerry
2006-03-24
打赏
举报
回复
先找出具体什么死锁了
利用GNS搭建思科模拟测试环境
利用GNS搭建思科模拟测试环境,GNS软件的教程,利用GNS辅助思科测试
Win
dos下通过W
pcap
抓包
实现两个
网卡
桥接
1. 背景: 一台电脑允许接多个网口,当然大部分只有一个网口其余都是USB扩展而来,而每个网口之间需要配置不同的网段IP,这就造成了和同一台电脑不通网口相连的设备处于不通的网段,虽然电脑与两台设备沟通无压力,但是两台设备间通信由于处于不通网段而变得相对比较困难。对于开发人员,这并不是一个问题,直接接到交换机或者HUB上一样工作。。。而且扩展性也无与伦比。。。对一般
win
...
实现网络
抓包
功能的
Win
pcap
工具开发指南
Win
pcap
是一个强大的网络分析工具库,广泛应用于
Win
dows平台上网络通信数据包的捕获和分析。它的核心功能允许用户无需依赖特定的操作系统协议实现即可直接访问网络层数据。数据链路层是OSI模型的第二层,主要负责网络中相邻节点之间的数据传输。在这一层面上,网络
抓包
工具可以捕获到帧(Frames),这是网络接口卡(NIC)之间传输的最基本的数据单元。每个数据帧都包含了源地址、目的地址以及数据载荷。
Win
Pcap
驱动的双网络
抓包
分析工具及其图形界面设计
Win
Pcap
是针对
Win
dows系列操作系统的一套开源库,它提供了一系列API,允许用户在无须依赖特定驱动程序的情况下进行数据包的捕获和发送。此外,
Win
Pcap
支持过滤器、统计和网络监控等高级功能,使得开发者能够轻松构建网络分析工具。数据包过滤技术是一种网络安全机制,它通过检查网络数据包的头部信息来决定是否允许其通过网络设备(如防火墙或路由器)进入目标网络。过滤规则通常基于源IP地址、目标IP地址、端口号、协议类型等信息来构建。
Win
Pcap
4.1.3安装包及网络
抓包
环境搭建指南
Win
Pcap
(
Win
dows Packet Capture)是一个为
Win
dows平台设计的网络数据包捕获与传输库,其核心功能基于底层驱动实现,能够绕过协议栈直接访问
网卡
数据。它由两个主要部分组成:用户态的动态链接库(w
pcap
.dll)和内核态的网络驱动(n
pcap
或旧版驱动),使得应用程序可以以高效率、低延迟的方式捕获和发送原始数据包。其广泛应用于网络监控、协议解析、入侵检测系统(IDS)、流量分析以及网络安全审计等领域。
网络编程
18,357
社区成员
64,164
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章