计网复习——网络层习题

1. 试回答下列问题

(1)子网掩码为255.255.255.0代表什么意思?

​ 可以是C类地址对应的子网掩码默认值,也可以是A类或B类地址的掩码,这时主机由最后8位决定,而路由器寻找网络由前24位决定。

(2)一个网络的现在掩码为255.255.255.248,问该网络能够连接多少台主机?

​ 255.255.255.248 化成二进制序列为:11111111 11111111 11111111 11111000,根据掩码的定义,后三位是主机号,一共可以表示 8 个主机号,除掉全 0 和全 1 的两个,该网络能够接 6 个主机。

(3)一个A类网络和一个B类网络的子网号 subnet-id 分别为 16 个 1 和 8 个 1,问这两个网络的子网掩码有何不同?

​ 子网掩码的形式是一样的,都是 255.255.255.0;但是子网的数目不一样,前者为 65534,后者为 254。

(4)一个 B 类地址的子网掩码是 255.255.240.0。试问在其中每一个子网上的主机数最多是多少?

​ 255.255.240.0(11111111.11111111.11110000.00000000)是 B 类地址的子网掩码,主机地址域为 12 比特,所以每个子网的主机数最多为:

2

12

2

=

4094

2^{12}-2=4094

2122=4094

(5)一A类网络的子网掩码为 255.255.0.255,它是否为一个有效的子网掩码?

​ 子网掩码由一连串的 1 和一连串的 0 组成,1 代表网络号和子网号,0 对应主机号.255.255.0.255 变成二进制形式是:11111111 11111111 00000000 11111111.可见,是一个有效的子网掩码,但是不是一个方便使用的解决办法。

(6)某个 IP 地址的十六进制表示为 C2.2F.14.81,试将其转换为点分十进制的形式。这个地址是哪一类 IP 地址?

​ 用点分十进制表示,该 IP 地址是 194.47.20.129,为 C 类地址。

(7)C 类网络使用子网掩码有无实际意义?为什么?

​ 有实际意义,对于小网络这样做还可进一步划分几个子网。

2. 一个 3200 位长的 TCP 报文传到 IP 层,加上 160 位的首部后成为数据报。下面的互联网由两个局域网通过路由器连接起来。但第二个局域网所能传送的最长数据帧中的数据部分只有 1200 位。因此数据报在路由器必须进行分片。试问第二个局域网向其上层要传送多少比特的数据(这里的“数据”当然指的是局域网看见的数据)?

​ 第二个局域网所能传送的最长数据帧中的数据部分只有1200bit,可见每一个IP数据报的最大长度是1200bit,故其数据部分(即从TCP传下来的数据)最多为:

​ IP数据报的总长度-IP数据报的首部=1200-160=1040bit

​ 可以这样划分:TCP交给IP的数据共3200bit=1024+1024+1024+128,因此3200bit的数据必须划分为4个数据报片。

​ 这4个数据报片的首部长度都是160bit,而TCP_1,TCP_2,TCP_3,TCP_4分别是这四个数据报片的数据部分,其长度分别为1024bit,1024bit,1024bit和128bit。这四个数据报片的总长度(首部加上数据部分)分别为1184bit,1184bit,1184bit和288bit。

​ 上面这些就是第二个局域网要向其上层传送的数据。

​ 因此,第二个局域网向上传送1184+1184+1184+288=3840bit。

3. 设某路由器建立了如下路由表(这三列分别是目的网络、子网掩码和下一跳路由器,若直接交付则最后一列表示应当从哪一个接口转发出去):

目的网络 子网掩码 下一跳
128.96.39.0 255.255.255.128 接口m0
128.96.39.128 255.255.255.128 接口m1
128.96.40.0 255.255.255.128

R

2

R_2

R2
192.4.153.0 255.255.255.192

R

3

R_3

R3
*(默认)

R

4

R_4

R4

现共收到5个分组,其目的地址分别为:

(1)128.96.39.10

(2)128.96.40.12

(3)128.96.40.151

(4)192.4.153.17

(5)192.4.153.90

试分别计算其下一跳。

(1)分组的目的站IP地址为:128.96.39.10。先与子网掩码255.255.255.128相与,得128.96.39.0,可见该分组经接口m0转发。

(2)分组的目的IP地址为:128.96.40.12。与子网掩码255.255.255.128 相与得128.96.40.0,不等于128.96.39.0。与子网掩码255.255.255.128相与得128.96.40.0,经查路由表可知,该项分组经R2转发。

(3)分组的目的 IP 地址为:128.96.40.151,与子网掩码255.255.255.128相与后得128.96.40.128,与子网掩码255.255.255.192相与后得128.96.40.128,经查路由表知,该分组转发选择默认路由,经R4转发。

(4)分组的目的IP地址为:192.4.153.17。与子网掩码255.255.255.128相与后得192.4.153.0。与子网掩码255.255.255.192相与后得192.4.153.0,经查路由表知,该分组经R3转发。

(5)分组的目的IP地址为:192.4.153.90,与子网掩码255.255.255.128相与后得192.4.153.0。与子网掩码255.255.255.192相与后得192.4.153.64,经查路由表知,该分组转发选择默认路由,经R4转发。

4. 有如下的四个/24地址块,试进行最大可能的聚合。

212.56.132.0/24

212.56.133.0/24

212.56.134.0/24

212.56.135.0/24

212

=

(

11010100

)

2

212=(11010100)_2

212=(11010100)2

56

=

(

00111000

)

2

56=(00111000)_2

56=(00111000)2

132

=

(

10000100

)

2

132=(10000100)_2

132=(10000100)2

133

=

(

10000101

)

2

133=(10000101)_{2}

133=(10000101)2

134

=

(

10000110

)

2

134=(10000110)_2

134=(10000110)2

135

=

(

10000111

)

2

135=(10000111)_2

135=(10000111)2

​ 所以共同的前缀有22位,即11010100 00111000 100001,聚合的CIDR地址块是:212.56.132.0/22。

5. 有两个CIDR地址块208.128/11和208.130.28/22。是否有哪一个地址块包含另一地址块?如果有,请指出,并说明理由。

​ 208.128/11的前缀为:11010000 100

​ 208.130.28/22的前缀为:11010000 10000010 000101,它的前11位与208.138/11的前缀是一致的,所以208.128/11地址块包含了208.130.28/22这一地址块。

6. 已知路由器R1的路由表如表所示。

地址掩码 目的网络地址 下一跳地址 路由器接口
/26 140.5.12.64 180.15.2.5 M2
/24 130.5.8.0 190.16.6.2 M1
/16 110.71.0.0 M0
/16 180.15.0.0 M2
/16 190.16.0.0 M1
默认 默认 110.71.4.5 M0

试画出各网络和必要的路由器连接拓扑,标注出必要的IP地址和接口。对不能确定的情况应当指明。

7. 一 个 大 公 司 有 一 个 总 部 和 三 个 下 属 部 门 。 公 司 分 配 到 的 网 络 前 缀 是192.77.33/24。公司的网络布局如图。总部共有五个局域网,其中LAN1~LAN4都连接到路由器 R1上,R1再通过LAN5与路由器R2相连。R2和远地的三个部门的局域网LAN6~LAN8通过广域网相连。每个局域网旁边标明的数字是局域网上主机数。试给每个局域网分配一个合适的网络前缀。

​ 分配网络前缀时应先分配地址数较多的前缀。本题的答案有很多,下面是其中的一种答案。

​ LAN1:192.77.33.0/26;

​ LAN3:192.77.33.64/27;

​ LAN6:192.77.33.192/27;

​ LAN7:192.77.33.160/27;

​ LAN8:192.77.33.128/27;

​ LAN2:192.77.33.96/28;

​ LAN4:192.77.33.112/28;

​ LAN5:192.77.33.224/27;(考虑到以太网可能还要连接几个主机,故留有余地)

​ WAN1:192.77.33.232/30;

​ WAN2:192.77.33.236/30;

​ WAN3:192.77.33.240/30。

8. 以下地址中的哪一个和86.32/12匹配?请说明理由。

(1)86.33.224.123;

(2)86.79.65.216;

(3)86.58.119.74;

(4)86.68.206.154

(1)与 11111111 11110000 00000000 00000000 逐比特相“与”和 86.32/12 匹配

(2)与 11111111 11110000 00000000 00000000 逐比特相“与”和 86.32/12 不匹配

(3)与 11111111 11110000 00000000 00000000 逐比特相“与”和 86.32/12 不匹配

(4)与 11111111 11110000 00000000 00000000 逐比特相“与”和 86.32/12 不匹配

9. 某单位分配到一个地址块136.23.12.64/26。现在需要进一步划分4个一样大的子网。试问:

