51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1788|回复: 3
打印 上一主题 下一主题

一道面试题

[复制链接]
  • TA的每日心情
    开心
    2018-7-26 12:07
  • 签到天数: 64 天

    连续签到: 2 天

    [LV.6]测试旅长

    跳转到指定楼层
    1#
    发表于 2018-7-5 17:46:21 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
    如下是一个网络抓包,其中黑色选中区块为网络数据层数据。请根据IP协议格式,写出帧数的源IP和目标地址。

      
    0000
      
      
    3c
      
      
    ef
      
      
    bc
      
      
    f1
      
      
    fb
      
      
    97
      
      
    b8
      
      
    ca
      
      
    3a
      
      
    7b
      
      
    55
      
      
    b1
      
      
    08
      
      
    00
      
      
    45
      
      
    00
      
      
    0010
      
      
    00
      
      
    34
      
      
    39
      
      
    46
      
      
    40
      
      
    00
      
      
    40
      
      
    06
      
      
    00
      
      
    00
      
      
    c0
      
      
    a8
      
      
    1f
      
      
    60
      
      
    c0
      
      
    a8
      
      
    0020
      
      
    1f
      
      
    91
      
      
    ff
      
      
    d8
      
      
    00
      
      
    50
      
      
    b5
      
      
    59
      
      
    b8
      
      
    a7
      
      
    00
      
      
    00
      
      
    00
      
      
    00
      
      
    80
      
      
    02
      
      
    0030
      
      
    20
      
      
    00
      
      
    c0
      
      
    68
      
      
    00
      
      
    00
      
      
    02
      
      
    04
      
      
    05
      
      
    b4
      
      
    01
      
      
    03
      
      
    03
      
      
    02
      
      
    01
      
      
    01
      
      
    0040
      
      
    04
      
      
    02
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
             
    IP协议格式:
      
    版本(4)
      
      
    首部长度(4)
      
      
    区分服务(8)
      
      
    总长度(16)
      
      
    标识(16)
      
      
    标志(3)
      
      
    片偏移(13)
      
      
    存活时间(8)
      
      
    协议(8)
      
      
    首部检验和(16)
      
      
    源IP地址(32)
      
      
    目标IP地址(32)
      
      
    可选字段(可变)
      
                
    答案:
      
    0100
      
      
    0101
      
      
    0000,0000
      
      
    0000,0000,0011,0100
      
      
    0011,1001,0100,0110
      
      
    0100,0000,0000,0000
      
      
    0100,0000
      
      
    0000,0110
      
      
    0000,0000,0000,0000
      
      
    1100,0000,1010,1000,0001,1111,0110,0000
      
      
    1100,0000,1010,1000,0001,1111,1001,0001
      
      
    可选字段(可变)
      

                    源IP地址:c0:a8:1f:60
                    二 进 制:1100,0000,1010,1000,0001,1111,0110,0000
                    十 进 制:192.168.31.96

                    目标IP地址:c0:a8:1f:91
                    二 进 制:1100,0000,1010,1000,0001,1111,1001,0001
                    十 进 制:192.168.31.145

    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2018-7-26 12:07
  • 签到天数: 64 天

    连续签到: 2 天

    [LV.6]测试旅长

    3#
     楼主| 发表于 2018-7-6 09:33:46 | 只看该作者
    本帖最后由 xxg 于 2018-7-6 09:37 编辑

    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-7-26 12:07
  • 签到天数: 64 天

    连续签到: 2 天

    [LV.6]测试旅长

    2#
     楼主| 发表于 2018-7-5 18:01:00 | 只看该作者
    本帖最后由 xxg 于 2018-7-5 20:17 编辑

                 知识点:1、对IP协议的理解
                     2、进制转换(十六进制>二进制>十进制)
                     3、数据包分析
                 1、对IP协议的理解
                   物理层:通过物理介质传送电子信号,数据单位为比特(bit);
                   数据链路层:在不可靠的物理介质上提供可靠的传输,数据单位为帧(frame),
                 其一个目的就是发送和接收IP数据报;
                   网络层:使数据路由经过大型网络,数据单位为数据包(packet);
                   ……
                   IP协议是用于将多个包交换网络连接起来的,它在源地址和目标地址之间传送一
                 种称为数据报的东西,它还提供对数据大小的重新组装功能,以适应不同网络对包大
                 小的要求。

         版本(Version)
         指定IP协议的版本号,封包使用的数字通常是16进制的,占4位。

         头长度(Internet Header Length,IHL)
         指定IPv4协议包头长度的字节数。最小20字节,最多24字节。

         包长度(Total Length,TL)
         指定IP包总长,协议以byte做单位表示总长度。(包头和数据总和)

         生存时间(Time To Live,TTL)
         数据报可以经过的最多的路由器数。

         源地址(Source Address,SA)
         发送IP数据包的IP地址,通常占32位。

         目标地址(Destination Address)
         接收IP数据包的IP地址,通常占32位。
                         

         网络上每一个节点都必须有一个独立的Internet地址(也就是IP地址)。通常使用的版本是IPv4标准,用一个32bit的数字表示,也就是常见的255.255.255.255样式。


         2、二进制转换
          ① 二进制与十六进制之间的转换
            a. 二进制转十六进制
      
    10进制:
      
      
    0
      
      
    1
      
      
    2
      
      
    3
      
      
    4
      
      
    5
      
      
    6
      
      
    7
      
      
    8
      
      
    9
      
      
    10
      
      
    11
      
      
    12
      
      
    13
      
      
    14
      
      
    15
      
      
    16进制:
      
      
    0
      
      
    1
      
      
    2
      
      
    3
      
      
    4
      
      
    5
      
      
    6
      
      
    7
      
      
    8
      
      
    9
      
      
    A
      
      
    B
      
      
    C
      
      
    D
      
      
    E
      
      
    F
      
         示例:               

                      二进 制 :1100,0000,1010,1000,0001,1111,0110,0000

                      取0000转:0*2^3 + 0*2^2 + 0*2^1 + 0*2^0 = 0
                      取0110转:0*2^3 + 1*2^2 + 1*2^1 + 0*2^0 = 6
                      取1111转:1*2^3 + 1*2^2 + 1*2^1 + 1*2^0 = F
                      取0001转:0*2^3 + 0*2^2 + 0*2^1 + 1*2^0 = 1
                      取1000转:1*2^3 + 0*2^2 + 0*2^1 + 0*2^0 = 8
                      取1010转:1*2^3 + 0*2^2 + 1*2^1 + 0*2^0 = A
                      取0000转:0*2^3 + 0*2^2 + 0*2^1 + 0*2^0 = 0
                      取1100转:1*2^3 + 1*2^2 + 0*2^1 + 0*2^0 = C
                      最后得到的十六进制是:C0 A8 1F 60
                b. 十六进制转二进制  

          方法:除2取余法,每个十六进制数为4个二进制数,不足在左边补0
          示例:
      取 C 转
      
      12/2=6……0
      
      取 8 转
      
      8/2=4……0
      
      以此类推计算
      
       
      
      6/2=3……0
      
       
      
      4/2=2……0
      
       
      
      3/2=1……1
      
       
      
      2/2=1……0
      
       
      
      1/2=0……1
      
       
      
      1/2=0……1
      
      得到二进制:
      
      1100
      
      得到二进制:
      
      1000
      
                   
       ②  二进制与十进制之间的转换
          a. 十进制转二进制
            方法:除2取余法。
            示例:取192转
            192/2=96……0
            96/2=48…… 0
            48/2=24…… 0
            24/2=12…… 0
            12/2=6……0
            6/2=3…… 0
            3/2=1…… 1
            1/2=0…… 1
           最后取余数得到的二进制数为:1100 0000

         b. 二进制转十进制

          方法:把二进制按权展开、相加即得到十进制数。
          示例:1010 1000
          1*2^7+0*2^6+1*2^5+0*2^4+1*2^3+0*2^2+0*2^1+0*2^0
          最后得到的十进制数为:168

    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-11 10:24 , Processed in 0.077362 second(s), 26 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表