免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2799 | 回复: 1

[网络子系统] 请问无线网卡monitor模式收不到其他信道的数据包,请问是硬件过滤还是软件过滤的? [复制链接]

论坛徽章:
9
摩羯座
日期:2013-08-15 15:18:48狮子座
日期:2013-09-12 18:07:47金牛座
日期:2013-09-16 13:23:09辰龙
日期:2013-10-09 09:03:27白羊座
日期:2013-10-17 13:32:44子鼠
日期:2014-04-23 15:09:38戌狗
日期:2014-09-17 11:37:542015年亚洲杯之韩国
日期:2015-03-26 10:16:442015亚冠之武里南联
日期:2015-08-18 14:55:52
发表于 2015-03-10 17:10 |显示全部楼层
windows上安装"commview for wifi"貌似可以截到全部信道的包(测试截取信道3、6、9的包),感觉似乎是属于软件过滤的。
查看了下openwrt的源码(对linux内核源码没啥经验),研究了半天,发现似乎是在ieee80211_add_rx_radiotap_header里面put_unaligned_le16(status->freq, pos)把信道(status->freq)写入了skb_buff的某个地方,然后最后再扔给netif_receive_skb函数。而在其之前似乎没有找到使用freq进行计算过滤的地方(代码量太大),但是netif_receive_skb貌似是驱动传递给内核的地方,如果驱动里面没有过滤,难道是内核里面再过滤么?内核里面的netif_receive_skb暂时还没有研究下去,但是方向错了,也就没有研究的必要了。
请问这个信道不同的数据包无法截取,到底是硬件上就无法接收,还是什么地方进行软件过滤了呢?

论坛徽章:
2
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015元宵节徽章
日期:2015-03-06 15:52:30
发表于 2015-03-15 01:05 |显示全部楼层
我认为是硬件过滤的,在基带处理之前就给过滤掉了。

那个可以接收到多个信道的包的原因我觉得是硬件的接收信道在切换,具体工作机制我不清楚。

你有没有试试在windows上将wifi网卡连接到一个AP,然后再创建一个monitor模式的VAP,再抓包试试,此时应该就不能够抓到所有信道的包了,只能抓到那个AP工作信道的包。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP