aulphar
驱动牛犊
驱动牛犊
  • 注册日期2004-02-23
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:2356回复:9

中间层如何把网卡设置为混合模式

楼主#
更多 发布于:2004-04-12 08:37
我写了一个中间层驱动用以抓取数据包,想让网卡工作在混合模式以抓取网络的所有包,要怎么设置
aulphar
驱动牛犊
驱动牛犊
  • 注册日期2004-02-23
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-04-12 17:38
哪位打侠说一下吧,还有一点我写了个函数用以把packet中的数据取到一个Uchar的Buffer中在sendonepacket和mpreturn中都没问题 但为什么在ptreceivepacket中 一运行就蓝屏,他们好像是在同一个level中的没理由,谁来帮帮我
yangguoo
驱动小牛
驱动小牛
  • 注册日期2003-07-09
  • 最后登录2008-07-07
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-04-13 09:50
同样的问题,这个帖子别沉了
[img]http://www.driverdevelop.com/forum/upload/Xman/2004-04-05_2004324183110706.jpg[/img][size=3]跟我比灌水,年[/size]
aulphar
驱动牛犊
驱动牛犊
  • 注册日期2004-02-23
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-04-13 13:47
哪位大侠帮个忙吧
yangguoo
驱动小牛
驱动小牛
  • 注册日期2003-07-09
  • 最后登录2008-07-07
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-04-13 15:48
#define NDIS_PACKET_TYPE_PROMISCUOUS 0x0020//这是置网卡混杂模式的
[img]http://www.driverdevelop.com/forum/upload/Xman/2004-04-05_2004324183110706.jpg[/img][size=3]跟我比灌水,年[/size]
aulphar
驱动牛犊
驱动牛犊
  • 注册日期2004-02-23
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-04-22 09:30
#define NDIS_PACKET_TYPE_PROMISCUOUS 0x0020//这是置网卡混杂模式的

一编译就说重定义,到底怎么使用
root60931
驱动大牛
驱动大牛
  • 注册日期2002-10-25
  • 最后登录2025-03-22
  • 粉丝2
  • 关注0
  • 积分1013分
  • 威望432点
  • 贡献值0点
  • 好评度311点
  • 原创分0分
  • 专家分0分
  • 社区居民
6楼#
发布于:2004-04-22 22:07
关注。。。。
好好学习,天天向上! root60931@gmail.com
yangguoo
驱动小牛
驱动小牛
  • 注册日期2003-07-09
  • 最后登录2008-07-07
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2004-04-23 11:44
http://www.driverdevelop.com/forum/viewthread.php?tid=4736
这是以前的帖子,没有答案,他的代码有道理
[img]http://www.driverdevelop.com/forum/upload/Xman/2004-04-05_2004324183110706.jpg[/img][size=3]跟我比灌水,年[/size]
aulphar
驱动牛犊
驱动牛犊
  • 注册日期2004-02-23
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2004-04-23 17:52
OidData=NDIS_PACKET_TYPE_PROMISCUOUS;
pRequest=ExAllocatePool(NonPagedPool,sizeof(NDIS_REQUEST));
if(NULL==pRequest)
{
DBGPRINT(\"Can not allocate buffer for requestn\");
break;
}
pRequest->RequestType=NdisRequestSetInformation;
pRequest->DATA.SET_INFORMATION.Oid=OID_GEN_CURRENT_PACKET_FILTER;
pRequest->DATA.SET_INFORMATION.InformationBuffer=&OidData;
pRequest->DATA.SET_INFORMATION.InformationBufferLength=sizeof(ULONG);

NdisRequest(&Sts,pAdapt->BindingHandle,pRequest);
if(Sts!=NDIS_STATUS_PENDING)
{
if(pRequest){

DBGPRINT(\"Free request.n\");
ExFreePool(pRequest);
}
}

我在mpinitialize中使用会说irql不对但NdisRequest应该是<=dispatch就行的,实在想不通,各位老大发个话吧
darkme
驱动牛犊
驱动牛犊
  • 注册日期2004-07-17
  • 最后登录2006-03-15
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2004-08-19 21:04
[quote]OidData=NDIS_PACKET_TYPE_PROMISCUOUS;
pRequest=ExAllocatePool(NonPagedPool,sizeof(NDIS_REQUEST));
if(NULL==pRequest)
{
DBGPRINT("Can not allocate buffer for requestn");
break;
}
pRequest->RequestType=NdisRequestSetInformation;
pRequest->DATA.SET_INFORMATION.Oid=OID_GEN_CURRENT_PACKET_FILTER;
pRequest->DATA.SET_INFORMATION.InformationBuffer=&OidData;
pRequest->DATA.SET_INFORMATION.InformationBufferLength=sizeof(ULONG);

NdisRequest(&Sts,pAdapt->BindingHandle,pRequest);
if(Sts!=NDIS_STATUS_PENDING)
{
if(pRequest){

DBGPRINT("Free request.n");
ExFreePool(pRequest);
}
}

我在mpinitialize中使用会说irql不对但NdisRequest应该是<=dispatch就行的,实在想不通,各位老大发个话吧 [/quote]
我也是遇到这样的问题啊,不知道老大调通了没?
游客

返回顶部