社区
网络编程
帖子详情
如何使用winpcap对两块网卡同时抓包
wanderfox
2006-03-24 11:09:31
在vc6环境下创建了两个CWinThread的线程,企图用winpcap对两块网卡同时抓包,把结果返回到对话框的ListCtrl中,但是好像两个线程同时抓包会死锁?一个线程就没问题?请问这是怎么回事啊?
...全文
210
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
...
Java
抓包
实战(基于jnet
pcap
与
Win
Pcap
)——从环境配置到
网卡
嗅探
本文详细介绍了在Java环境中
使用
jnet
pcap
库进行网络
抓包
的实战指南。内容涵盖从理解Java为何需要借助JNI调用
Win
Pcap
/N
pcap
等底层库进行
抓包
的原理,到具体的环境搭建步骤,包括安装N
pcap
驱动、配置Maven依赖以及部署jnet
pcap
.dll文件。文章还演示了如何列出并筛选
网卡
、打开
网卡
设置
抓包
参数、编写核心
抓包
循环解析数据包,以及
使用
BPF语法过滤流量,帮助开发者快速掌握Java
抓包
的核心技术。
实现网络
抓包
功能的
Win
pcap
工具开发指南
Win
pcap
是一个强大的网络分析工具库,广泛应用于
Win
dows平台上网络通信数据包的捕获和分析。它的核心功能允许用户无需依赖特定的操作系统协议实现即可直接访问网络层数据。数据链路层是OSI模型的第二层,主要负责网络中相邻节点之间的数据传输。在这一层面上,网络
抓包
工具可以捕获到帧(Frames),这是网络接口卡(NIC)之间传输的最基本的数据单元。每个数据帧都包含了源地址、目的地址以及数据载荷。
Win
Pcap
驱动的双网络
抓包
分析工具及其图形界面设计
Win
Pcap
是针对
Win
dows系列操作系统的一套开源库,它提供了一系列API,允许用户在无须依赖特定驱动程序的情况下进行数据包的捕获和发送。此外,
Win
Pcap
支持过滤器、统计和网络监控等高级功能,使得开发者能够轻松构建网络分析工具。数据包过滤技术是一种网络安全机制,它通过检查网络数据包的头部信息来决定是否允许其通过网络设备(如防火墙或路由器)进入目标网络。过滤规则通常基于源IP地址、目标IP地址、端口号、协议类型等信息来构建。
网络编程
18,357
社区成员
64,165
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章