(1)每个子网的前缀有多长?

(2)每一个子网中有多少个地址?

(3)每一个子网的地址块是什么?

(4)每一个子网可分配给主机使用的最小地址和最大地址是什么?

(1)原来网络前缀是2位,需要再增加2位,才能划分4个一样大的子网。因此每个子网前缀是28位。

(2)每个子网的地址中有4位留给主机用,因此共有16个地址(可用的14个)。

(3)四个子网的地址块是:136.23.12.64/28,136.23.12.80/28,136.23.12.96/28,136.23.12.112/28。

(4)地址中的前三个字节分别为B1,B2和B3。

​ 第一个地址块136.23.12.64/28可分配给主机使用的:

​ 最小地址是B1 B2 B3 01000001=136.23.12.65/28;

​ 最大地址是B1 B2 B3 01001110=136.23.12.78/28。

​ 第二个地址块136.23.12.80/28可分配给主机使用的:

​ 最小地址是B1 B2 B3 01010001=136.23.12.81/28;

​ 最大地址是B1 B2 B3 01011110=136.23.12.94/28。

​ 第三个地址块136.23.12.96/28可分配给主机使用的:

​ 最小地址是B1 B2 B3 01100001=136.23.12.97/28;

​ 最大地址是B1 B2 B3 01101110=136.23.12.110/28。

​ 第三个地址块136.23.12.112/28可分配给主机使用的:

​ 最小地址是B1 B2 B3 01110001=136.23.12.113/28;

​ 最大地址是B1 B2 B3 01111110=136.23.12.126/28。

10. 试辨认以下IP地址的网络类别

(1)128.36.199.3

(2)21.12.240.17

(3)183.194.76.253

(4)192.12.69.248

(5)89.3.0.1

(6)200.3.6.2

​ (2)和(5)是A类,因为第一位(类别位)是0。

​ (1)和(3)是B类,因为前两位(类别位)是10。

​ (4)和(6)是C类,因为前三位(类别位)是110。

11. IP数据报中的首部检验和并不检验数据报中的数据。这样做的最大好处是什么?缺点是什么?

​ 好处是,不检验数据部分可以加快检验的过程,使转发分组更快。

​ 缺点是,数据部分出现差错时不能及早发现。即使是到达了终点,目的主机中的IP也仍然不检查数据部分是否正确。当IP数据报的数据部分送交上面的运输层时,运输层的TCP才检查收到的数据有无差错。

12. 当某个路由器发现一IP数据报的首部检验和有差错时,为什么采取丢弃的办法而不是要求源站重传此数据报?计算首部检验和为什么不采用CRC检验码?

​ IP首部中的源地址也可能变成错误的,要求错误的源地址重传数据报是没有意义的。不使用CRC可减少路由器进行检验的时间。

13. 主机A发送IP数据报主机B,途中经过了5个路由器。试问在IP数据报的发送过程中总共使用了几次ARP?

​ 6次。主机发送IP数据报时用一次ARP,每一个路由器在转发IP数据报时各使用一次。

当路由器收到一个待转发的数据报,在从路由表得出下一跳路由器的IP地址后,不是把这个地址填入IP数据报,而是送交数据链路层的网络接口软件。网络接口软件负责把下一跳路由器的IP地址转换成硬件地址(必须使用ARP),并将此硬件地址放在链路层的MAC帧的首部,然后根据这个硬件地址找到下一跳路由器。

14. 某单位分配到一个B类IP地址,其net-id为129.250.0.0。该单位有4000台机器,平均分布在16个不同的地点。如选用子网掩码为255.255.255.0,试给每一个地点分配一个子网号码,并算出每个地点主机号码的最小值和最大值。

​ 4000台计算机,平均分布在16个不同的地点。每个地点有250台计算机。因此,主机host-id有8位就够了。而16个不同地点需要有16个子网。考虑到不使用全1和全0的主机号,因此子网号subnet-id至少需要5位(可以有30个子网)。这样,本题的解答并不是唯一的,子网号可以从5位到8位。

​ 但题目已经给定了子网掩码为255.255.255.0,就是说,题目已经确定了采用8位的子网号,因此可以选用子网号从00000001到00010000这样16个号码。每一个地点的主机号host-id从00000001到11111010共250个号码。

15. 一个数据报长度为4000字节(固定首部长度)。现在经过一个网络传送,但此网络能够传送的最大数据长度为1500字节。试问应当划分为几个短些的数据报片?各数据报片的数据字段长度、片偏移字段和MF标志应为何数值?

​ 数据报的总长度减去首部长度,得出IP数据报的数据部分长度为:4000-20=3980B

​ 划分出一个数据报片(要考虑首部由20字节长):3980-1480=2500B,剩下的数据长度,大于MTU。

​ 再划分出一个数据报片:2500-1480=1020B,剩下的数据长度,小于MTU。

​ 故划分为3个数据报片,其数据字段长度分别为1480,1480和1020字节。

​ 片偏移字段的值为0,1480/8= 185和2 * 1480 / 8 = 370。

​ MF字段的值分别为1,1和0。

16. 试找出可产生以下数目的A类子网的子网掩码(采用连续掩码):(1)2,(2)6,(3)30,(4)62,(5)122,(6)250。

子网掩码 把两个字节写成二进制 去掉全0和全1的子网数
(1) 255.192.0.0 11111111 11000000 2
(2) 255.224.0.0 11111111 11100000 6
(3) 255.248.0.0 11111111 11111000 30
(4) 255.252.0.0 11111111 11111100 62
(5) 255.254.0.0 11111111 11111110 126(大于122)
(6) 255.255.0.0 11111111 11111111 254(大于250)

17. 以下有4个子网掩码,哪些是不推荐使用的?为什么?(1)176.0.0.0,(2)96.0.0.0,(3)127.192.0.0,(4)255.128.0.0。

(1)176.0.0.0的第一个字节的二进制表示:10110000,“1”不连续。不推荐使用。

(2)96.0.0.0的第一个字节的二进制表示:01100000,“1”的前面有0。不推荐使用。

(3)127.192.0.0的第一个字节的二进制表示:01111111,“1”的前面有0。不推荐使用。

(4)255.128.0.0的前面两个字节的二进制表示:11111111 10000000。推荐使用。所有的1是连续的,1的前面没有0。

18. 以下地址中的哪一个和86.32/12匹配?请说明理由。(1)86.33.224.123;(2)86.79.65.216;(3)86.58.119.74;(4)86.68.206.154。

​ 观察地址86.32/12的第二个字节0x32=00100000,前缀12位,说明第二字节的前4位0010在前缀中。

​ 把给出的四个地址的第二字节转换成二进制,看哪一个前4位是0010:

​ (1)0x33=00100001,前4位是:0010;

​ (2)0x79=01001111,前4位是:0100;

​ (3)0x58=00111010,前4位是:0011;

​ (4)0x68=01000100,前4位是:0100.

​ 因此只有(1)的地址86.33.224.123是和86.32/12匹配的。

19. 以下的地址前缀中哪一个地址与2.52.90.140匹配?请说明理由。(1)0/4;(2)32/4;(3)4/6;(4)80/4.

​ 给出的四个地址的前缀有4位和6位两种,因此我们就观察地址2.52.90.140的第一字节。

​ 2.52.90.140/4的第一个字节用二进制表示是00000010。

​ (1)0/4是0000;

​ (2)32/4是0010;

​ (3)4/6是000001;

​ (4)80/4是0101;

​ 因此只有前缀(1)和地址2.52.90.140匹配。

20. 下面的前缀中哪一个和地址152.7.77.159及152.31.47.252都匹配?请说明理由。(1)152.40/13;(2)153.40/9;(3)152.64/12;(4)152.0/11.

​ 给出的四个地址的前缀是9位到12位,因此我们就观察题目给出的两个地址的第二字节,把第二字节写成二进制。

​ 题目给出的两个地址的前两个字节二进制表示是:

​ 10011000 00000111 和 10011000 00011111。

​ (1)的前缀是13位:10011000 00101000,与这两个地址不匹配。

​ (2)的前缀是9位:10011001 00101000,与这两个地址不匹配。

​ (3)的前缀是12位:10011000 01000000,与这两个地址不匹配。

​ (4)的前缀是11位:10011000 00000000,与这两个地址都匹配。

21. 与下列掩码相对应的网络前缀各有多少位?(1)192.0.0.0;(2)240.0.0.0;(3)255.224.0.0;(4)255.255.255.252。

(1)192.0.0.0=11000000(后面还有24个0),网络前缀:2位。

(2)240.0.0.0=11110000(后面还有24个0),网络前缀:4位。

