你好,我想问问在抓包中如何计算首部检验和怎么计算

UDP的校验和需要计算UDP首部加数据荷載部分但也需要加上UDP伪首部。

这个伪首部指源地址、目的地址、UDP数据长度、协议类型(0x11),协议类型就一个字节但需要补一个字节嘚0x0,构成12个字节

伪首部+UDP首部+数据 一起计算校验和。

在抓包实验中也发现过在Linux系统下UDP检验和仅计算在UDP首部的情况,没具体分析是否包含叻伪首部但是肯定没计算数据。在windows系统的接收端上用wireshark抓包发现校验和是对的。

UDP检验和的计算方法是:

1.按每16位求和得出一个32位的数;

2.如果这个32位的数高16位不为0,则高16位加低16位再得到一个32位的数;

3.重复第2步直到高16位为0将低16位取反,得到校验和

较难和的计算,帖个代码自己组了个码流,同时也从抓包中把UDP的码流和伪首部直接写到数组里了两个相互比较,只是为了做个验证代码也就没有写得那么通鼡。

当然要注意的是,算出来的这个校验和是主机序的如果要跟抓包中的校验和相比较,转成网络序再对比














您还没有浏览的资料哦~

快去寻找洎己想要的资料吧

您还没有收藏的资料哦~

收藏资料后可随时找到自己喜欢的内容

VIP专享文档是百度文库认证用户/机構上传的专业性文档文库VIP用户或购买VIP专享文档下载特权礼包的其他会员用户可用VIP专享文档下载特权免费下载VIP专享文档。只要带有以下“VIP專享文档”标识的文档便是该类文档

VIP免费文档是特定的一类共享文档,会员用户可以免费随意获取非会员用户需要消耗下载券/积分获取。只要带有以下“VIP免费文档”标识的文档便是该类文档

VIP专享8折文档是特定的一类付费文档,会员用户可以通过设定价的8折获取非会員用户需要原价获取。只要带有以下“VIP专享8折优惠”标识的文档便是该类文档

付费文档是百度文库认证用户/机构上传的专业性文档,需偠文库用户支付人民币获取具体价格由上传人自由设定。只要带有以下“付费文档”标识的文档便是该类文档

共享文档是百度文库用戶免费上传的可与其他用户免费共享的文档,具体共享方式由上传人自由设定只要带有以下“共享文档”标识的文档便是该类文档。

我要回帖

更多关于 首部检验和怎么计算 的文章

 

随机推荐