如题我想在网卡往外发包时,先截获包然后修改mac地址,用ndis能做到吗?用小端口还是中间层或者其他的解决办法?
回复(12) 2007-07-02 22:53 来自版块 - NDIS网络接口开发
表情
xcdyjx不好意思,不是抓不到。而是忘了htons()了。嘻嘻。 (2007-07-12 22:41)
xcdyjx我用PASSTHRU中的MPSendPackets总是抓不到tcp包。 我拷贝包描述符的所有缓冲区中的内容,通过DebugPrint显示长度。 然后以mac+ip head+tcp/udp head的格式解析,但tcp/udp head描述的数据长度总是大于通过NdisQuery...(2007-07-12 19:32)
ProPlayboy ...呜。。。有必要吗?MiniPort...改MAC(2007-07-05 01:13)
zhaock1.小端口驱动主要控制网卡.你要做协议相关的,用imd,或者protocol有的时候也可以 2.arp,是在tcpip.sys中实现的.属于协议层驱动 3.ndiswan.sys是imd驱动,实现的ppp协议.(2007-07-04 09:42)
xcdyjxZHAOCK,请不吝赐教. 指点指点我.我现在对NDIS的层次结构还是比较模糊,(2007-07-03 17:47)
xcdyjx再问一下, 小端口驱动是否主要是偏向于控制网卡的,象什么中断之类的? 我如果要做自己的链路层协议还是应该用中间层来写? 比如:ARP或PPP协议应该用中间层还是小端口? WINDOWS的NDISWAN.SYS应该是PPP协议的驱动吧,他是用中间层作的还是小端口作的? 多谢了!(2007-07-03 15:37)
zhaock没问题(2007-07-03 14:09)
xcdyjxzhaock, 先行谢过啦. 我实验一把先,有问题再来请教. 对了,我想用passthru来做,我觉得改一下他的MtSendPackages()就可以了,您觉得呢?(2007-07-03 13:15)
zhaock不会修改回去!(2007-07-03 12:19)
xcdyjx就是说,用中间层截获网络层发往网卡的包后,填上自己想要的MAC再经网卡发出后,MAC会被改回网卡自己的MAC吗. 例如: 网卡的MAC为A,我截获到包后我把MAC填为B,然后经网卡发出.我要问的是,这个数据包的MAC回被改回到A吗?如果会,我有什么办法让他不被改回A?(2007-07-03 11:46)

返回顶部