免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2936 | 回复: 4
打印 上一主题 下一主题

[网络子系统] netfilter和透明网桥 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-06-20 14:26 |只看该作者 |倒序浏览
最近用netfilter尝试做一个防火墙试验模块
环境搭建使用brctl 网口eth1 eth2 网桥br0
内核模块test.ko
netfilter钩子 .pf = PF_BRIDGE .hooknum = NF_BR_POST_ROUTING .priority =NF_BR_PRI_BRNF
当抓取到tcp包以后,判断skb中ip地址为192.168.10.123的mac地址为01:10:10:10:10:10
csb  = skb_copy(skb,GFP_ATOMIC)的包内容并按照坛子里u兄的修改方式,将csb中的ip地址修改为192.168.10.156,并将mac地址也修改成另外一个mac地址
基本过程和u兄文中相同,并使用dev_queue_xmit将包插入,最后return NF_STOLEN
结果却发现在两个网口都无法抓到这个修改过后的包。
内核新手求助,请各位大侠帮忙解惑。

论坛徽章:
0
2 [报告]
发表于 2012-06-20 14:32 |只看该作者
回复 1# lyg_fqy

dev_queue_xmit之前,修改skb->dev了吗

论坛徽章:
0
3 [报告]
发表于 2012-06-20 14:39 |只看该作者
dev_hold(csb->dev)这块有,但是没理解是干什么用的

论坛徽章:
0
4 [报告]
发表于 2012-06-20 14:41 |只看该作者
本帖最后由 lyg_fqy 于 2012-06-20 14:42 编辑

复制过后的csb中的dev没有修改过 用的dev_get_by_name(sb->dev->name)

论坛徽章:
0
5 [报告]
发表于 2012-11-15 16:26 |只看该作者
是不是底层驱动函数dev_queue_xmit 直接将包发出去了,所以抓不到。好像我曾经使用tcpdump去抓的时候也没有得到。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP