【计算机网络】一道CIDR计算题:某单位申请了一段IP地址: 200.23.16.0/23。 单位内由4个部门(A,B,C,D)组成,每个部门门的主机数

目录

1.题目

2.可能性分析

2.1. 写出每个子网(地址块)

 2.2. 每个子网的网络前缀?子网掩码?

2.2.1 子网网络前缀

2.2.2 子网掩码

2.3. 每个子网的广播地址?主机可用地址范围?

2.3.1 每个子网的广播地址

2.3.2 主机的可用地址范围

3. 分析 2 中的问题

4. 一个可行的解答

4.1. 写出每个子网(地址块)

4.2. 每个子网的网络前缀?子网掩码?

4.2.1 网络前缀

4.2.2 子网掩码

4.3. 每个子网的广播地址?主机可用地址范围?

4.3.1 广播地址

4.3.2 主机可用地址范围


1.题目

某单位申请了一-段IP地址: 200.23.16.0/23。 单位
内由4个部门J(A,B,C,D)组成,每个部门的主机数
量分别是: 200(A), 100(B), 50(C), 40(D)。试将单
位的总地址块200.23.16.0/23划分为4个子网分配
各4个部门。
◆1.写出每个子网(地址块)
◆2. 每个子网的网络 前缀?子网掩码?
◆3.每个子网的广播地址?主机可用地址范围?

(注: 200.23.1 6.0/23的二进制表示11001000 00010111 00010000 00000000 )

 

2.可能性分析

200.23.16.0/23 => [1100 1000 . 0001 0111 .  0001 000]     0 . 0000 0000
                                             网络号                                     主机号

2 ^ (32 - 23) = 2 ^ 9 = 512   去掉本机器主机号全0和广播地址主机号全1,有510个地址可用

但是CIDR中每个子网也要减去这两个地址: 广播地址(主机号全1)和本机地址(主机号全0 ),所以不能用的更多

 

2.1. 写出每个子网(地址块)


A: 200.23.0001 0001 . 0000 0000/24 => 200.23.17.0/24 可用主机数目 = 2 ^ (32 - 24) = 256 > 200 满足
或者使用 200.23. 0001 0000 . 0000 0000/ 24 => 200.23.16.0/24 可用主机数目 = 2 ^ (32 - 24) = 256 > 200 满足
有两种情况

B:
200.23.16.1000 0000/25 => 200.23.16.128/25 可用主机数目 = 2 ^ (32 - 25) = 128 > 100 满足
或者使用 200.23.16.0000 0000/25 => 200.23.16.0/25 
或者使用 200.23.17.1000 0000/25 => 200.23.17.1/25 
或者使用 200.23.17.0000 0000/25 => 200.23.17.0/25 
有四种情况


C & D: 
200.23.16.0000 0000 /26 可用主机数目 = 2 ^ (32 - 26) = 64 > 50 & 40 满足
或者 200.23.16.0100 0000 /26 
或者 200.23.16.1000 0000 /26 
或者 200.23.16.1100 0000 /26

或者 200.23.17.0000 0000 /26
或者 200.23.17.0100 0000 /26
或者 200.23.17.1000 0000 /26
或者 200.23.17.1100 0000 /26

共有 A(2, 8) = 56 种情况


 
2.2. 每个子网的网络前缀?子网掩码?

2.2.1 子网网络前缀


A 是 /24
B 是 /25
C&D 是 /26

2.2.2 子网掩码


A 是 1111 1111 . 1111 1111 . 1111 1111 . 0000 0000 => 255.255.255.0
B 是 1111 1111 . 1111 1111 . 1111 1111 . 1000 0000 => 255.255.255.128
C & D 是 1111 1111 .  1111 1111 . 1111 1111 . 1100 0000 => 255.255.255.172 

2.3. 每个子网的广播地址?主机可用地址范围?

 

2.3.1 每个子网的广播地址

 

A 是 200.23.0001 0001 . 1111 1111/24 => 200.23.17.255/24 
或者  200.23.0001 0000 . 1111 1111/24 => 200.23.16.255/24

B 是 200.23.16.1111 1111/25 => 200.23.16.255/25  
或者  200.23.16.0111 1111/25 => 200.23.16.127/25 
另外还有两种,略

C & D 有56种组合,选择其中一种:
C: 200.23.16.0011 1111 /26 => 200.23.16.63/26
D: 200.23.16.0111 1111 /26 => 200.23.16.127/26
另外还有55种,略

2.3.2 主机的可用地址范围

 

A 是 200.23.0001 0001 . 0000 0000/24 => 200.23.17.0/24 
对应可用地址范围:
200.23.0001 0001 . 0000 0001/24 <->  200.23.0001 0001 . 1111 1110/24
200.23.17.1/24 <-> 200.23.17.254/24

或者  200.23. 0001 0000 . 0000 0000/ 24 => 200.23.16.0/24
对应可用地址范围:
200.23. 0001 0000 . 0000 0001/ 24 <-> 200.23. 0001 0000 . 1111 1110/ 24 
200.23.16.1/24 <-> 200.23.16.254/24

B 是 200.23.16.1000 0000/25 => 200.23.16.128/25
对应可用地址范围:
200.23.16.1000 0001/25 <-> 200.23.16.1111 1110/25
200.23.16.129/25 <-> 200.23.16.254/25

