免费注册 查看新帖 |

Chinaunix

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

紧急请教一个数据包修改问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-03-15 10:03 |只看该作者 |倒序浏览
我有一个需求是这样的:
    接收一个数据包,数据包内容需要修改下,跟之后的一个包拼接起来内容才完整,
    我的做法是 第一个包来了一后用skb_copy保存下来一个备份存起来,第二个报文来了以后将第二个报文数据部分取出来 接到之前存取的第一个报文后面,然后存起来的第一个报文发出去,继续走后面的其它hook点,逐步处理。
    我遇到的问题是 怎么把 组装后的第一个包放回到链上去继续走后续流程, 我从网上查了 以下两个函数都没有达到效果://                                netif_rx(defragment_skb);   
//                                int retval = dev_queue_xmit(defragment_skb);


请大家给各方法

论坛徽章:
0
2 [报告]
发表于 2012-03-15 10:21 |只看该作者
我直接 free掉就的包, 把新报指针赋值给 *skb  也不好使,

                                kfree_skb(pskb);
                                *skb=defragment_skb;

没有走后续的hook点

论坛徽章:
0
3 [报告]
发表于 2012-03-15 11:05 |只看该作者
抓一下PACKET  
Checksum有算對嗎

论坛徽章:
0
4 [报告]
发表于 2012-03-15 11:06 |只看该作者
调用  : NF_HOOK(PF_INET, NF_IP_PRE_ROUTING, defragment_skb, NULL,defragment_skb->dev, okfn);
也不行
悲剧了

论坛徽章:
0
5 [报告]
发表于 2012-03-15 11:46 |只看该作者
我的处理流程是这样的:
将数据包还原后,调用netif_rx_ni(skb).
组包的操作交由给系统内核完成。

论坛徽章:
0
6 [报告]
发表于 2012-03-15 12:04 |只看该作者
你可以看看我发的这个,里面有我怎么接收数据
http://bbs.chinaunix.net/thread-3685361-1-1.html

论坛徽章:
0
7 [报告]
发表于 2012-03-15 14:10 |只看该作者
netif_rx_ni(defragment_skb);
没有死机,但是也没有被后续的模块处理。 没有达到目的

论坛徽章:
0
8 [报告]
发表于 2012-03-15 14:47 |只看该作者
你是在哪个节点截获数据的

论坛徽章:
12
2015年辞旧岁徽章
日期:2015-03-03 16:54:1515-16赛季CBA联赛之同曦
日期:2017-03-17 19:13:162016科比退役纪念章
日期:2016-11-07 08:28:12luobin
日期:2016-06-17 17:46:36wusuopu
日期:2016-06-17 17:43:4515-16赛季CBA联赛之福建
日期:2016-01-14 12:49:22程序设计版块每日发帖之星
日期:2015-12-13 06:20:00程序设计版块每日发帖之星
日期:2015-06-08 22:20:00程序设计版块每日发帖之星
日期:2015-06-08 22:20:002015年亚洲杯之科威特
日期:2015-03-24 14:21:272015年迎新春徽章
日期:2015-03-04 09:57:092016科比退役纪念章
日期:2018-04-10 16:20:18
9 [报告]
发表于 2012-03-15 14:57 |只看该作者
这样好像不行吧?复制的数据包跟原来的连接已经脱离了吧?为啥不直接改呢?

拙见拙见。

论坛徽章:
0
10 [报告]
发表于 2012-03-15 18:15 |只看该作者
谁有办法 ?

再描述一下目的:
skb_copy 一个数据包 暂存以下,等下一个相关的包 到达后接到这个暂存包里面, 然后需要把这个暂存的包 继续走协议栈,  怎么做?



这个暂存的包 继续走协议栈   这个怎么做?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP