📜  固定长度和可变长度子网掩码数值

📅  最后修改于: 2021-08-27 07:11:35             🧑  作者: Mango

在开始本文之前,请确保您了解子网划分和无类寻址的基础知识。

1.固定长度的子网掩码:
当将地址块划分为全部具有相等地址数量的子网时,子网划分的类型被称为固定长度子网划分。此处使用的子网掩码对于所有子网都是相同的,因为每个子网的地址数均相等。

例子 –
考虑一个地址块121.37.10.64 / 26。
如果所需的相等大小的子网数如输入中所示,请找到每个子网的第一个和最后一个地址。

输入 :

Number of subnets required = 4 

输出 :

Subnet-1:
First Address: 121.37.10.64 /28
Last Address: 121.37.10.79 /28

Subnet-2:
First Address: 121.37.10.80 /28
Last Address: 121.37.10.95 /28

Subnet-3:
First Address: 121.37.10.96 /28
Last Address: 121.37.10.111 /28

Subnet-4:
First Address: 121.37.10.112 /28
Last Address: 121.37.10.127 /28 

由于需要4个子网,因此我们需要2位来标识每个子网。因此,子网掩码现在变为(/ 28)。
剩余的可变位数= 32 -28 = 4位。因此,每个子网中的地址总数= 2 4 = 16。

图–地址空间分为4个大小相等的子网

有两种方法可以解决此问题:
方法1:

  1. 要找到第一个地址,请理解前26位将与给定的地址相同,因为它们是固定的。如上所述,接下来的2位也将被固定。
  2. 子网的16个地址中,要指出其第一个地址,要求所有4个(非固定)位都为0。
  3. 因此,1的首地址子网=
    121.37.10. 01  00  0  0  0  0 /28 = 121.37.10.64/28.

    对于第二个子网=

    121.37.10. 01  01  0  0  0  0 /28 = 121.37.10.80/28

    等等。

  4. 要查找最后一个地址,请将(子网-1中的地址数)添加到该子网的第一个地址。在这种情况下,将(16-1)添加到每个子网的第一个地址。所以第1个子网的最后一个地址是
    121.37.10.79/28.

方法-2(快捷方式):

  1. 为了找到给出的地址和第1个子网的子网掩码之间的1子网,结转库存和操作的第一个地址。
    执行与操作:
    01111001   00100101   00001010   01000000/26
    AND 11111111   11111111   11111111   11110000/28
    -------------------------------------------------------------------------
        01111001   00100101   00001010   01000000 /28 

    因此,在1的第一子网地址

    = 01111001  00100101  00001010  01000000  /28 = 121.37.10.64 /28 
  2. 要查找子网的最后一个地址,请在子网的第一个地址和子网掩码的补码之间执行“或”运算。
    1子网的第一个地址,

    = 01111001 00100101 00001010 01000000 /28  

    子网掩码的补充,

    = 00000000 00000000 0000000 00001111 / 28 

    执行或运算,我们得到第1个子网的最后一个地址

    = 01111001  00100101  00001010  00001111  / 28 = 121.37.10.79 /28 
  3. 将1添加到上一个子网的最后一个地址,以找到下一个子网的第一个地址。

笔记 –
如果无法以2的幂来计算所需的子网数,则以子网数最接近可以仅表示为2的幂的数的方式划分地址空间。

例如,如果我们需要14个子网,则由于不能仅用2的幂表示14个子网,因此我们将地址空间划分为16个相等的子网。现在可以使用上述方法找到相应的地址。

2.可变长度子网掩码:
当将地址块划分为包含不同地址数的子网时,子网划分的类型称为可变长度子网划分。
对于不同的子网,此处使用的子网掩码可能不同。

例子:
考虑一个起始地址为112.78.0.0/16的地址块。如果每个子网所需的子网的数量和大小如输入中所给定,请找到它们的第一个和最后一个地址。

输入:

Group-1:
256 subnets, each needs 128 addresses

Group-2:
1024 subnets, each requiring 4 addresses

Group-1:
128 subnets, each consisting of 16 addresses 

输出:

Group-1:
First Address : 112.78.0.0 /17
Last Address : 112.78.127.255 /17 

Group-2:
First Address : 112.78.128.0 /20
Last Address : 112.78.143.255 / 20 

Group-3:
First Address : 112.78.144.0 /21
Last Address : 112.78.151.255 /21 

要了解这些问题,重要的是要了解修复子网ID中的位并找到每组子网的子网掩码的过程。

给定地址块中的总地址,

= 232-16 = 65,536 

了解地址空间的划分,

Group-1:
Number of addresses = 256 x 128 =  32, 768  

因此,组1占用该块中地址的1/2。因此,固定了1位以标识这一半,并且子网掩码变为/ 17。

类似地,对于组2 ,总共固定了4位,并且子网掩码变为/ 20。

并且,对于第3组,总共固定了5位,并且子网掩码变为/ 21。

然后,使用上述方法2,可以找到相应的起始地址和结束地址。

为了理解问题,让地址块用大方块表示,该方块可以进一步划分为所需的子网。由于该块中的地址总数= 65、536,因此可以推断出该正方形由256 x 256个地址组成。仔细观察地址空间的划分和地址空间的子网ID中初始位的固定。空格以及另外8个空格一起将成为主机ID。

一旦地址空间被适当地划分并且找到了相应的子网掩码,请使用上面的方法查找所需的地址。