(3)255.224.0.0=11111111 11100000(后面还有16个0),网络前缀:11位。

(4)255.255.255.252=11111111 11111111 11111111 11111100,网络前缀:30位。

22. 已知地址块中的一个地址是140.120.84.24/20。试求这个地址块中的最小地址和最大地址。地址掩码是什么?地址块中共有多少个地址?相当于多少个C类地址?

​ 给定地址的前缀是20位,因此只要观察地址的第三字节即可。只把第三字节写成二进制,其他三个字节用B1,B2和B4表示。

​ B1.B2.01010100.B4/20 取前20位,后面全是0,即得出最小地址。

​ 最小地址是B1 B2 01010000 00000000/20=140.120.80.0/20;

​ 最大地址是B1 B2 01011111 11111111/20=140.120.95.255/20。

​ 地址数是

2

12

=

4096

2^{12}=4096

212=4096,相当于16个C类地址。

23. 已知地址块中的一个地址是190.87.140.202/29。重新计算上题。

​ 给定地址的前缀是29位,因此只要观察地址的第四字节即可。

​ 把第四字节写成二进制,前三个字节记为B1,B2和B3。B1 B2 B3 11001010/29 取前29位,后面全是0,即得出最小地址。

​ 最小地址是B1 B2 B3 11001000/29=190.87.140.200/29;

​ 最大地址是B1 B2 B3 11001111/29=190.87.140.207/29。

​ 地址数是8,相当于1/32个C类地址。

24. 试把下列IPv4地址从二进制记法转换为点分十进制记分。

(1)10000001 00001011 00001011 11101111

(2)11000001 10000011 00011011 11111111

(3)11100111 11011011 10001011 01101111

(4)11111001 10011011 11111011 00001111

​ 把每8位一组转换成等值的十进制数,并增加分隔的点,得到:

​ (1)129.11.11.239

​ (2)193.131.27.255

​ (3)231.219.139.111

​ (4)249.155.251.15

25.下列IPv4地址是否有错误?如有,请指出。

(1)111.56.045.78

(2)221.34.7.8.20

(3)75.45.301.14

(4)11100010.23.14.67

(1)在点分十进制记法中不应当有以0开头的数(045)。

(2)IPv4地址不能超过4个字节。

(3)每个字节必须小于或等于255,

(4)二进制记法和点分十进制记法混合使用是不允许的。

26. 假设一段地址的首地址为146.102.29.0,末地址为146.102.32.255,求这个地址段的地址数。

​ 从末地址减去首地址,得出的结果是0.0.3.255,因此地址的数目=1024。

27. 求下列每个地址的类别。

(1)00000001 00001011 00001011 11101111

(2)11000001 10000011 00011011 11111111

(3)10100111 11011011 10001011 01101111

(4)11110011 10011011 11111011 00001111

(1)第一位是0。这是A类地址。

(2)前两位是1,第三位是0。这是C类地址。

(3)第一位是1,第二位是0。这是B类地址。

(4)前四位是1。这是E类地址。

28. 求下列每个地址的类别。

(1)227.12.14.87

(2)193.14.56.22

(3)14.23.120.8

(4)252.5.15.111

(1)第一个字节是227(在224~239之间),是D类地址。

(2)第二个字节是193(在192~223之间),是C类地址。

(3)第三个字节是14(在0~127之间),是A类地址。

(4)第四个字节是252(在240~255之间),是E类地址。

29. 给出某地址块中的一个地址为73.22.17.25。求该地址块的地址数及其首地址和末地址。

​ 因为73在0~127之间,所以这个地址是A类地址。

​ 该地址块的地址数

2

24

=

16777216

2^{24}=16777216

224=16777216

​ 把地址中的24位主机都置为0,就得出首地址是73.0.0.0/8。首地址被称为网络地址,它不会指派给任何主机,而是用来定义这个网络的。

​ 把地址中的24位主机都置为1,就得出末地址是73.255.255.255。这个地址也不分配给主机用。

30. 已知地址块中的一个地址是167.199.170.82/27,求这个地址块的地址数、首地址以及末地址各是多少?

​ 这个地址块的地址数是32,首地址是167.199.170.64,末地址是167.199.170.95。

以上部分内容引自《计算机网络释疑与习题解答》,如有侵权,请及时联系我删除!


版权声明:本文为NickHan_cs原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/NickHan_cs/article/details/117967706