深海的小鱼儿

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

要分析IP包,首先要知道IP包的包头格式,各种计算机网络的书籍都有介绍,必须了解该协议分析包才有意义,IPv4首部一般是20字节长,该协议如下:
    
    下面使用Ethereal抓取一个特定的IP包,然后根据该协议分析该IP包。
    使用Ethereal抓取的IP包如下:

    

    我用不同的框框划分出来了,便于分析。
    首先,开始的 6字节+ 6字节 + 2字节 不属于IP包包头本身。
    (1)“ 00 e0 4c 5f 97 1b ” 目的主机的MAC地址
    (2)“ 00 1a 4d 28 62 ff ” 源主机的MAC地址: 
    (3) “08 00 ”    包类型:  08 00 为 IP包
    后面的开始为真正的IP包包头,可以根据上面的协议进行分析了。
    (4)“45”,其中“4”是IP协议的版本(Version),说明是IP4
             “5”指本IP包的包头长度为 5X4 = 20 字节 
    (5) “00”服务类型(Type of Service)
    (6) “00 40”是IP数据报文总长,包含头部以及数据,这里表示4X16 = 64字节(注:00 40为16进制表示)
    (7)  " 62 06 "、" 40 00 " 表示 认证、标志、段偏移:主要用于数据报的分段 
    (8)  " 40" 表示一个IP数据流的生命周期,用Ping显示的结果,能得到TTL的值,很多文章就说通过TTL位来判别主机类型。因为一般主机都有默认的TTL值,不同系统的默认值不一样.
    (9) " 06 " 很重要,表示 传输层的协议类型(Protocol),06表示TCP协议
    (10)"8b e5" 为校验和
    (11)"c0 a8 0c 34" 源地址的IP   :  即 192.128.12.52
    (12)"79 c2 06 2e"目的地址的IP:  即 121.194.6.46
    后面接着的就是IP的数据内容了,IP包包头分析就到此为止,其实分析包头并不难,UDP、ARP包的分析可以按照本文的思路,按照协议 一 一分析即可。

本文出自 “对影成三人” 博客,请务必保留此出处http://ticktick.blog.51cto.com/823160/203412

posted on 2011-09-14 16:55  深海的小鱼儿  阅读(657)  评论(0编辑  收藏  举报