或者  200.23.16.0000 0000/25 => 200.23.16.0/25
对应可用地址范围:
200.23.16.0000 0001/25 <-> 200.23.16.0111 1110/25
200.23.16.1/25 <-> 200.23.16.126/25
另外还有两种,略

C & D 有56种组合,选择其中一种:
C: 200.23.16.0000 0000 /26 => 200.23.16.0/26
对应可用地址范围:
200.23.16.0000 0001 /26 <-> 200.23.16.0011 1110 /26
200.23.16.1 /26 <-> 200.23.16.62 /26

D: 200.23.16.0100 0000 /26  => 200.23.16.64/26
对应可用地址范围:
200.23.16.0100 0001 /26 <-> 200.23.16.0111 1110 /26
200.23.16.65 /26 <-> 200.23.16.126 /26

另外还有55种,略

 

3. 分析 2 中的问题

画框的地方IP字段会发生重合,这意味着虽然情况很多,但是并不是所有组合都是可行的?

答:是的,下面给出一个无重复的解答答案和思考流程。

4. 一个可行的解答

【Think Deeper】

经过思考,觉得这个问题需要给出一个不重复的方案才可以是完美解答的:
因为CIDR编址技术本质是对IP网络前缀的不定长编码,IP的总数并没有变化,所以其IP必须是保证不重复的
从这种视角上来重新解答这个问题:

4.1. 写出每个子网(地址块)

A:  200.23.17.0/24
B:  200.23.16.128/25
C:  200.23.16.64/26
D:  200.23.16.0/26

【分析A】
200.23.16.0/23 => 网络号【200.23.0001 000】主机号【0.0000 0000】/23  一共有2^(32 - 23) = 2^(9) = 512 个可以划分的不同的标识符 
划分给 四个部门使用A200,B100,C50,D40, 按照 2进制 知道划分应该为A分配 256 个地址
此时还剩下 256 个地址,因为要避免重复,所以假设 A 的 24 位 填上了1,那么BCD就不能再填1,只能填0,同理如果A的24位填了0,那么BCD就只能填1

这里假设 A 的 24 位就填1
A:  200.23.0001 0001.0 => 200.23.17.0/24

那么接下来决定B,此时B的思考和A是一样的,B的24位已经因为A的24位填了1而不能再填1,所以首先给B的24位填上0

【分析B】
200.23.0001 0000.? =>200.23.16.?   [?代表B还有8位可以自己做主]
因为B需要分配100个地址,所以B的主机号应该至少有7位(2^7=128>100 2^6=64<100)
但是能是8位,因为如果B和A一样都是8位,那么512个可划分地址就被平分给A和B,CD就没得分了
所以,B这里需要决定其第25位的值,同A一样,可以选择置1也可以选择置0,这里不妨置1 
于是B的CIDR编码就为 200.23.16.1000 0000/25 => 200.23.16.128/25
剩下的7位主机号就可以提供128个不同的主机号
所以CD的24位因为A选了1,这里就只能填0,25位因为B选了1,这里也只能填0
此时CD就是如下状态:
C:  200.23.0001 0000.0??? ????
D: 200.23.0001 0000.0??? ????

【分析C】
这里首先分析C和D的对等关系,已经分配了256+128个地址,还剩下的128个地址只能平分给这两个区域,每个区域分64个
不妨对C的26位置1,此时D自然就在26位置0
C:  200.23.0001 0000.0100 0000 / 26 => 200.23.16.64/26
D:  200.23.0001 0000.0000 0000 / 26 => 200.23.16.0/26


D: 200.23.0001 0000.0??? ????

4.2. 每个子网的网络前缀?子网掩码?


4.2.1 网络前缀


A: /24 
B: /25 
C: /26 
D: /26 


4.2.2 子网掩码


A: 255.255.255.0
前24位全为1,后8位全为0
B: 255.255.255.128
前25位全为1,后7位全为0
C: 255.255.255.192
前26位全为1,后6位全为0
D: 255.255.255.192 
前26位全为1,后6位全为0

4.3. 每个子网的广播地址?主机可用地址范围?


4.3.1 广播地址


A:  200.23.17.255/24
200.23.0001 0001.0 => 200.23.17.0/24 
最后8位主机号全部置1得到200.23.17.255
B:  200.23.16.255/25
200.23.16.1000 0000/25 => 200.23.16.128/25
最后7位主机号全部置1得到200.23.16.255
C:  200.23.16.127/26
200.23.0001 0000.0100 0000 / 26 => 200.23.16.64/26
最后6位主机号全部置1得到200.23.16.127
D:  200.23.16.63/26
200.23.0001 0000.0000 0000 / 26 => 200.23.16.0/26
最后6位主机号全部置1得到200.23.16.63

4.3.2 主机可用地址范围


A: 200.23.17.1/24 <-> 200.23.17.254/24
B: 200.23.16.129/25 <-> 200.23.16.254/25
C: 200.23.16.65/26 <-> 200.23.16.126/26
D:  200.23.16.1/26 <-> 200.23.16.62/26
除去主机号全0和全1即可

 

 

 

  • 22
    点赞
  • 165
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值