请教一下校验和的问题
请问:如果我在netfilter hook 的 NF_IP_FORWARD修改了将要转发的数据包,具体修改了http中客户端向服务器的请求消息,把消息中cookie:参数的值置为了空字符,我使用tcp_v4_check函数进行重新对tcp进行校验,如下:
tcph->check = tcp_v4_check(tcph,
tmp->len - (tmp->nh.iph->ihl << 2),
tmp->nh.iph->saddr, tmp->nh.iph->daddr,
csum_partial((char *)tcph, tmp->len - (tmp->nh.iph->ihl << 2),
0));
但是修改后的数据包不能被发送出去,请问大侠们,对数据包的data部分进行了修改,需要再进行tcp校验吗,为什么我的数据包发布出去呐?通过抓包工具查看,数据包的中cookie的值仍然存在,不是我修改后的空字符串,怎么处理能使我的修改成功,而且能把修改后的数据包发出去呐?请大侠们帮帮忙,谢谢!
tcph->check = tcp_v4_check(tcph,
tmp->len - (tmp->nh.iph->ihl << 2),
tmp->nh.iph->saddr, tmp->nh.iph->daddr,
csum_partial((char *)tcph, tmp->len - (tmp->nh.iph->ihl << 2),
0));
但是修改后的数据包不能被发送出去,请问大侠们,对数据包的data部分进行了修改,需要再进行tcp校验吗,为什么我的数据包发布出去呐?通过抓包工具查看,数据包的中cookie的值仍然存在,不是我修改后的空字符串,怎么处理能使我的修改成功,而且能把修改后的数据包发出去呐?请大侠们帮帮忙,谢谢!
...全文
相关推荐
校验和不匹配问题解决[源码]
文章详细描述了在下载RPM包时遇到的SHA256校验和不匹配问题,具体表现为下载的containerd.io包的计算校验和与预期值不符,导致安装失败。作者提供了解决方案,包括更换Docker源、删除原有Docker相关组件、安装必要依赖、下载并修改docker-ce.repo文件中的软件仓库地址,以及更新索引文件并重新安装。这些步骤旨在解决因校验和不匹配导致的下载失败问题,确保用户能够顺利安装所需的Docker组件。
分而治之:解决Luhn校验和问题
本章节详细介绍了如何通过逐步分解和解决子问题来处理一个复杂的问题——Luhn校验和验证。通过将主问题拆分成若干小问题,并逐一解决,最终组合成完整解决方案的过程,展示了编程中问题解决的策略和方法。
javaScript强制保留两位小数的输入数校验和小数保留问题
主要介绍了javaScript强制保留两位小数的输入数校验和小数保留问题,非常不错,具有一定的参考借鉴价值,需要的朋友参考下吧
校验和计算器
用bcb开发的一个计算校验和的小工具,可以计算累加校验和,异或校验和,异或减1校验和
checksum校验和计算工具
checksum校验和计算工具,16进制校验和计算工具,简单实用。


