免费注册 查看新帖 |

Chinaunix

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

求救呀,这个问题一直找不到答案。关于添加ip option的!! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-11-22 16:44 |只看该作者 |倒序浏览
我在ip包头中添加了option字段,并写进了 source route
  1. skb_push(skb,20);
  2.         memmove(skb->data,skb->data+20,20);
  3.         memset(skb->data+20,0,20);
  4.         sb->network_header -= 20;
复制代码
3次握手包也成功了,但是在发http get包时出问题了,图如下:



本应该是http包的结果变成了tcp segment of a reassembled PDU, 而其实包里是有http请求的。如图:



我不明白,为什么wireshark分析这个包时会出现这种情况,他把http请求部分分成了三块,一部分是tcp segment data,一部分是以太头的trailer,一部分是以太头的fcs。
而没改前,以太头是没有trailer和fcs的。图如下:



我不知道包是哪里造错了,我只加了一个20byte的option,各层指针,包头长度什么的我都相应的改了。还有我挂的钩子是在nf_ip_local_out上。

1.jpg (1.46 MB, 下载次数: )

1.jpg

2.jpg (1.27 MB, 下载次数: )

2.jpg

3.jpg (1.3 MB, 下载次数: )

3.jpg

论坛徽章:
0
2 [报告]
发表于 2011-11-24 11:16 |只看该作者
不太清楚数据结构
sb->network_header -= 20;?

论坛徽章:
0
3 [报告]
发表于 2012-02-02 11:24 |只看该作者
改包校验值没?

论坛徽章:
2
申猴
日期:2013-12-26 22:11:31天秤座
日期:2014-12-23 10:23:19
4 [报告]
发表于 2012-02-03 08:31 |只看该作者
ip头的长度没改?
ip头选项长度没改?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP