专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > 信息/网络安全

TCP校验和总算不对,是不是小弟我理解错了

发布时间:2011-07-03 07:04:07 文章来源:www.iduyao.cn 采编人员:星星草
TCP校验和总算不对,是不是我理解错了?
通过wireshark抓到的tcp三次握手数据包 数据如下
** ** ** ** ** ** ** ** ** ** ** ** 08 00 45 00
00 34 39 63 40 00 80 06 66 eb ac 10 01 27 ac 10
01 2e 28 a8 01 bb 16 16 0b ef 00 00 00 00 80 02 
20 00 a8 32 00 00 02 04 05 b4 01 03 03 08 01 01
04 02
ip校验和计算4500+0034+3963+4000+8006+0000(校验和位先视作0)+ac10+0127+ac10+012e=29912
            2+9912=9914  9914取反=66eb和数据包吻合
tcp校验和计算(需要构造伪tcp报头)
ac10+0127+ac10+012e+0006(代表tcp协议)+0014(tcp长度20)+28a8+01bb+1616+0bef+0000+0000+8002+2000+0000(校验和位先视作0)+0000=246ff
            2+46ff=4701  4701取反=b8fe 
问题就在这,b8fe不等于数据包中的a832啊 我就是想知道我在哪个地方理解错了,求大牛指点,新人学习勿喷
TCP校验和 伪TCP报头数据,IP报头 TCP校验和 TCP/IP TCP位首部数据 wireshark

------解决方案--------------------
应试是tcp校验和计算方法有问题,查查相关资料吧....
------解决方案--------------------
引用:
应试是tcp校验和计算方法有问题,查查相关资料吧....


引用:
但最后那12字节貌似还不能去掉,不知有什么含义?
我试着添加或减少最后12字节附加部分,发现目标主机就不再响应TCP三次握手请求了。

我也在弄这个校验和的问题,好像是数据也哟啊算进去,但是我现在就是不知道如何将数据分为十六位,我查过资料说是如果TCP发送数据为:03 02 12 35 那么在校验的时候就分为 :0302 1235 但是如果是奇数个数据的时候,我就不知道如何分了,比如我的TCP数据时:0x33 0x43 0x42是分成 33 43和 42 00 不?
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: